SimGrid  3.16
Versatile Simulation of Distributed Systems
s_xbt_parmap Struct Reference

Detailed Description

Parallel map structure.

Public Attributes

e_xbt_parmap_flag_t status
 is the parmap active or being destroyed? More...
 
unsigned work
 index of the current round More...
 
unsigned thread_counter
 number of workers that have done the work More...
 
unsigned int num_workers
 total number of worker threads including the controller More...
 
xbt_os_thread_tworkers
 worker thread handlers More...
 
void_f_pvoid_t fun
 function to run in parallel on each element of data More...
 
xbt_dynar_t data
 parameters to pass to fun in parallel More...
 
std::atomic< unsigned int > index
 index of the next element of data to pick More...
 
xbt_os_cond_t ready_cond
 
xbt_os_mutex_t ready_mutex
 
xbt_os_cond_t done_cond
 
xbt_os_mutex_t done_mutex
 
e_xbt_parmap_mode_t mode
 synchronization mode More...
 
void(* master_wait_f )(xbt_parmap_t)
 wait for the workers to have done the work More...
 
void(* worker_signal_f )(xbt_parmap_t)
 signal the master that a worker has done the work More...
 
void(* master_signal_f )(xbt_parmap_t)
 wakes the workers threads to process tasks More...
 
void(* worker_wait_f )(xbt_parmap_t, unsigned)
 waits for more work More...
 

Member Data Documentation

◆ status

e_xbt_parmap_flag_t s_xbt_parmap::status

is the parmap active or being destroyed?

◆ work

unsigned s_xbt_parmap::work

index of the current round

◆ thread_counter

unsigned s_xbt_parmap::thread_counter

number of workers that have done the work

◆ num_workers

unsigned int s_xbt_parmap::num_workers

total number of worker threads including the controller

◆ workers

xbt_os_thread_t* s_xbt_parmap::workers

worker thread handlers

◆ fun

void_f_pvoid_t s_xbt_parmap::fun

function to run in parallel on each element of data

◆ data

xbt_dynar_t s_xbt_parmap::data

parameters to pass to fun in parallel

◆ index

std::atomic<unsigned int> s_xbt_parmap::index

index of the next element of data to pick

◆ ready_cond

xbt_os_cond_t s_xbt_parmap::ready_cond

◆ ready_mutex

xbt_os_mutex_t s_xbt_parmap::ready_mutex

◆ done_cond

xbt_os_cond_t s_xbt_parmap::done_cond

◆ done_mutex

xbt_os_mutex_t s_xbt_parmap::done_mutex

◆ mode

e_xbt_parmap_mode_t s_xbt_parmap::mode

synchronization mode

◆ master_wait_f

void(* s_xbt_parmap::master_wait_f) (xbt_parmap_t)

wait for the workers to have done the work

◆ worker_signal_f

void(* s_xbt_parmap::worker_signal_f) (xbt_parmap_t)

signal the master that a worker has done the work

◆ master_signal_f

void(* s_xbt_parmap::master_signal_f) (xbt_parmap_t)

wakes the workers threads to process tasks

◆ worker_wait_f

void(* s_xbt_parmap::worker_wait_f) (xbt_parmap_t, unsigned)

waits for more work


The documentation for this struct was generated from the following file: