8000 Throughput Output Formatting Improvements, main branch (2025.06.06.) by krasznaa · Pull Request #1009 · acts-project/traccc · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Throughput Output Formatting Improvements, main branch (2025.06.06.) #1009

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

krasznaa
Copy link
Member
@krasznaa krasznaa commented Jun 6, 2025

While working on #1007 and #1008, I was reminded that the outputs from the throughput applications could do with a bit of an improvement. After these updates, the applications output everything using traccc::Logger beside the few lines printed by Detray. Along the lines of:

[bash][Legolas]:build > ./bin/traccc_throughput_st_cuda
13:14:39    ThroughputExampleOptions      INFO      
13:14:39    ThroughputExampleOptions      INFO      Running Single-threaded CUDA GPU throughput tests
13:14:39    ThroughputExampleOptions      INFO      
13:14:39    ThroughputExampleOptions      INFO      Detector Options:
13:14:39    ThroughputExampleOptions      INFO      ├ Detector file:                          geometries/odd/odd-detray_geometry_detray.json
13:14:39    ThroughputExampleOptions      INFO      ├ Material file:                          geometries/odd/odd-detray_material_detray.json
13:14:39    ThroughputExampleOptions      INFO      ├ Surface grid file:                      geometries/odd/odd-detray_surface_grids_detray.json
13:14:39    ThroughputExampleOptions      INFO      ├ Use detray detector:                    true
13:14:39    ThroughputExampleOptions      INFO      └ Digitization file:                      geometries/odd/odd-digi-geometric-config.json
...
Detector check: OK
WARNING: No entries in volume finder

Detector check: OK
13:14:43    io::read_cells                WARNING   28 duplicate cells found in /data/ssd-1tb/projects/traccc/traccc/data/odd/geant4_10muon_10GeV/event000000000-cells.csv
13:14:43    FullChainAlg                  INFO      Using CUDA device: NVIDIA GeForce RTX 3080 [id: 0, bus: 1, device: 0]
Warm-up processing [==================================================] 100% [00m:00s]                                                                                                                     
Event processing   [==================================================] 100% [00m:00s]                                                                                                                     
01:14:45 PM ThroughputExample             INFO      Reconstructed track parameters: 18300
01:14:45 PM ThroughputExample             INFO      Time totals:
01:14:45 PM ThroughputExample             INFO                        File reading  4 ms
01:14:45 PM ThroughputExample             INFO                  Warm-up processing  205 ms
01:14:45 PM ThroughputExample             INFO                    Event processing  1823 ms
01:14:45 PM ThroughputExample             INFO      Throughput:
01:14:45 PM ThroughputExample             INFO                  Warm-up processing  20.5455 ms/event, 48.6724 events/s
01:14:45 PM ThroughputExample             INFO                    Event processing  18.2338 ms/event, 54.8432 events/s
[bash][Legolas]:build >

And:

[bash][Legolas]:build > ./bin/traccc_throughput_mt_sycl --cpu-threads=2
13:15:32    ThroughputExampleOptions      INFO      
13:15:32    ThroughputExampleOptions      INFO      Running Multi-threaded SYCL GPU throughput tests
13:15:32    ThroughputExampleOptions      INFO      
13:15:32    ThroughputExampleOptions      INFO      Detector Options:
13:15:32    ThroughputExampleOptions      INFO      ├ Detector file:                          geometries/odd/odd-detray_geometry_detray.json
13:15:32    ThroughputExampleOptions      INFO      ├ Material file:                          geometries/odd/odd-detray_material_detray.json
13:15:32    ThroughputExampleOptions      INFO      ├ Surface grid file:                      geometries/odd/odd-detray_surface_grids_detray.json
13:15:32    ThroughputExampleOptions      INFO      ├ Use detray detector:                    true
13:15:32    ThroughputExampleOptions      INFO      └ Digitization file:                      geometries/odd/odd-digi-geometric-config.json
...
Detector check: OK
WARNING: No entries in volume finder

Detector check: OK
13:15:36    io::read_cells                WARNING   28 duplicate cells found in /data/ssd-1tb/projects/traccc/traccc/data/odd/geant4_10muon_10GeV/event000000000-cells.csv
13:15:36    FullChainAlg0                 INFO      Using SYCL device: NVIDIA GeForce RTX 3080
13:15:36    FullChainAlg1                 INFO      Using SYCL device: NVIDIA GeForce RTX 3080
13:15:36    FullChainAlg2                 INFO      Using SYCL device: NVIDIA GeForce RTX 3080
Warm-up processing [==================================================] 100% [00m:00s]                                                                                                                     
Event processing   [==================================================] 100% [00m:00s]                                                                                                                     
01:15:37 PM ThroughputExample             INFO      Reconstructed track parameters: 18300
01:15:37 PM ThroughputExample             INFO      Time totals:
01:15:37 PM ThroughputExample             INFO                        File reading  5 ms
01:15:37 PM ThroughputExample             INFO                  Warm-up processing  111 ms
01:15:37 PM ThroughputExample             INFO                    Event processing  754 ms
01:15:37 PM ThroughputExample             INFO      Throughput:
01:15:37 PM ThroughputExample             INFO                  Warm-up processing  11.1279 ms/event, 89.8644 events/s
01:15:37 PM ThroughputExample             INFO                    Event processing  7.54076 ms/event, 132.613 events/s
[bash][Legolas]:build >

Note how the "non-cloned" traccc::Logger object in the throughput_st(...) and throughput_mt(...) functions uses a slightly different formatting at the end of the logs. 🤔 Which makes me think that Acts::Logger::clone(...) is not working correctly at the moment. 🤔 But that's not a burning issue right now...

Still, @paulgessinger, it may be worth a look at one point.

@krasznaa krasznaa added cuda Changes related to CUDA improvement Improve an existing feature sycl Changes related to SYCL shared Changes related to shared code labels Jun 6, 2025
@paulgessinger
Copy link
Member

You mean the padding is different @krasznaa?

@krasznaa
Copy link
Member Author
krasznaa commented Jun 6, 2025

You mean the padding is different @krasznaa?

It uses an AM/PM formalism with the logger that was created with

std::unique_ptr<const traccc::Logger> logger = traccc::getDefaultLogger(
        "ThroughputExample", traccc::Logging::Level::INFO);

But then all the loggers cloned from this one use a 24-hour formalism. So something seemingly is not getting cloned/copied correctly, but rather getting default-initialized on the clones. (But this is just an educated guess.)

@paulgessinger
Copy link
Member

I'll need to look into this.
The clone functionality was sort of retrofitted onto the logger.

@krasznaa krasznaa force-pushed the ThroughputOutputTweaks-main-20250606 branch from 1908476 to 8c979ef Compare June 17, 2025 09:45
@krasznaa
Copy link
Member Author

In the meanwhile this PR could be reviewed as-is. The printouts have the same behaviour in the current main branch already, that's not coming from this PR.

@krasznaa krasznaa force-pushed the ThroughputOutputTweaks-main-20250606 branch from 8c979ef to 4b42622 Compare June 18, 2025 09:04
Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cuda Changes related to CUDA improvement Improve an existing feature shared Changes related to shared code sycl Changes related to SYCL
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants
0