![]() |
Arax -8d09c51940345c86062e8ef2427c705ae66e5926
A Runtime Framework for Decoupling Applications from Heterogeneous Accelerators
|
#include <arax.h>
#include <arax_pipe.h>
#include "core/arax_data.h"
#include "utils/config.h"
#include "utils/system.h"
#include "utils/timer.h"
#include <sys/mman.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
Go to the source code of this file.
Macros | |
#define | arax_pipe_get() |
#define | GO_FAIL(MSG) |
Variables | ||
const char * | arax_version = "VT_VERSION " ARAX_GIT_REV " - " ARAX_GIT_BRANCH | |
struct { | ||
arax_pipe_s * vpipe | ||
char shm_file [1024] | ||
uint64_t threads | ||
uint64_t instance_uid | ||
uint64_t task_uid | ||
volatile uint64_t initialized | ||
size_t initialy_available | ||
char * config_path | ||
int fd | ||
} | arax_state | |
#define arax_pipe_get | ( | ) |
Definition at line 29 of file impl.c.
Referenced by arax_accel_acquire_phys(), arax_accel_acquire_type(), arax_accel_list(), ARAX_BUFFER(), arax_proc_get(), arax_proc_register(), and arax_task_issue().
#define GO_FAIL | ( | MSG | ) |
Definition at line 31 of file impl.c.
Referenced by _arax_init().
arax_pipe_s * _arax_init | ( | int | wait_controller | ) |
Definition at line 33 of file impl.c.
References arax_pipe_get_available_size(), arax_pipe_have_to_mmap(), arax_pipe_init(), arax_pipe_mmap_address(), arax_state, async_condition_lock(), async_condition_unlock(), async_condition_wait(), async_meta_init_always(), CONFIG_FILE, GO_FAIL, system_mmap(), system_process_id(), system_total_memory(), utils_config_alloc_path(), utils_config_get_bool(), utils_config_get_size(), utils_config_get_source(), and utils_config_get_str().
Referenced by arax_controller_init_start(), and arax_init().
void arax_accel_list_free_pre_locked | ( | arax_accel ** | accels | ) |
Definition at line 294 of file impl.c.
References arax_object_ref_dec_pre_locked().
Referenced by arax_accel_list().
void arax_controller_init_done | ( | ) |
Should only be called by the controller process, after it is ready to recieve tasks. See arax_controller_init_start()
.
Definition at line 143 of file impl.c.
References arax_state, and async_condition_notify().
arax_pipe_s * arax_controller_init_start | ( | ) |
Similar to arax_init()
.
As this should be called only by the controller, prior to any other Arax function.
After the controller process is initialized and ready to recieve tasks arax_controller_init_done
should be called.
Definition at line 138 of file impl.c.
References _arax_init().
uint64_t arax_instance_uid | ( | ) |
Definition at line 151 of file impl.c.
References arax_state.
Definition at line 422 of file impl.c.
References ARAX_TYPE_DATA, arax_data_s::obj, and arax_object_s::type.
Referenced by arax_task_issue().
struct { ... } arax_state |
Referenced by _arax_init(), arax_controller_init_done(), arax_exit(), and arax_instance_uid().
const char* arax_version = "VT_VERSION " ARAX_GIT_REV " - " ARAX_GIT_BRANCH |
char* config_path |
Definition at line 24 of file impl.c.
Referenced by arax_clean().
int fd |
Definition at line 25 of file impl.c.
Referenced by async_meta_exit(), init_mparams(), and system_mmap().
char shm_file[1024] |
Definition at line 18 of file impl.c.
Referenced by arax_clean(), and async_meta_init_always().
arax_pipe_s* vpipe |
Definition at line 17 of file impl.c.
Referenced by arax_accel_acquire_phys(), arax_accel_acquire_type(), arax_accel_list(), ARAX_BUFFER(), arax_data_init(), arax_data_init_aligned(), arax_data_ref_offset(), arax_data_shm_sync(), arax_plot_register_metric(), arax_proc_get(), arax_proc_register(), arax_task_alloc(), and arax_task_issue().