StarPU Internal Handbook
_starpu_machine_config Struct Reference

Data Fields

struct _starpu_machine_topology topology
 
int cpu_depth
 
int pu_depth
 
int current_bindid
 
char currently_bound [STARPU_NMAXWORKERS]
 
char currently_shared [STARPU_NMAXWORKERS]
 
int current_cuda_gpuid
 
int current_opencl_gpuid
 
int current_mic_deviceid
 
int current_mpi_deviceid
 
int cpus_nodeid
 
int cuda_nodeid
 
int opencl_nodeid
 
int mic_nodeid
 
int mpi_nodeid
 
char padding1 [STARPU_CACHELINE_SIZE]
 
struct _starpu_worker workers [STARPU_NMAXWORKERS]
 
struct _starpu_combined_worker combined_workers [STARPU_NMAX_COMBINEDWORKERS]
 
starpu_pthread_mutex_t submitted_mutex
 
char padding2 [STARPU_CACHELINE_SIZE]
 
struct {
int * workerids
 
unsigned nworkers
 
} * bindid_workers
 
unsigned nbindid
 
uint32_t worker_mask
 
struct starpu_conf conf
 
unsigned running
 
int disable_kernels
 
int pause_depth
 
struct _starpu_sched_ctx sched_ctxs [STARPU_NMAX_SCHED_CTXS+1]
 
unsigned submitting
 
int watchdog_ok
 

Field Documentation

◆ topology

struct _starpu_machine_topology _starpu_machine_config::topology

◆ cpu_depth

int _starpu_machine_config::cpu_depth

◆ pu_depth

int _starpu_machine_config::pu_depth

◆ current_bindid

int _starpu_machine_config::current_bindid

Where to bind next worker ?

◆ currently_bound

char _starpu_machine_config::currently_bound[STARPU_NMAXWORKERS]

◆ currently_shared

char _starpu_machine_config::currently_shared[STARPU_NMAXWORKERS]

◆ current_cuda_gpuid

int _starpu_machine_config::current_cuda_gpuid

Which GPU(s) do we use for CUDA ?

◆ current_opencl_gpuid

int _starpu_machine_config::current_opencl_gpuid

Which GPU(s) do we use for OpenCL ?

◆ current_mic_deviceid

int _starpu_machine_config::current_mic_deviceid

Which MIC do we use?

◆ current_mpi_deviceid

int _starpu_machine_config::current_mpi_deviceid

Which MPI do we use?

◆ cpus_nodeid

int _starpu_machine_config::cpus_nodeid

Memory node for cpus, if only one

◆ cuda_nodeid

int _starpu_machine_config::cuda_nodeid

Memory node for CUDA, if only one

◆ opencl_nodeid

int _starpu_machine_config::opencl_nodeid

Memory node for OpenCL, if only one

◆ mic_nodeid

int _starpu_machine_config::mic_nodeid

Memory node for MIC, if only one

◆ mpi_nodeid

int _starpu_machine_config::mpi_nodeid

Memory node for MPI, if only one

◆ padding1

char _starpu_machine_config::padding1[STARPU_CACHELINE_SIZE]

Separate out previous variables from per-worker data.

◆ workers

struct _starpu_worker _starpu_machine_config::workers[STARPU_NMAXWORKERS]

Basic workers : each of this worker is running its own driver and can be combined with other basic workers.

◆ combined_workers

struct _starpu_combined_worker _starpu_machine_config::combined_workers[STARPU_NMAX_COMBINEDWORKERS]

Combined workers: these worker are a combination of basic workers that can run parallel tasks together.

◆ submitted_mutex

starpu_pthread_mutex_t _starpu_machine_config::submitted_mutex

◆ padding2

char _starpu_machine_config::padding2[STARPU_CACHELINE_SIZE]

Separate out previous mutex from the rest of the data.

◆ 

struct { ... } * _starpu_machine_config::bindid_workers

Translation table from bindid to worker IDs

◆ nbindid

unsigned _starpu_machine_config::nbindid

size of bindid_workers

◆ worker_mask

uint32_t _starpu_machine_config::worker_mask

This bitmask indicates which kinds of worker are available. For instance it is possible to test if there is a CUDA worker with the result of (worker_mask & STARPU_CUDA).

◆ conf

struct starpu_conf _starpu_machine_config::conf

either the user given configuration passed to starpu_init or a default configuration

◆ running

unsigned _starpu_machine_config::running

this flag is set until the runtime is stopped

◆ disable_kernels

int _starpu_machine_config::disable_kernels

◆ pause_depth

int _starpu_machine_config::pause_depth

Number of calls to starpu_pause() - calls to starpu_resume(). When >0, StarPU should pause.

◆ sched_ctxs

struct _starpu_sched_ctx _starpu_machine_config::sched_ctxs[STARPU_NMAX_SCHED_CTXS+1]

all the sched ctx of the current instance of starpu

◆ submitting

unsigned _starpu_machine_config::submitting

this flag is set until the application is finished submitting tasks

◆ watchdog_ok

int _starpu_machine_config::watchdog_ok

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