Menu

Commit [r24517]  Maximize  Restore  History

Parallelised the frame order optimisation code to run on clusters or multi-core systems via OpenMPI.

The optimisation code has been split into the three standard parts of the multi-processor:

- Frame_order_memo is the new Memo object used to store data on the master for use when data is
returned from the slaves.

- Frame_order_minimise_command is the Slave_command which stored all required data for the
optimisation, is pickled and sent to a slave, sets up the target function, and then performs
optimisation.

- Frame_order_result_command is the Result_command initialised by the Slave_command on the slave for
pickling and returning results to the master.

To avoid pickling the target function class, which is not possible, the store_bc_data() and
target_fn_setup() functions of the specific_analyses.frame_order.optimisation module have been
redesigned to work with basic data structures rather than the target function class directly. The
target_fn_setup() function no longer returns an initialised target function class, but rather all
the data assembled prior to the initialisation. And the target function class was itself modified
so that pcs_theta and rdc_theta are always defined to allow the store_bc_data() function to be used
successfully.

This parallelisation currently only allows the Monte Carlo simulations to be run on slave
processors.

bugman 2014-07-10

changed /branches/frame_order_cleanup/specific_analyses/frame_order/api.py
changed /branches/frame_order_cleanup/specific_analyses/frame_order/optimisation.py
changed /branches/frame_order_cleanup/target_functions/frame_order.py
/branches/frame_order_cleanup/specific_analyses/frame_order/api.py Diff Switch to side-by-side view
Loading...
/branches/frame_order_cleanup/specific_analyses/frame_order/optimisation.py Diff Switch to side-by-side view
Loading...
/branches/frame_order_cleanup/target_functions/frame_order.py Diff Switch to side-by-side view
Loading...
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.