-
Notifications
You must be signed in to change notification settings - Fork 5
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
Improve GPU treatment of conditions #65
Comments
I'll start to look into this. If anyone sees problem(s) in the plan, please scream. |
I think I have a decent solution for
Then thinking out loud what to do. I believe point iv should in any case be separated as it is event-level quantity (even if in practice in absence of pixel unpacking regions the list of modules is presumably the same for each event). For i-iii I think there are two options
|
I favor 1: btw we need to address gpuCalib as well (that may be combined in 1) for Records look under there is the catch all record notice the comment and of course here there is a nice collection of records for the strips I personally would move raw2cluster in LocalRecoTracker (where it belongs) as I did for the strip |
@VinInn Thanks, I'll start to move to that direction then. |
Addressed in #77. |
* TrackQuality Code Review * Fix to FileInPath error * Revert FileInPath, set quality default to true
Currently the conditions data for GPUs is handled in the following ways
edm::Stream
sPixelCPEFast
ESProduct owns the GPU memory and transfers the data to GPU by itselfTo unify the approach and to address the shortcomings above I'm thinking the following
getGPUProductAsync(cuda::stream_t<>&)
which would do the followingcudaMalloc()
could be acceptable?)It would follow that
edm::Stream
s ofESProducer::getGPUProductAsync()
should enqueue a callback function to the CUDA stream releasing the mutex after the asynchronous memory transfers are finished@fwyzard @felicepantaleo @VinInn @rovere @vkhristenko
The text was updated successfully, but these errors were encountered: