Skip to content

Simplify pos_iterator and posAdc_iterator

Arthur Marius Hennequin requested to merge ahennequ_fixsidecoder into master

This simplifications lead to a net HLT1 throughput improvement of +0.7% (hlt1_reco_baseline).

  • Replaced convoluted bitwise operations by simple pointer arithmetic, allowing the compiler to emit more efficient asm
  • Do not build iterators at construction time, to avoid paying for what we don't use
  • Replace reference and pointer returns by value for CLUSTERWORD (as it is a zero cost abstraction over a simple word)

No real effort was made to further simplify the posAdc_iterator, because it is not used in the hotpath and should be deprecated and removed.

@decianm @sstahl @sponce

Edited by Sascha Stahl

Merge request reports