-
-
Notifications
You must be signed in to change notification settings - Fork 271
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
fix: this refactors execution to properly use the process pool #352
Open
zcstarr
wants to merge
8
commits into
cadCAD-org:master
Choose a base branch
from
zcstarr:feat/perf
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+236
−70
Commits on Mar 21, 2024
-
fix: this refactors execution to properly use the proces pool
Prior to this change the process pool was created and destroyed for every configuration, this would cause the cpu/memory to thrash and improperly allocate task to avaialble cpu, resulting in sometimes 25% utilization of available cpu resources The change corrects this, as well as tackles memory problems, by writing temporary results to disk and then reading them back at the end of the simulation. This is non configurable in this commit, and can also result in loading too much memory, as it does not include the ability to progressively or lazy load data into the final dataframe to complete the simulation. This commit is a WIP fixes cadCAD-org#351
Configuration menu - View commit details
-
Copy full SHA for cee080b - Browse repository at this point
Copy the full SHA cee080bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4f2a539 - Browse repository at this point
Copy the full SHA 4f2a539View commit details -
Configuration menu - View commit details
-
Copy full SHA for 30b0729 - Browse repository at this point
Copy the full SHA 30b0729View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0efa2e2 - Browse repository at this point
Copy the full SHA 0efa2e2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 996dd5c - Browse repository at this point
Copy the full SHA 996dd5cView commit details -
feat: add support for lazy evaluation during simulation processing
This feature refactors the parallel processing to use lazy evaluation When simulation data grows, keeping the data in memory causes memory bloat, which causes too Ram to be consumed. The refactor uses lazy_flattens to keep the memory Python consumes low, the change was able to reduce consumption by a factor of 10 in many cases. The change also writes temporary files to disk before lazily rearranging the simulation results to fit the cadCAD expected format for a regular pandas dataframe.
Configuration menu - View commit details
-
Copy full SHA for 024e91c - Browse repository at this point
Copy the full SHA 024e91cView commit details -
Configuration menu - View commit details
-
Copy full SHA for d9dce51 - Browse repository at this point
Copy the full SHA d9dce51View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9f42e1f - Browse repository at this point
Copy the full SHA 9f42e1fView commit details
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.