DISPATCH
dispatcher2_mod Module Reference

A simple task dispatcher, which handles a list of tasks that may be started as background OpenMP tasks. A task can be in any of 4 states: More...

Data Types

type  dispatcher2_t
 

Variables

type(dispatcher2_t), public dispatcher2
 

Detailed Description

A simple task dispatcher, which handles a list of tasks that may be started as background OpenMP tasks. A task can be in any of 4 states:

1: ready for updating 2: undergoing updating by some thread 3: has been updated, but nbors not yet checked 4: finished

When starting, all tasks are normally in state 1, and the dispatcher starts a number (ompnthreads) of background tasks that update them, first changing the state to 2. When finished, the updating thread changes the state from 2 to 3. When the dispatcher finds a task in state 3, it runs a check on the nbor tasks

dispatcherexecute dispatcherupdate linkcheck_task dispatcheractivate linkcheck_mpi linkupdate