18 #ifndef __STARPU_DISK_H__
19 #define __STARPU_DISK_H__
21 #include <sys/types.h>
27 void * (*plug) (
void *parameter, starpu_ssize_t size);
32 void * (*alloc) (
void *base,
size_t size);
33 void (*
free) (
void *base,
void *obj,
size_t size);
35 void * (*open) (
void *base,
void *pos,
size_t size);
36 void (*
close) (
void *base,
void *obj,
size_t size);
38 int (*
read) (
void *base,
void *obj,
void *buf, off_t offset,
size_t size);
39 int (*
write) (
void *base,
void *obj,
const void *buf, off_t offset,
size_t size);
41 int (*
full_read) (
void * base,
void * obj,
void ** ptr,
size_t * size);
42 int (*
full_write) (
void * base,
void * obj,
void * ptr,
size_t size);
44 void * (*async_write) (
void *base,
void *obj,
void *buf, off_t offset,
size_t size);
45 void * (*async_read) (
void *base,
void *obj,
void *buf, off_t offset,
size_t size);
47 void * (*async_full_read) (
void * base,
void * obj,
void ** ptr,
size_t * size);
48 void * (*async_full_write) (
void * base,
void * obj,
void * ptr,
size_t size);
50 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);
68 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:33
int(* read)(void *base, void *obj, void *buf, off_t offset, size_t size)
Definition: starpu_disk.h:38
void(* close)(void *base, void *obj, size_t size)
Definition: starpu_disk.h:36
void starpu_disk_close(unsigned node, void *obj, size_t size)
int(* bandwidth)(unsigned node)
Definition: starpu_disk.h:30
Definition: starpu_disk.h:25
int(* write)(void *base, void *obj, const void *buf, off_t offset, size_t size)
Definition: starpu_disk.h:39
struct starpu_disk_ops starpu_disk_leveldb_ops
void(* unplug)(void *base)
Definition: starpu_disk.h:28
struct starpu_disk_ops starpu_disk_unistd_o_direct_ops
void(* free_request)(void *async_channel)
Definition: starpu_disk.h:53
int(* full_write)(void *base, void *obj, void *ptr, size_t size)
Definition: starpu_disk.h:42
int(* test_request)(void *async_channel)
Definition: starpu_disk.h:52
struct starpu_disk_ops starpu_disk_unistd_ops
int(* full_read)(void *base, void *obj, void **ptr, size_t *size)
Definition: starpu_disk.h:41
void(* wait_request)(void *async_channel)
Definition: starpu_disk.h:51
struct starpu_disk_ops starpu_disk_stdio_ops
void * starpu_disk_open(unsigned node, void *pos, size_t size)