-
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-1102] Add memory load balance export based on dry run estim…
…ate (#111) ## Context This MR includes new mechanisms to generate a detailed load balancing using the memory estimates generated by the dry run. It distributes all the gids of the circuit to a number of ranks specified using the `--num-target-ranks` CLI flag taking care of distributing so that the allocation of each rank is balanced. The system is based on a greedy algorithm, assigning cells in blocks of 10 to the emptiest rank available at that moment. It also includes automatic pickling and gzipping of the allocation dictionary to `allocation.pkl.gz` file. Loading of the generated load balance will be integrated in a future MR. ## Scope The MR briefly expands the capabilities of the dry run workflow with automatic load balancing and save to pickle file for future use. All the structure involved stay the same and no significant change is made to workflow. ## Testing Most of the new functionalities should be automatically tested using the `test_dry_run_workflow` integration tests. In any case a specific test that loads the pickled `allocation.pkl.gz` file and checks against expected values was integrated. ## Review * [x] PR description is complete * [x] Coding style (imports, function length, New functions, classes or files) are good * [x] Unit/Scientific test added * [x] Updated Readme, in-code, developer documentation
- Loading branch information
Showing
8 changed files
with
215 additions
and
3 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
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
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