18 #ifndef __STARPU_DISK_H__ 19 #define __STARPU_DISK_H__ 21 #include <sys/types.h> 38 void * (*plug) (
void *parameter, starpu_ssize_t size);
53 void * (*alloc) (
void *base,
size_t size);
58 void (*
free) (
void *base,
void *obj,
size_t size);
63 void * (*open) (
void *base,
void *pos,
size_t size);
67 void (*
close) (
void *base,
void *obj,
size_t size);
73 int (*
read) (
void *base,
void *obj,
void *buf, off_t offset,
size_t size);
77 int (*
write) (
void *base,
void *obj,
const void *buf, off_t offset,
size_t size);
82 int (*
full_read) (
void * base,
void * obj,
void ** ptr,
size_t * size,
unsigned dst_node);
87 int (*
full_write) (
void * base,
void * obj,
void * ptr,
size_t size);
94 void * (*async_write) (
void *base,
void *obj,
void *buf, off_t offset,
size_t size);
100 void * (*async_read) (
void *base,
void *obj,
void *buf, off_t offset,
size_t size);
105 void * (*async_full_read) (
void * base,
void * obj,
void ** ptr,
size_t * size,
unsigned dst_node);
110 void * (*async_full_write) (
void * base,
void * obj,
void * ptr,
size_t size);
118 void * (*copy) (
void *base_src,
void* obj_src, off_t offset_src,
void *base_dst,
void* obj_dst, off_t offset_dst,
size_t size);
210 #define STARPU_DISK_SIZE_MIN (16*1024*1024) int starpu_disk_swap_node
int(* full_write)(void *base, void *obj, void *ptr, size_t size)
Definition: starpu_disk.h:87
void * starpu_disk_open(unsigned node, void *pos, size_t size)
int(* full_read)(void *base, void *obj, void **ptr, size_t *size, unsigned dst_node)
Definition: starpu_disk.h:82
struct starpu_disk_ops starpu_disk_stdio_ops
int(* read)(void *base, void *obj, void *buf, off_t offset, size_t size)
Definition: starpu_disk.h:73
struct starpu_disk_ops starpu_disk_unistd_o_direct_ops
void starpu_disk_close(unsigned node, void *obj, size_t size)
int starpu_disk_register(struct starpu_disk_ops *func, void *parameter, starpu_ssize_t size)
void(* free)(void *base, void *obj, size_t size)
Definition: starpu_disk.h:58
void(* close)(void *base, void *obj, size_t size)
Definition: starpu_disk.h:67
Definition: starpu_disk.h:32
struct starpu_disk_ops starpu_disk_hdf5_ops
int(* test_request)(void *async_channel)
Definition: starpu_disk.h:129
struct starpu_disk_ops starpu_disk_unistd_ops
int(* write)(void *base, void *obj, const void *buf, off_t offset, size_t size)
Definition: starpu_disk.h:77
void(* wait_request)(void *async_channel)
Definition: starpu_disk.h:124
struct starpu_disk_ops starpu_disk_leveldb_ops
void(* free_request)(void *async_channel)
Definition: starpu_disk.h:134
int(* bandwidth)(unsigned node, void *base)
Definition: starpu_disk.h:48
void(* unplug)(void *base)
Definition: starpu_disk.h:42