Parallel map.  
More...
Detailed Description
Parallel map. 
A function is applied to all elements of a dynar in parallel with n worker threads. The worker threads are persistent until the destruction of the parmap.
If there are more than n elements in the dynar, the worker threads are allowed to fetch themselves remaining work with xbt_parmap_next() and execute it. 
Enumeration Type Documentation
Synchronization mode of the worker threads of a parmap. 
- Enumerator: 
- 
| XBT_PARMAP_POSIX | use POSIX synchronization primitives  |  | XBT_PARMAP_FUTEX | use Linux futex system call  |  | XBT_PARMAP_BUSY_WAIT | busy waits (no system calls, maximum CPU usage)  |  | XBT_PARMAP_DEFAULT | futex if available, posix otherwise  |  
 
 
 
Function Documentation
Creates a parallel map object. 
- Parameters
- 
  
    | num_workers | number of worker threads to create |  | mode | how to synchronize the worker threads |  
 
- Returns
- the parmap created 
 
 
Destroys a parmap. 
- Parameters
- 
  
    | parmap | the parmap to destroy |  
 
 
 
Applies a list of tasks in parallel. 
- Parameters
- 
  
    | parmap | a parallel map object |  | fun | the function to call in parallel |  | data | each element of this dynar will be passed as an argument to fun |  
 
 
 
Returns a next task to process. 
Worker threads call this function to get more work.
- Returns
- the next task to process, or NULL if there is no more work