![]() |
Arax -8d09c51940345c86062e8ef2427c705ae66e5926
A Runtime Framework for Decoupling Applications from Heterogeneous Accelerators
|
#include <arax_pipe.h>
Data Fields | |
char | sha [ARAX_PIPE_SHA_SIZE+1] |
void * | self |
uint64_t | shm_size |
uint64_t | processes |
utils_spinlock | proc_lock |
uint64_t | proc_map [ARAX_PROC_MAP_SIZE] |
uint64_t | last_uid |
arax_object_repo_s | objs |
async_meta_s | async |
arax_throttle_s | throttle |
int | cntrl_ready |
async_condition_s | cntrl_ready_cond |
async_condition_s | orphan_cond |
utils_list_s | orphan_vacs |
utils_kv_s | ass_kv |
utils_kv_s | metrics_kv |
arch_alloc_s | allocator |
Shared Memory segment layout
Definition at line 24 of file arax_pipe.h.
arch_alloc_s allocator |
Allocator for this shared memory
Definition at line 46 of file arax_pipe.h.
Referenced by arax_object_ref_dec(), arax_object_ref_dec_pre_locked(), arax_object_register(), arax_object_rename(), arax_pipe_exit(), and arax_pipe_init().
utils_kv_s ass_kv |
Assignees KV, <assigne_id,task_count>
Definition at line 43 of file arax_pipe.h.
Referenced by arax_pipe_init().
async_meta_s async |
Async related metadata
Definition at line 34 of file arax_pipe.h.
Referenced by arax_accel_init(), arax_pipe_exit(), and arax_pipe_init().
int cntrl_ready |
Flag if != 0 means, controller is fully initialized
Definition at line 37 of file arax_pipe.h.
async_condition_s cntrl_ready_cond |
Condition for cntrl_ready
Definition at line 38 of file arax_pipe.h.
Referenced by arax_pipe_init().
uint64_t last_uid |
Last instance UID
Definition at line 32 of file arax_pipe.h.
utils_kv_s metrics_kv |
arax_object_repo_s objs |
Arax object repository
Definition at line 33 of file arax_pipe.h.
Referenced by arax_accel_init(), arax_pipe_delete_accel(), arax_pipe_exit(), arax_pipe_find_accel(), arax_pipe_find_proc(), arax_pipe_init(), and arax_vaccel_init().
async_condition_s orphan_cond |
Notify orphan changes
Definition at line 40 of file arax_pipe.h.
Referenced by arax_pipe_add_orphan_vaccel(), arax_pipe_get_orphan_vaccel(), arax_pipe_init(), arax_pipe_orphan_stop(), and arax_pipe_remove_orphan_vaccel().
utils_list_s orphan_vacs |
Unassigned virtual accels
Definition at line 41 of file arax_pipe.h.
Referenced by arax_pipe_add_orphan_vaccel(), arax_pipe_get_orphan_vaccel(), arax_pipe_have_orphan_vaccels(), arax_pipe_init(), and arax_pipe_remove_orphan_vaccel().
utils_spinlock proc_lock |
Protect the proc_map
Definition at line 30 of file arax_pipe.h.
Referenced by arax_pipe_have_to_mmap(), and arax_pipe_mark_unmap().
uint64_t proc_map[ARAX_PROC_MAP_SIZE] |
Array contains PIDs of all mmaped processes
Definition at line 31 of file arax_pipe.h.
Referenced by arax_pipe_have_to_mmap(), and arax_pipe_mark_unmap().
uint64_t processes |
Process counter - Processes using this
Definition at line 29 of file arax_pipe.h.
Referenced by arax_pipe_add_process(), and arax_pipe_del_process().
void* self |
Pointer to myself
Definition at line 27 of file arax_pipe.h.
Referenced by arax_pipe_mmap_address().
char sha[ARAX_PIPE_SHA_SIZE+1] |
Git revision 48+1 for \0
Definition at line 26 of file arax_pipe.h.
Referenced by arax_pipe_get_revision(), and arax_pipe_init().
uint64_t shm_size |
Size in bytes of shared region
Definition at line 28 of file arax_pipe.h.
Referenced by arax_pipe_init(), and arax_ptr_valid().
arax_throttle_s throttle |
Definition at line 35 of file arax_pipe.h.
Referenced by arax_pipe_get_available_size(), arax_pipe_get_total_size(), and arax_pipe_init().