-
Notifications
You must be signed in to change notification settings - Fork 168
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
Segfault for ODD+Pythia8+Geant4 #1578
Comments
Hm, could be the two interfere? |
Is this executed in single thread ? |
No good |
For me this crashes with one thread as well |
Is that with the same error / segfault ? |
Hmm it looks a bit different to be honest, but couldn't check in detail for no. |
@andiwand could you maybe also run it in gdb to see if it is the same fault (its not entirely clear to me from the error message) |
I think so yes. Pythia8 only works and Geant4 only works.
sure will do |
I can confirm I just encountered the same issue using the geant4.py example : |
As we discussed during today's meeting I tried to replace the ODD by the GDLM implementation of Alice_v3 and it ran through with just a few warning. |
This issue/PR has been automatically marked as stale because it has not had recent activity. The stale label will be removed if any interaction occurs. |
I have had an other look at this and I just notice something. If I start removing the support from the ODD xml the segfault happen much later so maybe there is something bad with the support surface definition ? |
This issue/PR has been automatically marked as stale because it has not had recent activity. The stale label will be removed if any interaction occurs. |
I was checking back this issue out of curiosity and it is still there. Maybe we should try to investigate this again at some point ? |
For sure this is something that we need to fix. |
So it's G4 breaking in a specific region of the detector? |
Wait the energy goes to 0 in the second step. Could it be that G4 doesn't handle photon stopping in some volumes ? |
No I think with the electron in the pixel endcap is everythin fine, the photon below is the problem. There it only loggs the 0th step and then segfaults. I could imagine that a problem is that it starts already outside of the detector (in the Could it be that the world volume is to small or something like that? |
Oh yeah I was looking at the wrong line... But you are right, the world volume size is 10m along z so this photon is outside the DD4Hep detector. |
Unfortunately, I don't think this is the only issue :( |
Allready merged: #1790 |
Oh perfect I will have a look next week in more detail then ! |
Actually I was able to run one event in the pythia8+geant4+ODD combination without segfault by increasing the world volumen manually from I'm not sure if something like that would be a reasonable fix? Has this any other implications @asalzburger ? I will try to run more events now, however, they take quite a long time (around 30 minutes per event) |
Okay, actually it does not resolve the issue, I still get the segfault in a later event. Maybe it has just changed the random numbers a bit so that 1 event went through. |
A bit unrelated but there is a bug in 'addGeant4' in 'simulation.py'. Line 597 it uses |
If someone wants to have a look : #1792 |
With this you can cut the particle outside the detector by adding |
Actually the code seem to be running on my side and doesn't segfault anymore... Can someone else confirm ? |
@Corentin-Allaire are you using the chain from above? otherwise if you could share the script I can try to verify |
@andiwand here is the chain I use : |
this is still segfaulting for me on 7a3761d |
I might have changed something else by accident let me check (maybe you can also run it with verbose log of G4 ?) |
did you run geant4 in verbose mode @benjaminhuth ? somehow it runs now for a couple of minutes without crashing |
nope, at least that last one not. |
hm for me it is still crashing even with 2 events this is my geant version:
but feel free to close the ticket since it works for both of you now |
@andiwand did you keep the number of thread to 1 ? |
I realised I modified the preselection to cut on x,y and z so I removed that change but it still works on 5 events for now.
|
yeah exactly I did't modify the script. just executed the one you sent here #1578 (comment) |
So I have |
let me update and check again |
I remember reading there was some issue with patch 01 witch is why I updated the first time I run into the odd segfault |
Let me also open and MR to solve to let people use G4 with the Odd |
Actually I think this is a good workaround, though not 100% satisfying... I just wonder if the change in the |
In my opinion this is a pythia issue and not an acts one |
I have opened a PR : #1794. I am mentioning this issue in the comment of the code if people want to understand the full story |
I recompiled G4 with |
I am in the process of running on 100 events just to check that we don't get particles with X or Y > 10m |
This add the option to use the G4 simulation with the Odd getting around the problem noticed in issue #1578. Incidently it also fix a bug while using the odd full chain with only csv writting
I had the simulation run for 100 ttbar events and no issue occurred. I think we can close this one then !
|
@benjaminhuth pointed out that ODD+Pythia8+Geant4 will segfault in full chain
I just verified this. See attached files for more information.
segfault.txt
full_chain.txt
The text was updated successfully, but these errors were encountered: