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

Skip the holes for GPU CKF #556

Merged
merged 1 commit into from
Apr 29, 2024
Merged

Conversation

beomki-yeo
Copy link
Contributor

@beomki-yeo beomki-yeo commented Apr 25, 2024

This PR is extending the scope of #529 to GPU as well, which jump over surfaces in case of no branches.

There are two new GPU kernels introduced:

  1. add_links_for_holes

#529 used dummy measurements where the Kalman Fitter (KF) update is applied but this PR just uses the bound track parameter from propagator w/o KF, which is more precise. This is what is done by add_links_for_holes

  1. prune_tracks

This comes after the build_tracks kernel, hence the last GPU kernel. What it does is filtering the tracks whose the number of measurements is out of the given range of [min,max]. This is used to be done inside build_tracks in the past, but I had to add a new kernel because I could not count the number of holes and filter the track in the same kernel of build_tracks.

Due to the technical issue, I had to remove one functionality of #529 which counts the number of holes on the fly and abort tracks with (the number of holes > given value). I will take care of this in the later PR (Apologies to @shimasnd) (GPU version of #529 is fully implemented in this PR now)

Extending #488 to the GPU CKF is also not addressed in this PR, hopefully I can handle this in the near future.

CPU CKF is also refactored to make the code sequence as similar to the GPU CKF as possible. I admit it is a bit anti-performance change but it is snecessary to keep the codes understandable.

Previous results with Toy detector

Following are the results from toy geometry simulation and reconstruction:

image

[beomki@pc-54 traccc_build]$ ./bin/traccc_truth_finding_example_cuda --check-performance --detector-file=detray_json/toy_detector_geometry.json --material-file=detray_json/toy_detector_homogeneous_material.json  --input-events=3 --track-candidates-range=3:30 --search-window=3:3 --compare-with-cpu --input-directory=detray_simulation/toy_detector/n_particles_6000/

Running Truth Track Finding Using CUDA

>>> Detector Options <<<
  Detector file       : detray_json/toy_detector_geometry.json
  Material file       : detray_json/toy_detector_homogeneous_material.json
  Surface rid file    : 
  Use detray::detector: no
  Digitization file   : tml_detector/default-geometric-config-generic.json
>>> Input Data Options <<<
  Input data format             : csv
  Input directory               : detray_simulation/toy_detector/n_particles_6000/
  Number of input events        : 3
  Number of input events to skip: 0
>>> Track Finding Options <<<
  Track candidates range   : 3:30
  Maximum Chi2             : 30
  Maximum branches per step: 4294967295
>>> Track Propagation Options <<<
  Constraint step size : 3.40282e+38 [mm]
  Overstep tolerance   : -100 [um]
  Mask tolerance       : 15 [um]
  Search window        : 3 x 3
  Runge-Kutta tolerance: 0.0001
>>> Performance Measurement Options <<<
  Run performance checks: yes
>>> Accelerator Options <<<
  Compare with CPU results: yes

WARNING: No entries in volume finder
Detector check: OK
===>>> Event 0 <<<===
Track candidate matching Rate: 1
Number of fitted tracks: 7530 (host), 7530 (device)
  Matching rate(s):
    - 14.17% at 0.01% uncertainty
    - 61.089% at 0.1% uncertainty
    - 93.2271% at 1% uncertainty
    - 98.4064% at 5% uncertainty
===>>> Event 1 <<<===
Track candidate matching Rate: 0.999751
Number of fitted tracks: 8038 (host), 8037 (device)
  Matching rate(s):
    - 13.1252% at 0.01% uncertainty
    - 58.9077% at 0.1% uncertainty
    - 93.1077% at 1% uncertainty
    - 98.4573% at 5% uncertainty
===>>> Event 2 <<<===
Track candidate matching Rate: 1
Number of fitted tracks: 7606 (host), 7606 (device)
  Matching rate(s):
    - 13.9101% at 0.01% uncertainty
    - 60.5838% at 0.1% uncertainty
    - 93.5314% at 1% uncertainty
    - 98.3566% at 5% uncertainty
==> Statistics ... 
- created (cuda) 23173 found tracks
- created (cuda) 23173 fitted tracks
- created  (cpu) 23174 found tracks
- created  (cpu) 23174 fitted tracks
==>Elapsed times...
         Track finding  (cuda)  181 ms
         Track fitting  (cuda)  52 ms
          Track finding  (cpu)  2225 ms
          Track fitting  (cpu)  901 ms

Update with ODD

The ODD is now working! I attached the logs for double and single precision (gcc 13.1 & cuda 12.4)

Also note that the matching rate of the track fitting with single precision is not good. But it is not the matter of matching rate but it is because of the poor precision of single precision KF. Both CPU and GPU KF yield negative chi2 value sometimes and the precision of Jacobian is very poor with single precision. We will need to do a dedicated study to improve the physical outputs of KF with single precision. Must be a good research topic for new comers to start with...

Previous results with ODD

Double precision

byeo@hermes:/mnt/nvme0n1/byeo/projects/traccc/traccc_build$ ./bin/traccc_seq_example_cuda --detector-file=geometries/odd/odd_geometry_detray.json --use-detray-detector --digitization-file=geometries/odd/odd-digi-geometric-config.json --input-directory=odd/muon100GeV-geant4/ --grid-file=geometries/odd/odd_surface_grids_detray.json  --input-events=10 --compare-with-cpu

Running Full Tracking Chain Using CUDA

