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
Decrease memory used by OscarMTProducer #26578
Commits on Apr 30, 2019
-
CaloSD does not own the hit collection
Ownership of the hit collection is transfered to G4HCofThisEvent.
Configuration menu - View commit details
-
Copy full SHA for 5aded58 - Browse repository at this point
Copy the full SHA 5aded58View commit details -
The numbering scheme object is not owned by TkAccumulatingSensitiveDe…
…tector The numbering scheme object is a static thread_local function variable and therefore should not be deleted explicitly.
Configuration menu - View commit details
-
Copy full SHA for 91b7fe0 - Browse repository at this point
Copy the full SHA 91b7fe0View commit details -
AttachSD can just be created as needed in RunManager
AttachSD has not state and therefore can just be used as a local variable.
Configuration menu - View commit details
-
Copy full SHA for 4a54fa8 - Browse repository at this point
Copy the full SHA 4a54fa8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 78f9bdc - Browse repository at this point
Copy the full SHA 78f9bdcView commit details -
Properly cleanup thread locals in RunManagerMTWorker
All memory except for G4Run (which has segmentation fault problems) is now cleaned up at the end of the job.
Configuration menu - View commit details
-
Copy full SHA for 42c89fa - Browse repository at this point
Copy the full SHA 42c89faView commit details -
Better memory handling in CaloSD
The reusehit container now owns the CaloG4Hits it contains and it is now cleared at the end of processing an event. Removed the need for the helper container selIndex. Made hitvec a temporary variable of a member function.
Configuration menu - View commit details
-
Copy full SHA for 07a36d8 - Browse repository at this point
Copy the full SHA 07a36d8View commit details -
Be able to reset the memory used to hold all CaloG4Hits
Can now call ResetStorage on the G4 allocator that holds all the memory for all CaloG4Hits in a particular thread. This will allow clearing of the memory at the end of each event. IgProf showed this was a major memory hoarder.
Configuration menu - View commit details
-
Copy full SHA for c21aff0 - Browse repository at this point
Copy the full SHA c21aff0View commit details -
Properly handle per Event/Job memory cleanup in OscarMTProducer
Now clear temporary memory used to process an event before leaving OscarMTProducer::produce. Properly cleanup the thread_local storage at the end of the job. This makes it easier to find per event memory leaks.
Configuration menu - View commit details
-
Copy full SHA for c0b63e5 - Browse repository at this point
Copy the full SHA c0b63e5View commit details -
Fixed incorrect cherry-picking of changes in CaloSD
The containers were supposed to be either removed or replaced.
Configuration menu - View commit details
-
Copy full SHA for 00efce5 - Browse repository at this point
Copy the full SHA 00efce5View commit details -
Do not delete thread local storage multiple times
Given there is a RunManagerMTWorker per stream, and the tls is per threads, we need to be sure not to delete the same tls multiple times.
Configuration menu - View commit details
-
Copy full SHA for efdd9bf - Browse repository at this point
Copy the full SHA efdd9bfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0c78f96 - Browse repository at this point
Copy the full SHA 0c78f96View commit details