Skip to content

[ATR-21353] Add visitedCache to TrigCompositeUtils::findLinks

Tim Martin requested to merge tamartin/athena:findLinkCaching into master

Adds a pointer-cache of visited nodes when recursively exploring a trigger navigation DAG.

Before, to fully recursively explore this demo graph starting on a and terminating on i would take 24 hops (a>b b>e e>f f>i e>g g>i e>h h>i a>c c>e e>f f>i e>g g>i e>h h>i a>d d>e e>f f>i e>g g>i e>h h>i).

After, by skipping nodes which have already been visited - this reduces to 12 hops (a>b b>e e>f f>i e>g g>i e>h h>i a>c c>e a>d d>e).

Aim to refactor the "is parent of" checks of egamma code in [ATR-21353] to use findLinks where possible, and hence to benefit from this speed up.

 i
/|\
fgh
\|/
 e
/|\
bcd
\|/
 a

Merge request reports