Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[geom] Add cache layer for TGeoParallelWorld safeties in TGeoNavigator #16470

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Commits on Sep 19, 2024

  1. [geom] Add cache layer for TGeoParallelWorld safeties in TGeoNavigator

    This commit provides an (optional) optimization to reduce
    the cost of safety evaluations associated with TGeoParallelWorld.
    
    The approach consists in the introduction of additional cache-state
    in TGeoNavigator. This state remembers the last location for which
    TGeoParallelWorld::Safety was evaluated, together with the corresponding
    value returned.
    
    Since TGeoNavigator follows the evolution of tracks step-by-step,
    we have some sort of history-locality. This means that the cache-state
    has a high-probability of being relevant for multiple track locations in
    a row.
    
    The optimization proposed here is orthogonal to other improvements.
    It adds on top of algorithmic improvements within TGeoParallelWorld
    (bounding volume hierarchies, see separate PR), gaining a few extra percent
    in speed.
    
    By default, the new feature is not enabled by default for backward compatibility.
    Once fully verified, we can make it the default mode.
    
    That said, in ALICE simulations, the caching did not modify stepping
    behaviour and yielded identical results compared to not doing the caching.
    sawenzel committed Sep 19, 2024
    Configuration menu
    Copy the full SHA
    b2f8336 View commit details
    Browse the repository at this point in the history

Commits on Sep 20, 2024

  1. Update TGeoNavigator.h

    take away factor
    sawenzel committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    c19ac8e View commit details
    Browse the repository at this point in the history