-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[BBPBGLIB-556] Full estimate of memory consumption (#32)
Introduce full memory estimation capabilities for dry run as detailed in https://bbpteam.epfl.ch/project/issues/browse/BBPBGLIB-556. When running in dry run mode, neurodamus will now provide a full estimate of the memory usage for both cells and synapses. The synapse workflow is mostly untouched from the previous version with just a small bug fix. For the cells estimate workflow we now perform full calculation of the estimate with the following workflow: 1. Finding all unique combinations of METypes and taking only the first 50 elements of each combination 2. Instantiating these combinations. Each set of maximum 50 elements is allocated in a different rank. 3. Getting the total memory consumption and then average it per cells. 4. Use the above average to calculate total memory usage for any combination with more than 50 elements. 5. Combine the cells memory total with the synapse one to get a full estimate. The MR also introduces exporting the cells memory estimate to `json` file. Since this phase is the most time consuming one, by default the dry run workflow will automatically export the results for cell memory usage to a `memory_usage.json` file. It will also try to load this file on any subsequent run and just perform instantiation for METype combinations that are not already present in the file. Furthermore, in dry run we will attempt to get an estimate for the overhead memory used by every rank, normally used to load libraries and data structure. This amount will be added at the grand total at the end of the execution. --------- Co-authored-by: Fernando Pereira <fernando.pereira@epfl.ch>
- Loading branch information
1 parent
0d0bc7c
commit 55b958d
Showing
12 changed files
with
261 additions
and
62 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.