>>> Detector Options <<<
  Detector file       : geometries/odd/odd_geometry_detray.json
  Material file       : 
  Surface rid file    : geometries/odd/odd_surface_grids_detray.json
  Use detray::detector: yes
  Digitization file   : geometries/odd/odd-digi-geometric-config.json
>>> Input Data Options <<<
  Input data format             : csv
  Input directory               : odd/muon100GeV-geant4/
  Number of input events        : 10
  Number of input events to skip: 0
>>> Clusterization Options <<<
  Target cells per partition: 1024
>>> Track Seeding Options <<<
  None
>>> Track Finding Options <<<
  Track candidates range   : 3:100
  Maximum Chi2             : 30
  Maximum branches per step: 4294967295
>>> Track Propagation Options <<<
  Constraint step size : 3.40282e+38 [mm]
  Overstep tolerance   : -100 [um]
  Mask tolerance       : 15 [um]
  Search window        : 0 x 0
  Runge-Kutta tolerance: 0.0001
>>> Performance Measurement Options <<<
  Run performance checks: no
>>> Accelerator Options <<<
  Compare with CPU results: yes

WARNING: No material in detector
WARNING: No entries in volume finder
Detector check: OK
WARNING: No material in detector
WARNING: No entries in volume finder
Detector check: OK
WARNING: @traccc::io::csv::read_cells: 4500 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000000-cells.csv
===>>> Event 0 <<<===
Number of measurements: 31587 (host), 31587 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of spacepoints: 31587 (host), 31587 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of seeds: 5977 (host), 5977 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of track parameters: 5977 (host), 5977 (device)
  Matching rate(s):
    - 99.9331% at 0.01% uncertainty
    - 99.9331% at 0.1% uncertainty
    - 99.9331% at 1% uncertainty
    - 99.9331% at 5% uncertainty
Number of track candidates: 13909 (host), 13921 (device)
  Matching rate(s):
    - 99.8635% at 0.01% uncertainty
    - 99.8635% at 0.1% uncertainty
    - 99.8635% at 1% uncertainty
    - 99.8635% at 5% uncertainty
Number of track states: 13909 (host), 13921 (device)
  Matching rate(s):
    - 88.5928% at 0.01% uncertainty
    - 95.8408% at 0.1% uncertainty
    - 98.8722% at 1% uncertainty
    - 99.569% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 4170 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000001-cells.csv
===>>> Event 1 <<<===
Number of measurements: 31923 (host), 31923 (device)
  Matching rate(s):
    - 99.9969% at 0.01% uncertainty
    - 99.9969% at 0.1% uncertainty
    - 99.9969% at 1% uncertainty
    - 99.9969% at 5% uncertainty
Number of spacepoints: 31923 (host), 31923 (device)
  Matching rate(s):
    - 99.9969% at 0.01% uncertainty
    - 99.9969% at 0.1% uncertainty
    - 99.9969% at 1% uncertainty
    - 99.9969% at 5% uncertainty
Number of seeds: 5830 (host), 5830 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of track parameters: 5830 (host), 5830 (device)
  Matching rate(s):
    - 99.9828% at 0.01% uncertainty
    - 99.9828% at 0.1% uncertainty
    - 99.9828% at 1% uncertainty
    - 99.9828% at 5% uncertainty
Number of track candidates: 13260 (host), 13269 (device)
  Matching rate(s):
    - 99.9322% at 0.01% uncertainty
    - 99.9322% at 0.1% uncertainty
    - 99.9322% at 1% uncertainty
    - 99.9322% at 5% uncertainty
Number of track states: 13260 (host), 13269 (device)
  Matching rate(s):
    - 88.1227% at 0.01% uncertainty
    - 95.7043% at 0.1% uncertainty
    - 98.8846% at 1% uncertainty
    - 99.5403% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 4711 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000002-cells.csv
===>>> Event 2 <<<===
Number of measurements: 32088 (host), 32088 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of spacepoints: 32088 (host), 32088 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of seeds: 5789 (host), 5789 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of track parameters: 5789 (host), 5789 (device)
  Matching rate(s):
    - 99.9655% at 0.01% uncertainty
    - 99.9655% at 0.1% uncertainty
    - 99.9827% at 1% uncertainty
    - 99.9827% at 5% uncertainty
Number of track candidates: 13092 (host), 13145 (device)
  Matching rate(s):
    - 99.5664% at 0.01% uncertainty
    - 99.5664% at 0.1% uncertainty
    - 99.574% at 1% uncertainty
    - 99.574% at 5% uncertainty
Number of track states: 13092 (host), 13145 (device)
  Matching rate(s):
    - 86.0707% at 0.01% uncertainty
    - 94.5074% at 0.1% uncertainty
    - 98.2883% at 1% uncertainty
    - 99.0871% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 4383 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000003-cells.csv
===>>> Event 3 <<<===
Number of measurements: 31917 (host), 31917 (device)
  Matching rate(s):
    - 99.9937% at 0.01% uncertainty
    - 99.9937% at 0.1% uncertainty
    - 99.9937% at 1% uncertainty
    - 99.9937% at 5% uncertainty
Number of spacepoints: 31917 (host), 31917 (device)
  Matching rate(s):
    - 99.9937% at 0.01% uncertainty
    - 99.9937% at 0.1% uncertainty
    - 99.9937% at 1% uncertainty
    - 99.9937% at 5% uncertainty
Number of seeds: 6081 (host), 6081 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of track parameters: 6081 (host), 6081 (device)
  Matching rate(s):
    - 99.9671% at 0.01% uncertainty
    - 99.9671% at 0.1% uncertainty
    - 99.9671% at 1% uncertainty
    - 99.9671% at 5% uncertainty
Number of track candidates: 13814 (host), 13824 (device)
  Matching rate(s):
    - 99.9132% at 0.01% uncertainty
    - 99.9132% at 0.1% uncertainty
    - 99.9132% at 1% uncertainty
    - 99.9132% at 5% uncertainty
Number of track states: 13814 (host), 13824 (device)
  Matching rate(s):
    - 87.9774% at 0.01% uncertainty
    - 95.5946% at 0.1% uncertainty
    - 98.792% at 1% uncertainty
    - 99.6238% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 4386 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000004-cells.csv
===>>> Event 4 <<<===
Number of measurements: 32145 (host), 32145 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of spacepoints: 32145 (host), 32145 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of seeds: 6207 (host), 6207 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of track parameters: 6207 (host), 6207 (device)
  Matching rate(s):
    - 99.9033% at 0.01% uncertainty
    - 99.9194% at 0.1% uncertainty
    - 99.9194% at 1% uncertainty
    - 99.9194% at 5% uncertainty
Number of track candidates: 14242 (host), 14287 (device)
  Matching rate(s):
    - 99.636% at 0.01% uncertainty
    - 99.65% at 0.1% uncertainty
    - 99.65% at 1% uncertainty
    - 99.65% at 5% uncertainty
Number of track states: 14242 (host), 14287 (device)
  Matching rate(s):
    - 88.0241% at 0.01% uncertainty
    - 95.2404% at 0.1% uncertainty
    - 98.5091% at 1% uncertainty
    - 99.2231% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 5056 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000005-cells.csv
===>>> Event 5 <<<===
Number of measurements: 31626 (host), 31617 (device)
  Matching rate(s):
    - 99.9684% at 0.01% uncertainty
    - 99.9684% at 0.1% uncertainty
    - 99.9684% at 1% uncertainty
    - 99.9684% at 5% uncertainty
Number of spacepoints: 31626 (host), 31617 (device)
  Matching rate(s):
    - 99.9684% at 0.01% uncertainty
    - 99.9684% at 0.1% uncertainty
    - 99.9684% at 1% uncertainty
    - 99.9684% at 5% uncertainty
Number of seeds: 5902 (host), 5901 (device)
  Matching rate(s):
    - 99.9492% at 0.01% uncertainty
    - 99.9492% at 0.1% uncertainty
    - 99.9492% at 1% uncertainty
    - 99.9492% at 5% uncertainty
Number of track parameters: 5902 (host), 5901 (device)
  Matching rate(s):
    - 99.9153% at 0.01% uncertainty
    - 99.9322% at 0.1% uncertainty
    - 99.9322% at 1% uncertainty
    - 99.9322% at 5% uncertainty
Number of track candidates: 13415 (host), 13272 (device)
  Matching rate(s):
    - 99.9404% at 0.01% uncertainty
    - 99.9478% at 0.1% uncertainty
    - 99.9478% at 1% uncertainty
    - 99.9478% at 5% uncertainty
Number of track states: 13415 (host), 13272 (device)
  Matching rate(s):
    - 86.2542% at 0.01% uncertainty
    - 94.3049% at 0.1% uncertainty
    - 97.3835% at 1% uncertainty
    - 98.2259% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 4717 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000006-cells.csv
===>>> Event 6 <<<===
Number of measurements: 32377 (host), 32376 (device)
  Matching rate(s):
    - 99.9907% at 0.01% uncertainty
    - 99.9907% at 0.1% uncertainty
    - 99.9907% at 1% uncertainty
    - 99.9907% at 5% uncertainty
Number of spacepoints: 32377 (host), 32376 (device)
  Matching rate(s):
    - 99.9907% at 0.01% uncertainty
    - 99.9907% at 0.1% uncertainty
    - 99.9907% at 1% uncertainty
    - 99.9907% at 5% uncertainty
Number of seeds: 6010 (host), 6010 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of track parameters: 6010 (host), 6010 (device)
  Matching rate(s):
    - 99.9168% at 0.01% uncertainty
    - 99.9834% at 0.1% uncertainty
    - 99.9834% at 1% uncertainty
    - 99.9834% at 5% uncertainty
Number of track candidates: 17537 (host), 17573 (device)
  Matching rate(s):
    - 99.7553% at 0.01% uncertainty
    - 99.7951% at 0.1% uncertainty
    - 99.7951% at 1% uncertainty
    - 99.7951% at 5% uncertainty
Number of track states: 17537 (host), 17573 (device)
  Matching rate(s):
    - 89.6887% at 0.01% uncertainty
    - 96.1247% at 0.1% uncertainty
    - 98.7424% at 1% uncertainty
    - 99.4253% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 5032 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000007-cells.csv
===>>> Event 7 <<<===
Number of measurements: 31688 (host), 31688 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of spacepoints: 31688 (host), 31688 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of seeds: 5815 (host), 5815 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of track parameters: 5815 (host), 5815 (device)
  Matching rate(s):
    - 99.9828% at 0.01% uncertainty
    - 99.9828% at 0.1% uncertainty
    - 99.9828% at 1% uncertainty
    - 100% at 5% uncertainty
Number of track candidates: 12682 (host), 12725 (device)
  Matching rate(s):
    - 99.6542% at 0.01% uncertainty
    - 99.6542% at 0.1% uncertainty
    - 99.6542% at 1% uncertainty
    - 99.6621% at 5% uncertainty
