-
Notifications
You must be signed in to change notification settings - Fork 101
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
Feature celeritas integration #1370
base: master
Are you sure you want to change the base?
Conversation
DDG4/src/Celeritas.cpp
Outdated
// Set along-step factory | ||
so.make_along_step = celeritas::UniformAlongStepFactory(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This indicates a "zero" magnetic field: is there a way to assert that DD4HEP doesn't have a mag field definition so that it's consistent?
DDG4/src/Celeritas.cpp
Outdated
// Use Celeritas "hit processor" to call back to Geant4 SDs. | ||
so.sd.enabled = false; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We definitely shouldn't have this. Where were these lines copied from? We should probably use something closer to https://gitlab.cern.ch/bmorgan/athena/-/blob/6072d57711365aa3a58c38ff1134e3f0c569c78b/Simulation/G4Utilities/G4UserActions/src/Celeritas.cxx
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that's where I took it from. Am i looking in the wrong branch? https://gitlab.cern.ch/bmorgan/athena/-/blob/integrate-celeritas/Simulation/G4Utilities/G4UserActions/src/Celeritas.cxx?ref_type=heads&blame=1
Co-authored-by: Seth R. Johnson <[email protected]>
…on definitions placed outside the dd4hep::sim namespace
Test Results 14 files 14 suites 6h 0m 53s ⏱️ Results for commit 4dcf6a3. ♻️ This comment has been updated with latest results. |
Hi @rahmans1 Thank you for the interesting feature. Please format the original PR message with BEGIN/ENDRELEASENOTES. |
@rahmans1 I was totally unfamiliar with dd4hep's architecture when we started our conversation. Based on what little I now know, it might be possible/better for Celeritas to have an option to build a dd4hep plugin... @andresailer I apologize for the newbie question but if we do want to support custom physics and some sort of translation mechanism that replaces certain components (e.g. sensitive detectors) with GPU-optimized ones, should that live in dd4hep or should we include it in celeritas? Thanks! |
@rahmans1 @sethrj
For these reasons I would opt for not committing these changes to the dd4hep core. I hope you understand this reasoning. |
Hi @MarkusFrankATcernch , thanks for your message. Celeritas, along with another software project AdePT, is being developed in concert with the Geant4 R&D to study particle tracking on GPU. Our goal is to be available to LHC experiment workflows; we've been collaborating with numerous experiments on how best to do this. DD4HEP is one refrain we've heard (especially from next-generation experiments) which is why we're pursuing this course of action. I'm not as familiar with DD4HEP-based applications as I'd like to be, but it seems like downstream libraries and applications can define plugins that are loaded at runtime to add functionality. Is it possible to use the plugin architecture to add Geant4 interfaces (custom tracking managers, end-of-event actions, begin/end run actions)? If so we could develop the DD4HEP interface externally. |
Hi @sethrj Thanks for the quick answer!
|
BEGINRELEASENOTES
Integrate track offloading to celeritas (https://celeritas-project.github.io/celeritas)
ENDRELEASENOTES