Skip to content
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

ENH: Parallel mode for monte-carlo simulations #619

Open
wants to merge 69 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 56 commits
Commits
Show all changes
69 commits
Select commit Hold shift + click to select a range
2d5ff8d
Basic paralllel structure added
brunosorban May 4, 2024
6fbe0f7
added counter
brunosorban May 9, 2024
2927448
Working version with shared objects
brunosorban May 9, 2024
1b50e94
Write mode added
brunosorban May 9, 2024
46f5f00
Enable both export modes for serial and parallel
brunosorban May 21, 2024
6ea6ef8
Style changes
brunosorban May 21, 2024
be32a75
Added post-processing scripts
brunosorban May 21, 2024
1146e20
using queue to manage simulations
brunosorban Jun 5, 2024
175a025
one lock per file
brunosorban Jun 5, 2024
9cef636
Added append logic to h5 file
brunosorban Jun 9, 2024
d57e436
Enabled number of workers control
brunosorban Jun 9, 2024
1fe04e1
Added central post-processing script
brunosorban Jun 9, 2024
5a6547d
Updated example notebook
brunosorban Jun 9, 2024
75bc96b
removed test file
brunosorban Jun 9, 2024
918cbe0
Removed dev files
brunosorban Jun 9, 2024
b3dcfc6
Updated append mode
brunosorban Jun 9, 2024
ee06b9d
removed unsused file
brunosorban Jun 9, 2024
38a29b1
Added documentation
brunosorban Jun 9, 2024
98ce6ba
Centralized simulation control in SimCounter
brunosorban Jun 11, 2024
2b8dc4b
Updated start time
brunosorban Jun 11, 2024
d421a83
Working 2 way semaphore
brunosorban Jun 12, 2024
ceb1832
Added cpu limit
brunosorban Jun 12, 2024
1999c6d
not deserializing data
brunosorban Jun 18, 2024
d7ed4a1
Working shared memory with big buffer
brunosorban Jun 19, 2024
4fe5314
Updated writer to write unpickled data
brunosorban Jun 19, 2024
3114f81
Removed alpha serializer
brunosorban Jun 19, 2024
cb276de
Update sim counter for append mode
brunosorban Jun 19, 2024
2e56977
added input export to light mode
brunosorban Jun 19, 2024
01d77fa
Encapsulated methods and reduced buffer size
brunosorban Jun 26, 2024
3428608
Added time back to exported functions
brunosorban Jun 26, 2024
615a907
MNT: run formatters and apply simple review suggestions.
phmbressan Jul 19, 2024
c563472
Merge remote-tracking branch 'origin/develop' into enh/parallel_monte…
phmbressan Jul 19, 2024
2a42b26
FIX: small post merge corrections.
phmbressan Jul 19, 2024
8008aa7
MNT: remove post processing scripts.
phmbressan Jul 26, 2024
25a2fed
MNT: remove light mode and refactor I/O file handling.
phmbressan Jul 26, 2024
d3a9004
Merge remote-tracking branch 'origin/develop' into enh/parallel_monte…
phmbressan Jul 26, 2024
2cdc95e
TST: fix testing for file Paths.
phmbressan Jul 26, 2024
2169db1
MNT: update optional dependencies for multiprocess.
phmbressan Jul 26, 2024
049276d
FIX: optional import handling of multiprocess module.
phmbressan Jul 29, 2024
8316993
FIX: parallel random value generation not being independent.
phmbressan Aug 3, 2024
004bf23
MNT: improve docstrings for parallel MonteCarlo.
phmbressan Aug 3, 2024
26f692e
MNT: fix printing and formatting issues.
phmbressan Aug 3, 2024
d18408e
MNT: improve random number generator naming.
phmbressan Aug 4, 2024
abe5747
FIX: stochastic model seed input not being used.
phmbressan Aug 4, 2024
fe7bad3
MNT: correct outdated docstrings and improve function naming.
phmbressan Aug 4, 2024
0048737
MNT: improve docstrings according to code reviews.
phmbressan Aug 4, 2024
3a08f48
Merge pull request #649 from RocketPy-Team/mnt/parallel-refactor
phmbressan Aug 5, 2024
cb88e69
Merge remote-tracking branch 'origin/develop' into enh/parallel_monte…
phmbressan Aug 6, 2024
c3c6c3d
Merge branch 'develop' into enh/parallel_montecarlo
Gui-FernandesBR Aug 13, 2024
6061d3a
MNT: use standard multiprocessing with instance methods.
phmbressan Aug 17, 2024
b749979
Update rocketpy/simulation/monte_carlo.py
phmbressan Aug 17, 2024
6715791
Merge branch 'develop' into enh/parallel_montecarlo
Gui-FernandesBR Aug 18, 2024
8671e52
MNT: soft stop on parallel errors or interrupt.
phmbressan Aug 18, 2024
5141791
MNT: improve object encoding and file handling.
phmbressan Aug 19, 2024
0e4d243
MNT: solve number of processes issue on Windows.
phmbressan Aug 21, 2024
1e24643
FIX: return to multiprocess library for spawned process support.
phmbressan Aug 21, 2024
d22c957
MNT: improve process ordering for spawned workers.
phmbressan Aug 23, 2024
6dab002
DOC: run 1000 MonteCarlo simulations for better documentatiion example.
phmbressan Aug 23, 2024
d07fcc2
MNT: solve review comments on docstrings and code comments.
phmbressan Aug 23, 2024
6fa90b7
Merge remote-tracking branch 'origin/develop' into enh/parallel_monte…
phmbressan Aug 23, 2024
e40a871
DOC: improve docstrings regarding number of workers.
phmbressan Aug 23, 2024
4246809
MNT: add index to outputs of monte carlo.
phmbressan Sep 5, 2024
9f7325c
MNT: avoid unnecessary reseedings on parallel monte carlo.
phmbressan Sep 5, 2024
1baedf6
MNT: simplify process start up syntax.
phmbressan Sep 5, 2024
df07955
MNT: add number of workers in parallel mode to prints.
phmbressan Sep 5, 2024
8082710
MNT: fix pylint messages on file handling.
phmbressan Sep 5, 2024
00d9d02
MNT: Simplify Monte Carlo parallel export structure.
phmbressan Dec 16, 2024
ebf6bd0
Merge remote-tracking branch 'origin/develop' into enh/parallel_monte…
phmbressan Dec 16, 2024
0009c24
BUG: fixing random number generator bug in StochasticRocket and issue…
Lucas-Prates Dec 18, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -191,6 +191,7 @@
"Metrum",
"modindex",
"mult",
"multiprocess",
"Mumma",
"NASADEM",
"nbformat",
Expand Down

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

381 changes: 337 additions & 44 deletions docs/notebooks/monte_carlo_analysis/monte_carlo_class_usage.ipynb

Large diffs are not rendered by default.

3 changes: 2 additions & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,8 @@ env-analysis = [
]

monte-carlo = [
"imageio",
"imageio",
"multiprocess>=0.70"
]

all = ["rocketpy[env-analysis]", "rocketpy[monte-carlo]"]
Expand Down
3 changes: 2 additions & 1 deletion requirements-optional.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,5 @@ ipython
ipywidgets>=7.6.3
jsonpickle
timezonefinder
imageio
imageio
multiprocess>=0.70
Loading
Loading