17#ifndef __COPY_DRIVER_H__
18#define __COPY_DRIVER_H__
26#include <common/config.h>
31#include <cuda_runtime.h>
34#ifdef STARPU_USE_OPENCL
35#include <starpu_opencl.h>
38#ifdef STARPU_USE_MPI_MASTER_SLAVE
47struct _starpu_data_request;
73#ifdef STARPU_USE_MPI_MASTER_SLAVE
74LIST_TYPE(_starpu_mpi_ms_event_request,
78struct _starpu_mpi_ms_async_event
81 struct _starpu_mpi_ms_event_request_list * requests;
92 struct _starpu_disk_backend_event_list * requests;
97 starpu_data_handle_t handle;
108 starpu_pthread_queue_t *queue;
111#ifdef STARPU_USE_CUDA
112 cudaEvent_t cuda_event;
114#ifdef STARPU_USE_OPENCL
115 cl_event opencl_event;
117#ifdef STARPU_USE_MPI_MASTER_SLAVE
118 struct _starpu_mpi_ms_async_event mpi_ms_event;
132 struct _starpu_mp_node *polling_node_receiver;
135 volatile int starpu_mp_common_finished_receiver;
138void _starpu_wake_all_blocked_workers_on_node(
unsigned nodeid);
140int _starpu_driver_copy_data_1_to_1(starpu_data_handle_t handle,
144 struct _starpu_data_request *req,
Definition coherency.h:45
volatile int starpu_mp_common_finished_sender
Definition copy_driver.h:134
_starpu_is_prefetch
Definition copy_driver.h:51
@ STARPU_PREFETCH
Definition copy_driver.h:55
@ STARPU_IDLEFETCH
Definition copy_driver.h:57
@ STARPU_FETCH
Definition copy_driver.h:53
struct _starpu_mp_node * polling_node_sender
Definition copy_driver.h:131
Definition copy_driver.h:127
Definition copy_driver.h:90
Definition copy_driver.h:85
Definition copy_driver.h:66
Definition copy_driver.h:103