fcdmft.utils.worksteal module#
- class fcdmft.utils.worksteal.MPIWorkStealingScheduler(cartcomm=None)[source]#
Bases:
objectMethods
finalize()Free the RMA window and clean up.
Generator that yields jobs to be done.
initialize_workitems(workitems)Put jobs in the scheduler.
- get_workitems()[source]#
Generator that yields jobs to be done.
The main work-stealing loop lives here.
- Yields:
ndarray1D array of np.int64; a row of the global workitems array.
- initialize_workitems(workitems)[source]#
Put jobs in the scheduler.
A window is then created on each rank to store the current job index.
- Parameters:
- workitemsarray_like of
int 2D array (or list of tuples) of jobs, one per row.
- workitemsarray_like of