Number of track states: 12682 (host), 12725 (device)
  Matching rate(s):
    - 87.8978% at 0.01% uncertainty
    - 95.5285% at 0.1% uncertainty
    - 98.6798% at 1% uncertainty
    - 99.3477% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 4706 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000008-cells.csv
===>>> Event 8 <<<===
Number of measurements: 32208 (host), 32208 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of spacepoints: 32208 (host), 32208 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of seeds: 5759 (host), 5759 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of track parameters: 5759 (host), 5759 (device)
  Matching rate(s):
    - 99.9826% at 0.01% uncertainty
    - 99.9826% at 0.1% uncertainty
    - 99.9826% at 1% uncertainty
    - 99.9826% at 5% uncertainty
Number of track candidates: 12896 (host), 12910 (device)
  Matching rate(s):
    - 99.8761% at 0.01% uncertainty
    - 99.8761% at 0.1% uncertainty
    - 99.8761% at 1% uncertainty
    - 99.8761% at 5% uncertainty
Number of track states: 12896 (host), 12910 (device)
  Matching rate(s):
    - 88.0868% at 0.01% uncertainty
    - 95.5074% at 0.1% uncertainty
    - 98.8691% at 1% uncertainty
    - 99.6127% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 6044 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000009-cells.csv
===>>> Event 9 <<<===
Number of measurements: 31798 (host), 31798 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of spacepoints: 31798 (host), 31798 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of seeds: 5875 (host), 5875 (device)
  Matching rate(s):
    - 100% at 0.01% uncertainty
    - 100% at 0.1% uncertainty
    - 100% at 1% uncertainty
    - 100% at 5% uncertainty
Number of track parameters: 5875 (host), 5875 (device)
  Matching rate(s):
    - 99.9319% at 0.01% uncertainty
    - 99.9319% at 0.1% uncertainty
    - 99.9319% at 1% uncertainty
    - 99.9319% at 5% uncertainty
Number of track candidates: 12812 (host), 12834 (device)
  Matching rate(s):
    - 99.7818% at 0.01% uncertainty
    - 99.7818% at 0.1% uncertainty
    - 99.7818% at 1% uncertainty
    - 99.7818% at 5% uncertainty
Number of track states: 12812 (host), 12834 (device)
  Matching rate(s):
    - 87.1825% at 0.01% uncertainty
    - 95.5743% at 0.1% uncertainty
    - 98.6754% at 1% uncertainty
    - 99.439% at 5% uncertainty
==> Statistics ... 
- read    792140 cells from 112034 modules
- created (cpu)  319357 measurements     
- created (cpu)  319357 spacepoints     
- created (cuda) 319347 spacepoints     
- created  (cpu) 59245 seeds
- created (cuda) 59244 seeds
- found (cpu)    137659 tracks
- found (cuda)   137760 tracks
- fitted (cpu)   137659 tracks
- fitted (cuda)  137760 tracks
==>Elapsed times...
           File reading  (cpu)  1629 ms
         Clusterization (cuda)  41 ms
   Spacepoint formation (cuda)  2 ms
         Clusterization  (cpu)  55 ms
   Spacepoint formation  (cpu)  10 ms
                Seeding (cuda)  43 ms
                Seeding  (cpu)  1060 ms
           Track params (cuda)  2 ms
           Track params  (cpu)  16 ms
          Track finding (cuda)  1162 ms
           Track finding (cpu)  13036 ms
          Track fitting (cuda)  433 ms
           Track fitting (cpu)  7854 ms
                     Wall time  25475 ms

Single precision

byeo@hermes:/mnt/nvme0n1/byeo/projects/traccc/traccc_build$ ./bin/traccc_seq_example_cuda --detector-file=geometries/odd/odd_geometry_detray.json --use-detray-detector --digitization-file=geometries/odd/odd-digi-geometric-config.json --input-directory=odd/muon100GeV-geant4/ --grid-file=geometries/odd/odd_surface_grids_detray.json  --input-events=10 --compare-with-cpu

Running Full Tracking Chain Using CUDA

>>> Detector Options <<<
  Detector file       : geometries/odd/odd_geometry_detray.json
  Material file       : 
  Surface rid file    : geometries/odd/odd_surface_grids_detray.json
  Use detray::detector: yes
  Digitization file   : geometries/odd/odd-digi-geometric-config.json
>>> Input Data Options <<<
  Input data format             : csv
  Input directory               : odd/muon100GeV-geant4/
  Number of input events        : 10
  Number of input events to skip: 0
>>> Clusterization Options <<<
  Target cells per partition: 1024
>>> Track Seeding Options <<<
  None
>>> Track Finding Options <<<
  Track candidates range   : 3:100
  Maximum Chi2             : 30
  Maximum branches per step: 4294967295
>>> Track Propagation Options <<<
  Constraint step size : 3.40282e+38 [mm]
  Overstep tolerance   : -100 [um]
  Mask tolerance       : 15 [um]
  Search window        : 0 x 0
  Runge-Kutta tolerance: 0.0001
>>> Performance Measurement Options <<<
  Run performance checks: no
>>> Accelerator Options <<<
  Compare with CPU results: yes

WARNING: No material in detector
WARNING: No entries in volume finder
Detector check: OK
WARNING: No material in detector
WARNING: No entries in volume finder
Detector check: OK
WARNING: @traccc::io::csv::read_cells: 4500 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000000-cells.csv
===>>> Event 0 <<<===
Number of measurements: 31587 (host), 31587 (device)
  Matching rate(s):
    - 98.1701% at 0.01% uncertainty
    - 99.503% at 0.1% uncertainty
    - 99.503% at 1% uncertainty
    - 99.503% at 5% uncertainty
Number of spacepoints: 31587 (host), 31587 (device)
  Matching rate(s):
    - 98.1701% at 0.01% uncertainty
    - 99.503% at 0.1% uncertainty
    - 99.503% at 1% uncertainty
    - 99.503% at 5% uncertainty
Number of seeds: 5977 (host), 5977 (device)
  Matching rate(s):
    - 54.877% at 0.01% uncertainty
    - 93.4415% at 0.1% uncertainty
    - 98.6783% at 1% uncertainty
    - 99.1467% at 5% uncertainty
Number of track parameters: 5977 (host), 5977 (device)
  Matching rate(s):
    - 71.1226% at 0.01% uncertainty
    - 96.4196% at 0.1% uncertainty
    - 99.3642% at 1% uncertainty
    - 99.6319% at 5% uncertainty
Number of track candidates: 13906 (host), 13919 (device)
  Matching rate(s):
    - 72.5986% at 0.01% uncertainty
    - 96.6952% at 0.1% uncertainty
    - 99.2744% at 1% uncertainty
    - 99.5115% at 5% uncertainty
Number of track states: 13906 (host), 13919 (device)
  Matching rate(s):
    - 0.962713% at 0.01% uncertainty
    - 5.05783% at 0.1% uncertainty
    - 22.9542% at 1% uncertainty
    - 44.7877% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 4170 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000001-cells.csv
===>>> Event 1 <<<===
Number of measurements: 31923 (host), 31923 (device)
  Matching rate(s):
    - 98.2646% at 0.01% uncertainty
    - 99.5395% at 0.1% uncertainty
    - 99.5395% at 1% uncertainty
    - 99.5395% at 5% uncertainty
Number of spacepoints: 31923 (host), 31923 (device)
  Matching rate(s):
    - 98.2646% at 0.01% uncertainty
    - 99.5395% at 0.1% uncertainty
    - 99.5395% at 1% uncertainty
    - 99.5395% at 5% uncertainty
Number of seeds: 5829 (host), 5829 (device)
  Matching rate(s):
    - 54.3146% at 0.01% uncertainty
    - 93.3951% at 0.1% uncertainty
    - 98.9707% at 1% uncertainty
    - 99.4167% at 5% uncertainty
Number of track parameters: 5829 (host), 5829 (device)
  Matching rate(s):
    - 70.012% at 0.01% uncertainty
    - 96.1228% at 0.1% uncertainty
    - 99.3996% at 1% uncertainty
    - 99.7427% at 5% uncertainty
Number of track candidates: 13272 (host), 13281 (device)
  Matching rate(s):
    - 75.0621% at 0.01% uncertainty
    - 96.5741% at 0.1% uncertainty
    - 99.3525% at 1% uncertainty
    - 99.5934% at 5% uncertainty
Number of track states: 13272 (host), 13281 (device)
  Matching rate(s):
    - 0.956253% at 0.01% uncertainty
    - 5.35351% at 0.1% uncertainty
    - 22.9049% at 1% uncertainty
    - 44.1081% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 4711 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000002-cells.csv
===>>> Event 2 <<<===
Number of measurements: 32088 (host), 32088 (device)
  Matching rate(s):
    - 98.2517% at 0.01% uncertainty
    - 99.5512% at 0.1% uncertainty
    - 99.5512% at 1% uncertainty
    - 99.5512% at 5% uncertainty
Number of spacepoints: 32088 (host), 32088 (device)
  Matching rate(s):
    - 98.2517% at 0.01% uncertainty
    - 99.5512% at 0.1% uncertainty
    - 99.5512% at 1% uncertainty
    - 99.5512% at 5% uncertainty
Number of seeds: 5789 (host), 5789 (device)
  Matching rate(s):
    - 55.7955% at 0.01% uncertainty
    - 93.4358% at 0.1% uncertainty
    - 98.9636% at 1% uncertainty
    - 99.4645% at 5% uncertainty
Number of track parameters: 5789 (host), 5789 (device)
  Matching rate(s):
    - 71.9468% at 0.01% uncertainty
    - 96.5797% at 0.1% uncertainty
    - 99.4818% at 1% uncertainty
    - 99.8273% at 5% uncertainty
Number of track candidates: 13088 (host), 13147 (device)
  Matching rate(s):
    - 76.0706% at 0.01% uncertainty
    - 96.6076% at 0.1% uncertainty
    - 99.0416% at 1% uncertainty
    - 99.4219% at 5% uncertainty
Number of track states: 13088 (host), 13147 (device)
  Matching rate(s):
    - 0.973606% at 0.01% uncertainty
    - 5.26356% at 0.1% uncertainty
    - 23.0547% at 1% uncertainty
    - 43.7666% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 4383 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000003-cells.csv
===>>> Event 3 <<<===
Number of measurements: 31917 (host), 31917 (device)
  Matching rate(s):
    - 98.2736% at 0.01% uncertainty
    - 99.5394% at 0.1% uncertainty
    - 99.5394% at 1% uncertainty
    - 99.5394% at 5% uncertainty
Number of spacepoints: 31917 (host), 31917 (device)
  Matching rate(s):
    - 98.2705% at 0.01% uncertainty
    - 99.5394% at 0.1% uncertainty
    - 99.5394% at 1% uncertainty
    - 99.5394% at 5% uncertainty
Number of seeds: 6081 (host), 6081 (device)
  Matching rate(s):
    - 56.3065% at 0.01% uncertainty
    - 94.0306% at 0.1% uncertainty
    - 98.6515% at 1% uncertainty
    - 98.9804% at 5% uncertainty
Number of track parameters: 6081 (host), 6081 (device)
  Matching rate(s):
    - 71.3863% at 0.01% uncertainty
    - 95.9546% at 0.1% uncertainty
    - 99.3422% at 1% uncertainty
    - 99.556% at 5% uncertainty
Number of track candidates: 13814 (host), 13825 (device)
  Matching rate(s):
    - 74.0904% at 0.01% uncertainty
    - 96.1591% at 0.1% uncertainty
    - 99.3273% at 1% uncertainty
    - 99.5081% at 5% uncertainty
Number of track states: 13814 (host), 13825 (device)
  Matching rate(s):
    - 0.867993% at 0.01% uncertainty
    - 5.41049% at 0.1% uncertainty
    - 23.1609% at 1% uncertainty
    - 44.3544% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 4386 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000004-cells.csv
===>>> Event 4 <<<===
Number of measurements: 32145 (host), 32145 (device)
  Matching rate(s):
    - 98.2983% at 0.01% uncertainty
    - 99.5489% at 0.1% uncertainty
    - 99.5489% at 1% uncertainty
    - 99.5489% at 5% uncertainty
Number of spacepoints: 32145 (host), 32145 (device)
  Matching rate(s):
    - 98.2983% at 0.01% uncertainty
    - 99.5489% at 0.1% uncertainty
    - 99.5489% at 1% uncertainty
    - 99.5489% at 5% uncertainty
Number of seeds: 6208 (host), 6208 (device)
  Matching rate(s):
    - 55.4446% at 0.01% uncertainty
    - 93.6211% at 0.1% uncertainty
    - 98.3731% at 1% uncertainty
    - 99.0657% at 5% uncertainty
Number of track parameters: 6208 (host), 6208 (device)
  Matching rate(s):
    - 71.7784% at 0.01% uncertainty
    - 96.2468% at 0.1% uncertainty
    - 99.1785% at 1% uncertainty
    - 99.5329% at 5% uncertainty
Number of track candidates: 14245 (host), 14295 (device)
  Matching rate(s):
    - 75.6139% at 0.01% uncertainty
    - 96.4393% at 0.1% uncertainty
    - 98.9437% at 1% uncertainty
    - 99.2515% at 5% uncertainty
Number of track states: 14245 (host), 14295 (device)
  Matching rate(s):
    - 0.790486% at 0.01% uncertainty
    - 4.93179% at 0.1% uncertainty
    - 22.5044% at 1% uncertainty
    - 44.2183% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 5056 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000005-cells.csv
===>>> Event 5 <<<===
Number of measurements: 31626 (host), 31617 (device)
  Matching rate(s):
    - 98.2293% at 0.01% uncertainty
    - 99.4656% at 0.1% uncertainty
    - 99.4656% at 1% uncertainty
    - 99.4656% at 5% uncertainty
Number of spacepoints: 31626 (host), 31617 (device)
  Matching rate(s):
    - 98.2293% at 0.01% uncertainty
    - 99.4656% at 0.1% uncertainty
    - 99.4656% at 1% uncertainty
    - 99.4656% at 5% uncertainty
Number of seeds: 5902 (host), 5901 (device)
  Matching rate(s):
    - 54.7611% at 0.01% uncertainty
    - 92.8499% at 0.1% uncertainty
    - 98.1701% at 1% uncertainty
    - 98.7801% at 5% uncertainty
Number of track parameters: 5902 (host), 5901 (device)
  Matching rate(s):
    - 71.9248% at 0.01% uncertainty
    - 96.4249% at 0.1% uncertainty
    - 99.3223% at 1% uncertainty
    - 99.5764% at 5% uncertainty
Number of track candidates: 13415 (host), 13273 (device)
  Matching rate(s):
    - 76.1759% at 0.01% uncertainty
    - 96.8319% at 0.1% uncertainty
    - 99.4037% at 1% uncertainty
    - 99.5975% at 5% uncertainty
Number of track states: 13415 (host), 13273 (device)
  Matching rate(s):
    - 0.90943% at 0.01% uncertainty
    - 4.8975% at 0.1% uncertainty
    - 22.5494% at 1% uncertainty
    - 43.3768% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 4717 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000006-cells.csv
===>>> Event 6 <<<===
Number of measurements: 32377 (host), 32376 (device)
  Matching rate(s):
    - 98.2395% at 0.01% uncertainty
    - 99.5182% at 0.1% uncertainty
    - 99.5182% at 1% uncertainty
    - 99.5182% at 5% uncertainty
Number of spacepoints: 32377 (host), 32376 (device)
  Matching rate(s):
    - 98.2395% at 0.01% uncertainty
    - 99.5182% at 0.1% uncertainty
    - 99.5182% at 1% uncertainty
    - 99.5182% at 5% uncertainty
Number of seeds: 6011 (host), 6011 (device)
  Matching rate(s):
    - 54.1674% at 0.01% uncertainty
    - 93.2624% at 0.1% uncertainty
    - 98.2033% at 1% uncertainty
    - 98.8854% at 5% uncertainty
Number of track parameters: 6011 (host), 6011 (device)
  Matching rate(s):
    - 71.4856% at 0.01% uncertainty
    - 95.974% at 0.1% uncertainty
    - 99.1848% at 1% uncertainty
    - 99.5009% at 5% uncertainty
Number of track candidates: 17544 (host), 17578 (device)
  Matching rate(s):
    - 80.8226% at 0.01% uncertainty
    - 96.7687% at 0.1% uncertainty
    - 99.1182% at 1% uncertainty
    - 99.3173% at 5% uncertainty
Number of track states: 17544 (host), 17578 (device)
  Matching rate(s):
    - 0.779383% at 0.01% uncertainty
    - 4.37479% at 0.1% uncertainty
    - 18.3696% at 1% uncertainty
    - 44.4476% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 5032 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000007-cells.csv
===>>> Event 7 <<<===
Number of measurements: 31688 (host), 31688 (device)
  Matching rate(s):
    - 98.3369% at 0.01% uncertainty
    - 99.5329% at 0.1% uncertainty
    - 99.5329% at 1% uncertainty
    - 99.5329% at 5% uncertainty
Number of spacepoints: 31688 (host), 31688 (device)
  Matching rate(s):
    - 98.3369% at 0.01% uncertainty
    - 99.5329% at 0.1% uncertainty
    - 99.5329% at 1% uncertainty
    - 99.5329% at 5% uncertainty
Number of seeds: 5812 (host), 5812 (device)
  Matching rate(s):
    - 55.4026% at 0.01% uncertainty
    - 93.7543% at 0.1% uncertainty
    - 98.5547% at 1% uncertainty
    - 99.1053% at 5% uncertainty
Number of track parameters: 5812 (host), 5812 (device)
  Matching rate(s):
    - 70.905% at 0.01% uncertainty
    - 96.0943% at 0.1% uncertainty
    - 99.3806% at 1% uncertainty
    - 99.7075% at 5% uncertainty
Number of track candidates: 12677 (host), 12724 (device)
  Matching rate(s):
    - 73.8368% at 0.01% uncertainty
    - 95.3631% at 0.1% uncertainty
    - 99.0726% at 1% uncertainty
    - 99.332% at 5% uncertainty
Number of track states: 12677 (host), 12724 (device)
  Matching rate(s):
    - 0.801635% at 0.01% uncertainty
    - 5.36781% at 0.1% uncertainty
    - 23.2081% at 1% uncertainty
    - 44.7344% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 4706 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000008-cells.csv
===>>> Event 8 <<<===
Number of measurements: 32208 (host), 32208 (device)
  Matching rate(s):
    - 98.2551% at 0.01% uncertainty
    - 99.5436% at 0.1% uncertainty
    - 99.5436% at 1% uncertainty
    - 99.5436% at 5% uncertainty
Number of spacepoints: 32208 (host), 32208 (device)
  Matching rate(s):
    - 98.2551% at 0.01% uncertainty
    - 99.5436% at 0.1% uncertainty
    - 99.5436% at 1% uncertainty
    - 99.5436% at 5% uncertainty
Number of seeds: 5758 (host), 5758 (device)
  Matching rate(s):
    - 54.967% at 0.01% uncertainty
    - 93.5915% at 0.1% uncertainty
    - 99.0795% at 1% uncertainty
    - 99.5311% at 5% uncertainty
Number of track parameters: 5758 (host), 5758 (device)
  Matching rate(s):
    - 72.1084% at 0.01% uncertainty
    - 96.4571% at 0.1% uncertainty
    - 99.5485% at 1% uncertainty
    - 99.7395% at 5% uncertainty
Number of track candidates: 12896 (host), 12910 (device)
  Matching rate(s):
    - 75.794% at 0.01% uncertainty
    - 97.196% at 0.1% uncertainty
    - 99.5662% at 1% uncertainty
    - 99.6902% at 5% uncertainty
Number of track states: 12896 (host), 12910 (device)
  Matching rate(s):
    - 0.975988% at 0.01% uncertainty
    - 5.4299% at 0.1% uncertainty
    - 23.5012% at 1% uncertainty
    - 44.4384% at 5% uncertainty
WARNING: @traccc::io::csv::read_cells: 6044 duplicate cells found in /mnt/nvme0n1/byeo/projects/traccc/traccc/data/odd/muon100GeV-geant4/event000000009-cells.csv
===>>> Event 9 <<<===
Number of measurements: 31798 (host), 31798 (device)
  Matching rate(s):
    - 98.2703% at 0.01% uncertainty
    - 99.4811% at 0.1% uncertainty
    - 99.4811% at 1% uncertainty
    - 99.4811% at 5% uncertainty
Number of spacepoints: 31798 (host), 31798 (device)
  Matching rate(s):
    - 98.2703% at 0.01% uncertainty
    - 99.4811% at 0.1% uncertainty
    - 99.4811% at 1% uncertainty
    - 99.4811% at 5% uncertainty
Number of seeds: 5876 (host), 5876 (device)
  Matching rate(s):
    - 54.663% at 0.01% uncertainty
    - 92.9374% at 0.1% uncertainty
    - 98.6215% at 1% uncertainty
    - 98.9619% at 5% uncertainty
Number of track parameters: 5876 (host), 5876 (device)
  Matching rate(s):
    - 70.0647% at 0.01% uncertainty
    - 95.7284% at 0.1% uncertainty
    - 99.3703% at 1% uncertainty
    - 99.6256% at 5% uncertainty
