Skip to content

perf(detray): Make Jacobian a non-pointer member of param updater - #6054

Draft
stephenswat wants to merge 2 commits into
acts-project:mainfrom
stephenswat:detray/perf/jac_in_mbf_state
Draft

perf(detray): Make Jacobian a non-pointer member of param updater#6054
stephenswat wants to merge 2 commits into
acts-project:mainfrom
stephenswat:detray/perf/jac_in_mbf_state

Conversation

@stephenswat

Copy link
Copy Markdown
Member

This commit makes the Jacobian a non-pointer member of the parameter updater and adds an optimisation of cases where the matrix is not set.

This commit splits the parameter updater type in two, preserving a
non-MBF-enabled version and a new type which supports Jacobian
propagation for MBF workflows.
This commit makes the Jacobian a non-pointer member of the parameter
updater and adds an optimisation of cases where the matrix is not set.
@stephenswat
stephenswat force-pushed the detray/perf/jac_in_mbf_state branch from d1ee77c to 5e49c34 Compare September 8, 2026 16:04
@stephenswat

Copy link
Copy Markdown
Member Author

Physics performance summary

Here is a summary of the physics performance effects of this PR. Command used:

traccc_seeding_example_cuda --input-directory=/data/Acts/odd-simulations-20240506/geant4_ttbar_mu200 --digitization-file=geometries/odd/odd-digi-geometric-config.json --conditions-file=geometries/odd/odd-digi-geometric-config.json --detector-file=geometries/odd/odd-detray_geometry_detray.json --grid-file=geometries/odd/odd-detray_surface_grids_detray.json --material-file=geometries/odd/odd-detray_material_detray.json --input-events=10 --use-acts-geom-source=on --check-performance --truth-finding-min-track-candidates=5 --truth-finding-min-pt=1.0 --truth-finding-min-z=-150 --truth-finding-max-z=150 --truth-finding-max-r=10 --seed-matching-ratio=0.99 --track-matching-ratio=0.5 --track-candidates-range=5:100 --seedfinder-vertex-range=-150:150

Seeding performance

Total number of seeds went from 298341 to 298338 (-0.0%)

Seeding plots



Track finding performance

Total number of found tracks went from 50212 to 50212 (+0.0%)

Finding plots









Track fitting performance

Fitting plots














Seeding to track finding relative performance

Seeding to track finding plots



Note

This is an automated message produced on the explicit request of a human being.

@stephenswat

Copy link
Copy Markdown
Member Author

Performance summary

Here is a summary of the performance effects of this PR:

Graphical

Tabular

KernelReciprocal ThroughputParallelism
8474feb5e49c34Delta8474feb5e49c34
propagate_to_next_surface4.20 ms4.26 ms1.4%4.884.85
find_tracks1.19 ms1.19 ms-0.4%1.841.84
count_doublets786.91 μs793.46 μs0.8%1.611.61
count_triplets557.46 μs558.31 μs0.2%1.021.02
find_doublets513.77 μs513.75 μs-0.0%3.083.08
ccl_kernel435.66 μs433.87 μs-0.4%1.711.71
Thrust::sort383.88 μs384.41 μs0.1%7.277.27
condense_tracks250.76 μs250.72 μs-0.0%5.765.76
find_triplets162.61 μs161.24 μs-0.8%1.311.31
build_tracks125.39 μs125.24 μs-0.1%3.723.72
select_seeds58.35 μs57.74 μs-1.0%1.341.34
estimate_track_params26.45 μs26.45 μs-0.0%2.682.69
populate_grid23.56 μs23.55 μs-0.1%1.221.22
count_grid_capacities21.93 μs21.91 μs-0.1%1.221.22
remove_duplicates19.83 μs19.87 μs0.2%25.7625.76
fill_sorted_measurements16.13 μs16.06 μs-0.4%1.131.13
update_triplet_weights14.74 μs14.68 μs-0.4%1.271.27
fill_finding_propagation_sort_keys9.85 μs9.82 μs-0.3%7.237.23
form_spacepoints7.42 μs7.42 μs0.0%1.471.48
reduce_triplet_counts5.50 μs5.50 μs-0.1%3.083.08
unknown5.03 μs5.04 μs0.2%4.274.27
count_spacepoints2.98 μs2.99 μs0.3%1.471.47
Thrust::scan1.79 μs1.79 μs-0.3%92.4592.67
fill_finding_duplicate_removal_sort_keys1.55 μs1.55 μs-0.0%38.1338.13
create_device_detectorNoneNone-0.0%32764.7232764.72
Total8.83 ms8.88 ms0.6%3.723.72

Important

All metrics in this report are given as reciprocal throughput, not as wallclock runtime.

Note

This is an automated message produced upon the explicit request of a human being.

@github-actions github-actions Bot added Component - Detray Affects the Detray project Component - Traccc labels Sep 8, 2026
@github-actions github-actions Bot added this to the next milestone Sep 8, 2026
@sonarqubecloud

sonarqubecloud Bot commented Sep 8, 2026

Copy link
Copy Markdown

@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

Public API surface diff

No change to the public API surface. ✅

@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

📊: Physics performance monitoring for 5e49c34

Full contents

physmon summary

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant