17 #ifndef __NODE_OPS_H__
18 #define __NODE_OPS_H__
23 #include <common/config.h>
26 typedef int (*copy_interface_func_t)(starpu_data_handle_t handle,
void *src_interface,
unsigned src_node,
27 void *dst_interface,
unsigned dst_node,
28 struct _starpu_data_request *req);
30 typedef int (*copy_data_t)(uintptr_t src_ptr,
size_t src_offset,
unsigned src_node,
31 uintptr_t dst_ptr,
size_t dst_offset,
unsigned dst_node,
34 typedef int (*copy2d_data_t)(uintptr_t src_ptr,
size_t src_offset,
unsigned src_node,
35 uintptr_t dst_ptr,
size_t dst_offset,
unsigned dst_node,
37 size_t numblocks,
size_t ld_src,
size_t ld_dst,
40 typedef int (*copy3d_data_t)(uintptr_t src_ptr,
size_t src_offset,
unsigned src_node,
41 uintptr_t dst_ptr,
size_t dst_offset,
unsigned dst_node,
43 size_t numblocks_1,
size_t ld1_src,
size_t ld1_dst,
44 size_t numblocks_2,
size_t ld2_src,
size_t ld2_dst,
49 copy_interface_func_t copy_interface_to[STARPU_MPI_MS_RAM+1];
50 copy_data_t copy_data_to[STARPU_MPI_MS_RAM+1];
51 copy2d_data_t copy2d_data_to[STARPU_MPI_MS_RAM+1];
52 copy3d_data_t copy3d_data_to[STARPU_MPI_MS_RAM+1];
55 int (*is_direct_access_supported)(
unsigned node,
unsigned handling_node);
56 uintptr_t (*malloc_on_node)(
unsigned dst_node,
size_t size,
int flags);
57 void (*free_on_node)(
unsigned dst_node, uintptr_t addr,
size_t size,
int flags);
61 const char* _starpu_node_get_prefix(
enum starpu_node_kind kind);
Definition: copy_driver.h:127
Definition: node_ops.h:48