18#ifndef __DISK_UNISTD_GLOBAL_H__
19#define __DISK_UNISTD_GLOBAL_H__
25#include <sys/syscall.h>
32#define STARPU_UNISTD_USE_COPY 1
33#if !defined(HAVE_COPY_FILE_RANGE) && !defined(__NR_copy_file_range)
34#undef STARPU_UNISTD_USE_COPY
43 starpu_pthread_mutex_t mutex;
47void starpu_unistd_global_free (
void *base,
void *obj,
size_t size);
49void starpu_unistd_global_close (
void *base,
void *obj,
size_t size);
50int starpu_unistd_global_read (
void *base,
void *obj,
void *buf, off_t offset,
size_t size);
51int starpu_unistd_global_write (
void *base,
void *obj,
const void *buf, off_t offset,
size_t size);
52void * starpu_unistd_global_plug (
void *parameter, starpu_ssize_t size);
53void starpu_unistd_global_unplug (
void *base);
54int _starpu_get_unistd_global_bandwidth_between_disk_and_main_ram(
unsigned node,
void *base);
55void* starpu_unistd_global_async_read (
void *base,
void *obj,
void *buf, off_t offset,
size_t size);
56void* starpu_unistd_global_async_write (
void *base,
void *obj,
void *buf, off_t offset,
size_t size);
57void * starpu_unistd_global_async_full_write (
void * base,
void * obj,
void * ptr,
size_t size);
58void * starpu_unistd_global_async_full_read (
void * base,
void * obj,
void ** ptr,
size_t * size,
unsigned dst_node);
59void starpu_unistd_global_wait_request(
void * async_channel);
60int starpu_unistd_global_test_request(
void * async_channel);
61void starpu_unistd_global_free_request(
void * async_channel);
62int starpu_unistd_global_full_read(
void *base,
void * obj,
void ** ptr,
size_t * size,
unsigned dst_node);
63int starpu_unistd_global_full_write (
void * base,
void * obj,
void * ptr,
size_t size);
64#ifdef STARPU_UNISTD_USE_COPY
65void * starpu_unistd_global_copy(
void *base_src,
void* obj_src, off_t offset_src,
void *base_dst,
void* obj_dst, off_t offset_dst,
size_t size);
Definition: disk_unistd_global.h:38