ROSE
0.9.6a
|
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
#include <assert.h>
#include <sys/time.h>
Go to the source code of this file.
Classes | |
struct | XOMP_accelerator_thread |
struct | XOMP_mapped_variable |
struct | DDE_data |
Macros | |
#define | MAX_OUTLINED_FUNC_PARAMETER_COUNT 256 |
#define | XOMP_REDUCTION_PLUS 6 |
#define | XOMP_REDUCTION_MINUS 7 |
#define | XOMP_REDUCTION_MUL 8 |
#define | XOMP_REDUCTION_BITAND 9 |
#define | XOMP_REDUCTION_BITOR 10 |
#define | XOMP_REDUCTION_BITXOR 11 |
#define | XOMP_REDUCTION_LOGAND 12 |
#define | XOMP_REDUCTION_LOGOR 13 |
#define | XOMP_BEYOND_BLOCK_REDUCTION_DECL(dtype) dtype xomp_beyond_block_reduction_##dtype(dtype * per_block_results, int numBlocks, int reduction_op); |
#define | XOMP_MAX_MAPPED_VARS 256 |
Functions | |
double | xomp_time_stamp (void) |
void | XOMP_init (int argc, char **argv) |
void | xomp_init (void) |
void | XOMP_terminate (int exitcode) |
void | XOMP_parallel_start (void(*func)(void *), void *data, unsigned ifClauseValue, unsigned numThreadsSpecified, char *file_name, int line_no) |
void | XOMP_parallel_end (char *file_name, int line_no) |
int | XOMP_sections_init_next (int section_count) |
int | XOMP_sections_next (void) |
void | XOMP_sections_end (void) |
void | XOMP_sections_end_nowait (void) |
void | XOMP_task (void(*)(void *), void *, void(*)(void *, void *), long, long, bool, unsigned) |
void | XOMP_taskwait (void) |
void | XOMP_loop_default (int lower, int upper, int stride, long *n_lower, long *n_upper) |
void | XOMP_loop_static_init (int lower, int upper, int stride, int chunk_size) |
Optional init functions, mostly used for working with omni RTL. More... | |
void | XOMP_loop_dynamic_init (int lower, int upper, int stride, int chunk_size) |
void | XOMP_loop_guided_init (int lower, int upper, int stride, int chunk_size) |
void | XOMP_loop_runtime_init (int lower, int upper, int stride) |
void | XOMP_loop_ordered_static_init (int lower, int upper, int stride, int chunk_size) |
void | XOMP_loop_ordered_dynamic_init (int lower, int upper, int stride, int chunk_size) |
void | XOMP_loop_ordered_guided_init (int lower, int upper, int stride, int chunk_size) |
void | XOMP_loop_ordered_runtime_init (int lower, int upper, int stride) |
bool | XOMP_loop_static_start (long, long, long, long, long *, long *) |
bool | XOMP_loop_dynamic_start (long, long, long, long, long *, long *) |
bool | XOMP_loop_guided_start (long, long, long, long, long *, long *) |
bool | XOMP_loop_runtime_start (long, long, long, long *, long *) |
bool | XOMP_loop_ordered_static_start (long, long, long, long, long *, long *) |
bool | XOMP_loop_ordered_dynamic_start (long, long, long, long, long *, long *) |
bool | XOMP_loop_ordered_guided_start (long, long, long, long, long *, long *) |
bool | XOMP_loop_ordered_runtime_start (long, long, long, long *, long *) |
bool | XOMP_loop_static_next (long *, long *) |
bool | XOMP_loop_dynamic_next (long *, long *) |
bool | XOMP_loop_guided_next (long *, long *) |
bool | XOMP_loop_runtime_next (long *, long *) |
bool | XOMP_loop_ordered_static_next (long *, long *) |
bool | XOMP_loop_ordered_dynamic_next (long *, long *) |
bool | XOMP_loop_ordered_guided_next (long *, long *) |
bool | XOMP_loop_ordered_runtime_next (long *, long *) |
void | XOMP_barrier (void) |
void | XOMP_critical_start (void **data) |
void | XOMP_critical_end (void **data) |
bool | XOMP_single (void) |
bool | XOMP_master (void) |
void | XOMP_atomic_start (void) |
void | XOMP_atomic_end (void) |
void | XOMP_loop_end (void) |
void | XOMP_loop_end_nowait (void) |
void | XOMP_flush_all (void) |
void | XOMP_flush_one (char *startAddress, int nbyte) |
void | XOMP_ordered_start (void) |
void | XOMP_ordered_end (void) |
size_t | xomp_get_maxThreadsPerBlock () |
size_t | xomp_get_max1DBlock (size_t ss) |
size_t | xomp_get_max_threads_per_dimesion_2D () |
size_t | xomp_get_maxSegmentsPerDimensionOf2DBlock (size_t dimension_size) |
void * | xomp_deviceMalloc (size_t size) |
void * | xomp_hostMalloc (size_t size) |
void * | xomp_memcpyHostToDevice (void *dest, const void *src, size_t n_n) |
void * | xomp_memcpyDeviceToHost (void *dest, const void *src, size_t n_n) |
void * | xomp_memcpyDynamicHostToDevice (void *dest, const void *src, int *dimensions, size_t dimension_size, size_t element_size, size_t *bytes_copied) |
void * | xomp_memcpyDynamicDeviceToHost (void *dest, int *dimensions, size_t dimension_size, const void *src, size_t element_size, size_t *bytes_copied) |
void * | xomp_memcpyDeviceToDevice (void *dest, const void *src, size_t n_n) |
void * | xomp_memcpyHostToHost (void *dest, const void *src, size_t n_n) |
bool | xomp_freeDevice (void *devPtr) |
bool | xomp_freeHost (void *hostPtr) |
void * | xomp_mallocArray (int *dimensions, size_t dimension_num, size_t esize) |
void | xomp_freeArrayPointer (void *array, int *dimensions, size_t dimension_num) |
void | copy_mapped_variable (struct XOMP_mapped_variable *desc, struct XOMP_mapped_variable *src) |
A helper function to copy a mapped variable from src to desc. More... | |
void | xomp_deviceDataEnvironmentEnter () |
void * | xomp_deviceDataEnvironmentGetInheritedVariable (void *original_variable_address, int size) |
void | xomp_deviceDataEnvironmentAddVariable (void *var_addr, int var_size, void *dev_addr, bool copy_back) |
Add a newly mapped variable into the current DDE's new variable list. More... | |
void | xomp_deviceDataEnvironmentExit () |
Variables | |
int | env_region_instr_val |
struct DDE_data * | DDE_head |
struct DDE_data * | DDE_tail |
#define XOMP_BEYOND_BLOCK_REDUCTION_DECL | ( | dtype) | dtype xomp_beyond_block_reduction_##dtype(dtype * per_block_results, int numBlocks, int reduction_op); |
double xomp_time_stamp | ( | void | ) |
void XOMP_init | ( | int | argc, |
char ** | argv | ||
) |
void xomp_init | ( | void | ) |
void XOMP_terminate | ( | int | exitcode) |
void XOMP_parallel_start | ( | void(*)(void *) | func, |
void * | data, | ||
unsigned | ifClauseValue, | ||
unsigned | numThreadsSpecified, | ||
char * | file_name, | ||
int | line_no | ||
) |
void XOMP_parallel_end | ( | char * | file_name, |
int | line_no | ||
) |
int XOMP_sections_init_next | ( | int | section_count) |
int XOMP_sections_next | ( | void | ) |
void XOMP_sections_end | ( | void | ) |
void XOMP_sections_end_nowait | ( | void | ) |
void XOMP_task | ( | void(*)(void *) | , |
void * | , | ||
void(*)(void *, void *) | , | ||
long | , | ||
long | , | ||
bool | , | ||
unsigned | |||
) |
void XOMP_taskwait | ( | void | ) |
void XOMP_loop_default | ( | int | lower, |
int | upper, | ||
int | stride, | ||
long * | n_lower, | ||
long * | n_upper | ||
) |
void XOMP_loop_static_init | ( | int | lower, |
int | upper, | ||
int | stride, | ||
int | chunk_size | ||
) |
Optional init functions, mostly used for working with omni RTL.
void XOMP_loop_dynamic_init | ( | int | lower, |
int | upper, | ||
int | stride, | ||
int | chunk_size | ||
) |
void XOMP_loop_guided_init | ( | int | lower, |
int | upper, | ||
int | stride, | ||
int | chunk_size | ||
) |
void XOMP_loop_runtime_init | ( | int | lower, |
int | upper, | ||
int | stride | ||
) |
void XOMP_loop_ordered_static_init | ( | int | lower, |
int | upper, | ||
int | stride, | ||
int | chunk_size | ||
) |
void XOMP_loop_ordered_dynamic_init | ( | int | lower, |
int | upper, | ||
int | stride, | ||
int | chunk_size | ||
) |
void XOMP_loop_ordered_guided_init | ( | int | lower, |
int | upper, | ||
int | stride, | ||
int | chunk_size | ||
) |
void XOMP_loop_ordered_runtime_init | ( | int | lower, |
int | upper, | ||
int | stride | ||
) |
bool XOMP_loop_static_start | ( | long | , |
long | , | ||
long | , | ||
long | , | ||
long * | , | ||
long * | |||
) |
bool XOMP_loop_dynamic_start | ( | long | , |
long | , | ||
long | , | ||
long | , | ||
long * | , | ||
long * | |||
) |
bool XOMP_loop_guided_start | ( | long | , |
long | , | ||
long | , | ||
long | , | ||
long * | , | ||
long * | |||
) |
bool XOMP_loop_runtime_start | ( | long | , |
long | , | ||
long | , | ||
long * | , | ||
long * | |||
) |
bool XOMP_loop_ordered_static_start | ( | long | , |
long | , | ||
long | , | ||
long | , | ||
long * | , | ||
long * | |||
) |
bool XOMP_loop_ordered_dynamic_start | ( | long | , |
long | , | ||
long | , | ||
long | , | ||
long * | , | ||
long * | |||
) |
bool XOMP_loop_ordered_guided_start | ( | long | , |
long | , | ||
long | , | ||
long | , | ||
long * | , | ||
long * | |||
) |
bool XOMP_loop_ordered_runtime_start | ( | long | , |
long | , | ||
long | , | ||
long * | , | ||
long * | |||
) |
bool XOMP_loop_static_next | ( | long * | , |
long * | |||
) |
bool XOMP_loop_dynamic_next | ( | long * | , |
long * | |||
) |
bool XOMP_loop_guided_next | ( | long * | , |
long * | |||
) |
bool XOMP_loop_runtime_next | ( | long * | , |
long * | |||
) |
bool XOMP_loop_ordered_static_next | ( | long * | , |
long * | |||
) |
bool XOMP_loop_ordered_dynamic_next | ( | long * | , |
long * | |||
) |
bool XOMP_loop_ordered_guided_next | ( | long * | , |
long * | |||
) |
bool XOMP_loop_ordered_runtime_next | ( | long * | , |
long * | |||
) |
void XOMP_barrier | ( | void | ) |
void XOMP_critical_start | ( | void ** | data) |
void XOMP_critical_end | ( | void ** | data) |
bool XOMP_single | ( | void | ) |
bool XOMP_master | ( | void | ) |
void XOMP_atomic_start | ( | void | ) |
void XOMP_atomic_end | ( | void | ) |
void XOMP_loop_end | ( | void | ) |
void XOMP_loop_end_nowait | ( | void | ) |
void XOMP_flush_all | ( | void | ) |
void XOMP_flush_one | ( | char * | startAddress, |
int | nbyte | ||
) |
void XOMP_ordered_start | ( | void | ) |
void XOMP_ordered_end | ( | void | ) |
size_t xomp_get_maxThreadsPerBlock | ( | ) |
size_t xomp_get_max1DBlock | ( | size_t | ss) |
size_t xomp_get_max_threads_per_dimesion_2D | ( | ) |
size_t xomp_get_maxSegmentsPerDimensionOf2DBlock | ( | size_t | dimension_size) |
void* xomp_deviceMalloc | ( | size_t | size) |
void* xomp_hostMalloc | ( | size_t | size) |
void* xomp_memcpyHostToDevice | ( | void * | dest, |
const void * | src, | ||
size_t | n_n | ||
) |
void* xomp_memcpyDeviceToHost | ( | void * | dest, |
const void * | src, | ||
size_t | n_n | ||
) |
void* xomp_memcpyDynamicHostToDevice | ( | void * | dest, |
const void * | src, | ||
int * | dimensions, | ||
size_t | dimension_size, | ||
size_t | element_size, | ||
size_t * | bytes_copied | ||
) |
void* xomp_memcpyDynamicDeviceToHost | ( | void * | dest, |
int * | dimensions, | ||
size_t | dimension_size, | ||
const void * | src, | ||
size_t | element_size, | ||
size_t * | bytes_copied | ||
) |
void* xomp_memcpyDeviceToDevice | ( | void * | dest, |
const void * | src, | ||
size_t | n_n | ||
) |
void* xomp_memcpyHostToHost | ( | void * | dest, |
const void * | src, | ||
size_t | n_n | ||
) |
bool xomp_freeDevice | ( | void * | devPtr) |
bool xomp_freeHost | ( | void * | hostPtr) |
void* xomp_mallocArray | ( | int * | dimensions, |
size_t | dimension_num, | ||
size_t | esize | ||
) |
void xomp_freeArrayPointer | ( | void * | array, |
int * | dimensions, | ||
size_t | dimension_num | ||
) |
void copy_mapped_variable | ( | struct XOMP_mapped_variable * | desc, |
struct XOMP_mapped_variable * | src | ||
) |
A helper function to copy a mapped variable from src to desc.
void xomp_deviceDataEnvironmentEnter | ( | ) |
void* xomp_deviceDataEnvironmentGetInheritedVariable | ( | void * | original_variable_address, |
int | size | ||
) |
void xomp_deviceDataEnvironmentAddVariable | ( | void * | var_addr, |
int | var_size, | ||
void * | dev_addr, | ||
bool | copy_back | ||
) |
Add a newly mapped variable into the current DDE's new variable list.
void xomp_deviceDataEnvironmentExit | ( | ) |
int env_region_instr_val |
struct DDE_data* DDE_head |
struct DDE_data* DDE_tail |