-
Notifications
You must be signed in to change notification settings - Fork 484
TRD tracker can handle time frames instead of single collisions only #4297
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
Conversation
feb69d0 to
2b9eee6
Compare
|
@martenole : Continuing here: with the latest commit I can run it but I cannot reproduce the segfault. Could you perhaps provide the input data that trigger the segfault somewhere? Otherwise I can try tomorrow with address sanitizers. |
|
OK, using root.exe instead of root I get the segfault, no idea what is the difference. Investigating... |
|
That is strange. I am not using root.exe, but simply root.. |
|
@martenole : Sorry, that was quite stupid, fixed in #4359 .... Anyhow, it still segfaults for me transversing the TRD Geometry when querrying the material budget: On another note: Running with Run 2 data in standalone mode, we were discussing ~6 weeks ago two issues: 1 fpe and 1 segfault. Do you have any update on these? (sorry if I missed it) |
|
@davidrohr Thanks a lot for the fix! I am compiling it at the moment. I was also looking at these lines, but somehow I missed the obvious solution. The FPE should be fixed with this commit. I was using a function accidentally which I had added as a test but which was not supposed to be used yet. Since it is not needed at all I removed it completely. About the geometry I am not sure what the status is there, I need to check with Tom and Sean why the material lookup fails. Cheers, |
|
Hi @shahor02 But I am not sure how to do it right. You can reproduce the error by running the macro |
1550f3f to
a176447
Compare
|
Hi, |
|
@martenole just saw your week old question, sorry (please ping me when I don't respond). The general geometry / field init is ok. |
|
Hi @shahor02 , |
|
@davidrohr the error with build/O2/gpu |
|
@martenole : Yes, the problem with the GPU CI is that it runs out of memory during CMake compilation (even though it is not clear to me why it tries to recompile CMake in the first place, CMake hasn't changed since a while). I have already asked @ktf about it. |
The LUT is not created in the simulation by default. It should be provided via the CCDB eventually, but for now you have to create one by yourself, or just disable it. For creating it, see https://github.com/AliceO2Group/AliceO2/blob/dev/Detectors/Base/test/README.md. |
|
@martenole since the mat. LUT generation is quite time consuming, it has to be pregenerated, I put one in But its absence should not be a problem, the Propagator will use it only if the LUT is attached to it (see e.g. AliceO2/Detectors/GlobalTrackingWorkflow/src/TPCITSMatchingSpec.cxx Lines 80 to 88 in 31aef58
|
|
Indeed, the absense of the matlut is no problem. The crash I have reported above is actually during the TGeo query. |
|
Ok, but then I don't understand why the segfault disappeared :/
|
|
You have set mat.correction to none, so there is no material surely at all |
davidrohr
left a comment
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.
Verified GPU compilation locally, might need some follow-up PR, but this fixes some things and has no regression, merging.
Hi @davidrohr
thanks a lot for providing the fix for the standalone build! The floating point exception was caused by a function I had implemented to check the chi 2 calculation. This function is not needed, so I simply removed it.
Unfortunately, currently I can only run the tracking with the standalone framework. When I try to execute the macro
GPU/GPUTracking/TRDTracking/macros/run_trd_tracker.Cin O2 I get a segfault and an error fromo2::gpu::GPUChain::AllocateIOMemoryHelper. Did the memory allocation mechanism for the reconstruction chain change? I paste the full error log below. In AliRoot I see the same error.Cheers,
Ole
#6 0x00007ff99d0bf666 in o2::gpu::GPUChain::AllocateIOMemoryHelpero2::tpc::ClusterNative (this=0x55dadb078220, u=std::unique_ptr<struct o2::tpc::ClusterNative []> = {...}, ptr=, n=<error reading variable: Cannot access memory at address 0x156a0>) at /home/oschmidt/alice/sw/SOURCES/O2/v1.2.0/0/GPU/GPUTracking/Global/GPUChain.h:125
#7 o2::gpu::GPUChainTracking::AllocateIOMemory (this=0x55dadb078220) at /home/oschmidt/alice/sw/SOURCES/O2/v1.2.0/0/GPU/GPUTracking/Global/GPUChainTracking.cxx:462
#8 0x00007ff9926f045c in run_trd_tracker(std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::__cxx11::basic_string<char, std::char_traits, std::allocator >) () from /home/oschmidt/alice/O2/GPU/GPUTracking/TRDTracking/macros/run_trd_tracker_C.so