StarPU Handbook
Loading...
Searching...
No Matches
Running Drivers

Data Structures

struct  starpu_driver
 
union  starpu_driver.id
 

Functions

void starpu_drivers_preinit (void)
 
int starpu_driver_run (struct starpu_driver *d)
 
void starpu_drivers_request_termination (void)
 
int starpu_driver_init (struct starpu_driver *d)
 
int starpu_driver_run_once (struct starpu_driver *d)
 
int starpu_driver_deinit (struct starpu_driver *d)
 

Detailed Description


Data Structure Documentation

◆ starpu_driver

struct starpu_driver

structure for designating a given driver. See Using The Driver API for more details.

Data Fields
enum starpu_worker_archtype type

Type of the driver. Only STARPU_CPU_WORKER, STARPU_CUDA_WORKER and STARPU_OPENCL_WORKER are currently supported.

union starpu_driver.id id

Identifier of the driver.

◆ starpu_driver.id

union starpu_driver.id

Identifier of the driver.

Data Fields
unsigned cpu_id
unsigned cuda_id
unsigned hip_id
cl_device_id opencl_id

Function Documentation

◆ starpu_drivers_preinit()

void starpu_drivers_preinit ( void  )

Pre-initialize drivers So as to register information on device types, memory types, etc. Only use internally by StarPU.

◆ starpu_driver_run()

int starpu_driver_run ( struct starpu_driver d)

Initialize the given driver, run it until it receives a request to terminate, deinitialize it and return 0 on success. Return -EINVAL if starpu_driver::type is not a valid StarPU device type (STARPU_CPU_WORKER, STARPU_CUDA_WORKER or STARPU_OPENCL_WORKER).

This is the same as using the following functions: calling starpu_driver_init(), then calling starpu_driver_run_once() in a loop, and finally starpu_driver_deinit().

See Using The Driver API for more details.

◆ starpu_drivers_request_termination()

void starpu_drivers_request_termination ( void  )

Notify all running drivers that they should terminate. See Using The Driver API for more details.

◆ starpu_driver_init()

int starpu_driver_init ( struct starpu_driver d)

Initialize the given driver. Return 0 on success, -EINVAL if starpu_driver::type is not a valid starpu_worker_archtype. See Using The Driver API for more details.

◆ starpu_driver_run_once()

int starpu_driver_run_once ( struct starpu_driver d)

Run the driver once, then return 0 on success, -EINVAL if starpu_driver::type is not a valid starpu_worker_archtype. See Using The Driver API for more details.

◆ starpu_driver_deinit()

int starpu_driver_deinit ( struct starpu_driver d)

Deinitialize the given driver. Return 0 on success, -EINVAL if starpu_driver::type is not a valid starpu_worker_archtype. See Using The Driver API for more details.