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)
void(* close)(void *base, void *obj, size_t size)
Definition: starpu_disk.h:67
int(* read)(void *base, void *obj, void *buf, off_t offset, size_t size)
Definition: starpu_disk.h:73
void(* free)(void *base, void *obj, size_t size)
Definition: starpu_disk.h:58
int(* full_write)(void *base, void *obj, void *ptr, size_t size)
Definition: starpu_disk.h:87
int(* test_request)(void *async_channel)
Definition: starpu_disk.h:129
int(* bandwidth)(unsigned node, void *base)
Definition: starpu_disk.h:48
int(* full_read)(void *base, void *obj, void **ptr, size_t *size, unsigned dst_node)
Definition: starpu_disk.h:82
void(* unplug)(void *base)
Definition: starpu_disk.h:42
void(* free_request)(void *async_channel)
Definition: starpu_disk.h:134
void(* wait_request)(void *async_channel)
Definition: starpu_disk.h:124
int(* write)(void *base, void *obj, const void *buf, off_t offset, size_t size)
Definition: starpu_disk.h:77
struct starpu_disk_ops starpu_disk_stdio_ops
struct starpu_disk_ops starpu_disk_unistd_o_direct_ops
void * starpu_disk_open(unsigned node, void *pos, size_t size)
void starpu_disk_close(unsigned node, void *obj, size_t size)
struct starpu_disk_ops starpu_disk_unistd_ops
int starpu_disk_swap_node
int starpu_disk_register(struct starpu_disk_ops *func, void *parameter, starpu_ssize_t size)
struct starpu_disk_ops starpu_disk_leveldb_ops
struct starpu_disk_ops starpu_disk_hdf5_ops
Definition: starpu_disk.h:33