libxmp/libxmpf in Omni Compiler
1.3.4
|
#include <assert.h>
#include "xmpco_internal.h"
#include "_xmpco_putget.h"
|
void | _XMPCO_coarrayInit_put () |
|
void | XMPCO_PUT_scalarStmt (CoarrayInfo_t *descPtr, char *baseAddr, int element, int coindex, char *rhs, SyncMode sync_mode) |
|
void | XMPCO_PUT_arrayStmt (CoarrayInfo_t *descPtr, char *baseAddr, int element, int coindex, char *rhsAddr, int rank, int skip[], int skip_rhs[], int count[], SyncMode sync_mode) |
|
void | XMPCO_PUT_spread (CoarrayInfo_t *descPtr, char *baseAddr, int element, int coindex, char *rhs, int rank, int skip[], int count[], SyncMode sync_mode) |
|
void | xmpf_coarray_put_err_len_ (void **descPtr, int *len_mold, int *len_src) |
|
void | xmpf_coarray_put_err_size_ (void **descPtr, int *dim, int *size_mold, int *size_src) |
|
◆ SCHEME_BufferPut
#define SCHEME_BufferPut 11 |
◆ SCHEME_DirectPut
#define SCHEME_DirectPut 10 |
◆ SCHEME_ExtraBufferPut
#define SCHEME_ExtraBufferPut 13 |
◆ SCHEME_ExtraDirectPut
#define SCHEME_ExtraDirectPut 12 |
◆ _XMPCO_coarrayInit_put()
void _XMPCO_coarrayInit_put |
( |
| ) |
|
◆ XMPCO_PUT_arrayStmt()
void XMPCO_PUT_arrayStmt |
( |
CoarrayInfo_t * |
descPtr, |
|
|
char * |
baseAddr, |
|
|
int |
element, |
|
|
int |
coindex, |
|
|
char * |
rhsAddr, |
|
|
int |
rank, |
|
|
int |
skip[], |
|
|
int |
skip_rhs[], |
|
|
int |
count[], |
|
|
SyncMode |
sync_mode |
|
) |
| |
197 _XMPCO_fatal(
"violation of boundary writing to a coindexed variable\n"
198 " xmpf_coarray_put_array_, " __FILE__);
221 scheme = _select_scheme_put_array(avail_DMA);
229 _putCoarray_DMA(descPtr, baseAddr, coindex0, rhsAddr,
230 element, rank, skip, skip_rhs, count,
231 descDMA, offsetDMA, nameDMA, sync_mode);
236 _putCoarray_buffer(descPtr, baseAddr, coindex0, rhsAddr,
237 element, rank, skip, skip_rhs, count, sync_mode);
◆ XMPCO_PUT_scalarStmt()
void XMPCO_PUT_scalarStmt |
( |
CoarrayInfo_t * |
descPtr, |
|
|
char * |
baseAddr, |
|
|
int |
element, |
|
|
int |
coindex, |
|
|
char * |
rhs, |
|
|
SyncMode |
sync_mode |
|
) |
| |
141 int scheme = _select_scheme_put_scalar(element, avail_DMA);
153 _putVector_DMA(descPtr, baseAddr, element, coindex0,
154 descDMA, offsetDMA, nameDMA, sync_mode);
163 _putVector_DMA(descPtr, baseAddr, elementRU, coindex0,
164 descDMA, offsetDMA, nameDMA, sync_mode);
170 _putVector_buffer(descPtr, baseAddr, element, coindex0,
171 rhs, element, sync_mode);
179 _putVector_buffer(descPtr, baseAddr, elementRU, coindex0,
180 rhs, element, sync_mode);
◆ XMPCO_PUT_spread()
void XMPCO_PUT_spread |
( |
CoarrayInfo_t * |
descPtr, |
|
|
char * |
baseAddr, |
|
|
int |
element, |
|
|
int |
coindex, |
|
|
char * |
rhs, |
|
|
int |
rank, |
|
|
int |
skip[], |
|
|
int |
count[], |
|
|
SyncMode |
sync_mode |
|
) |
| |
253 _XMPCO_fatal(
"violation of boundary writing a scalar to a coindexed variable\n"
254 " xmpf_coarray_put_spread_, " __FILE__);
268 _spreadCoarray(descPtr, baseAddr, coindex0, rhs,
269 element, rank, skip, count, element, sync_mode);
◆ xmpf_coarray_put_err_len_()
void xmpf_coarray_put_err_len_ |
( |
void ** |
descPtr, |
|
|
int * |
len_mold, |
|
|
int * |
len_src |
|
) |
| |
283 " coarray name=\'%s\', len(mold)=%d, len(src)=%d\n",
284 name, *len_mold, *len_src);
287 "put-communication on coarray \'%s\'", name);
◆ xmpf_coarray_put_err_size_()
void xmpf_coarray_put_err_size_ |
( |
void ** |
descPtr, |
|
|
int * |
dim, |
|
|
int * |
size_mold, |
|
|
int * |
size_src |
|
) |
| |
297 " coarray name=\'%s\', i=%d, size(mold,i)=%d, size(src,i)=%d\n",
298 name, *dim, *size_mold, *size_src);
300 _XMPCO_fatal(
"Mismatch sizes of %d-th dimension found in "
301 "put-communication on coarray \'%s\'", *dim, name);
void * _XMPCO_get_desc_fromLocalAddr(char *localAddr, char **orgAddr, size_t *offset, char **name)
Definition: xmpco_alloc.c:784
#define SCHEME_ExtraDirectPut
Definition: xmpco_put.c:14
#define FALSE
Definition: xmpco_internal.h:16
void _XMPCO_debugPrint(char *format,...)
Definition: xmpco_msg.c:20
char * _localBuf_name
Definition: xmpco_get_stmt.c:69
char * _XMPCO_get_nameOfCoarray(CoarrayInfo_t *cinfo)
Definition: xmpco_alloc.c:701
void * _localBuf_desc
Definition: xmpco_get_stmt.c:65
int _XMPCO_get_initial_image_withDescPtr(int image, CoarrayInfo_t *descPtr)
Definition: xmpco_lib.c:246
BOOL _XMPCO_get_isEagerCommMode(void)
Definition: xmpco_params.c:89
void * _XMPCO_get_infoOfLocalBuf(char **baseAddr, size_t *offset, char **name)
Definition: xmpco_alloc.c:770
size_t _localBuf_offset
Definition: xmpco_get_stmt.c:66
#define BOOL
Definition: xmpco_internal.h:14
void _XMPCO_fatal(char *format,...)
Definition: xmpco_msg.c:4
#define TRUE
Definition: xmpco_internal.h:15
int _localBuf_size
Definition: xmpco_get_stmt.c:68
#define SCHEME_ExtraBufferPut
Definition: xmpco_put.c:15
#define ROUND_UP_COMM(n)
Definition: xmpco_internal.h:20
size_t _XMPCO_get_localBufSize(void)
Definition: xmpco_params.c:84
#define SCHEME_DirectPut
Definition: xmpco_put.c:12
#define SCHEME_BufferPut
Definition: xmpco_put.c:13
#define COMM_UNIT
COMM_UNIT : minimum unit of size for PUT/GET communication MALLOC_UNIT : minimum unit of size for mem...
Definition: xmpco_params.h:37
char * _localBuf_baseAddr
Definition: xmpco_get_stmt.c:67