Number of track candidates: 12820 (host), 12837 (device)
  Matching rate(s):
    - 74.2541% at 0.01% uncertainty
    - 96.292% at 0.1% uncertainty
    - 99.4625% at 1% uncertainty
    - 99.6417% at 5% uncertainty
Number of track states: 12820 (host), 12837 (device)
  Matching rate(s):
    - 0.786788% at 0.01% uncertainty
    - 4.83758% at 0.1% uncertainty
    - 24.2892% at 1% uncertainty
    - 45.3455% at 5% uncertainty
==> Statistics ... 
- read    792140 cells from 112034 modules
- created (cpu)  319357 measurements     
- created (cpu)  319357 spacepoints     
- created (cuda) 319347 spacepoints     
- created  (cpu) 59243 seeds
- created (cuda) 59242 seeds
- found (cpu)    137677 tracks
- found (cuda)   137789 tracks
- fitted (cpu)   137677 tracks
- fitted (cuda)  137789 tracks
==>Elapsed times...
           File reading  (cpu)  1552 ms
         Clusterization (cuda)  16 ms
   Spacepoint formation (cuda)  2 ms
         Clusterization  (cpu)  63 ms
   Spacepoint formation  (cpu)  6 ms
                Seeding (cuda)  38 ms
                Seeding  (cpu)  988 ms
           Track params (cuda)  1 ms
           Track params  (cpu)  13 ms
          Track finding (cuda)  843 ms
           Track finding (cpu)  9757 ms
          Track fitting (cuda)  402 ms
           Track fitting (cpu)  5950 ms
                     Wall time  19765 ms

@beomki-yeo
Copy link
Contributor Author

@krasznaa it is still a long shot but could you try this PR with the ODD chain?

@krasznaa
Copy link
Member

The CPU version seems to behave reasonably. But the CUDA version doesn't seem to finish running. 🤔 I let it run for a few minutes, but it's still processing the first event.

In principle you should be able to test this as well. Since this branch seems to be up to date with the main branch.

./bin/traccc_seq_example_cuda --detector-file=geometries/odd/odd_geometry_detray.json --use-detray-detector --digitization-file=geometries/odd/odd-digi-geometric-config.json --input-directory=odd/muon100GeV-fatras/ --input-events=5 --compare-with-cpu

@krasznaa
Copy link
Member

So in my case, I'm just stuck here:

[bash][atspot01]:traccc > ./out/build/sycl/bin/traccc_seq_example_cuda --detector-file=geometries/odd/odd_geometry_detray.json --use-detray-detector --digitization-file=geometries/odd/odd-digi-geometric-config.json --input-directory=odd/muon100GeV-fatras/ --input-events=5 --compare-with-cpu

Running Full Tracking Chain Using CUDA

>>> Detector Options <<<
  Detector file       : geometries/odd/odd_geometry_detray.json
  Material file       : 
  Surface rid file    : 
  Use detray::detector: yes
  Digitization file   : geometries/odd/odd-digi-geometric-config.json
>>> Input Data Options <<<
  Input data format             : csv
  Input directory               : odd/muon100GeV-fatras/
  Number of input events        : 5
  Number of input events to skip: 0
>>> Clusterization Options <<<
  Target cells per partition: 1024
>>> Track Seeding Options <<<
  None
>>> Track Finding Options <<<
  Track candidates range   : 3:100
  Maximum Chi2             : 30
  Maximum branches per step: 4294967295
>>> Track Propagation Options <<<
  Constraint step size : 3.40282e+38 [mm]
  Overstep tolerance   : -100 [um]
  Mask tolerance       : 15 [um]
  Search window        : 0 x 0
  Runge-Kutta tolerance: 0.0001
>>> Performance Measurement Options <<<
  Run performance checks: no
>>> Accelerator Options <<<
  Compare with CPU results: yes

WARNING: No material in detector
WARNING: No entries in volume finder
Detector check: OK
WARNING: No material in detector
WARNING: No entries in volume finder
Detector check: OK
WARNING: @traccc::io::csv::read_cells: 21 duplicate cells found in /home/krasznaa/ATLAS/projects/traccc/traccc/data/odd/muon100GeV-fatras/event000000000-cells.csv

(I tried both the G4 and Fatras files, just to see if one would behave better than the other.)

@beomki-yeo beomki-yeo force-pushed the gpu-optimization branch 2 times, most recently from ad2c004 to 3d062e9 Compare April 27, 2024 15:09
@beomki-yeo
Copy link
Contributor Author

beomki-yeo commented Apr 27, 2024

@krasznaa It is good to go now

So in my case, I'm just stuck here:

The programs wre stalled because tracks lost its way and propagate forever in propagate_to_next_surface. I fixed the PR to abort the tracks which do too many steps (>100).

Copy link
Member

@krasznaa krasznaa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am extremely happy that you managed to make it work! 🥳

I'd prefer some of the access operators to be changed, but all in all I don't feel super strongly about any of my comments. As I'll want to use the code next week, in whatever form I can. 😄

@krasznaa
Copy link
Member

So, where do we stand with this? From a quick glance, I'm okay with how this looks, if you claim that it works for you at the moment Beomki.

I'd be keen to merge this in, and then work with @asalzburger and @niermann999 to make it work with the latest geometry / simulation files. 🤔

@beomki-yeo
Copy link
Contributor Author

This PR works for my setup (gcc 11.2 and cuda 12.4) with data v6. Please go ahead with it.

Copy link
Member

@krasznaa krasznaa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@krasznaa krasznaa merged commit 436424f into acts-project:main Apr 29, 2024
17 of 18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants