Parallel bouquet#7
Open
StuartBenjamin wants to merge 20 commits into
Open
Conversation
…filePerturber (these are just 'precompute_factor' split into two separate steps)
…er-specific print statements for parallel environment
…m, to avoid errors in parallel environment
… bootstrap in fortran backend)
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This PR adds a method-agnostic support for running bouquet in parallel.
The parallel scripts have a modular structure, so new bouquet methods can be adapted for their use.
In more detail:
New script parallel.py distributes some general set of
(input_files, load_files_obj, bouquet_method)across available CPU cores. Each case (ie. each timeslice, kinetic equilibrium, shot)
has an associated tuple of input file names, which are read into python using the specified
load method, and then passed to the bouquet method. parallel_runner distributes
these cases across available CPU cores and runs them in parallel.
Two example scripts are provided, one with a list of geqdsk, peqdsk files, and one with an IDA file and list of peqdsks.
This PR builds on #5 and #6, so should be implemented after them. As of June 9 it is up to date with main