libxmp/libxmpf in Omni Compiler  1.3.4
xmp_reflect_tca.c File Reference
#include "xmp_internal.h"
#include "tca-api.h"
#include "xmp.h"
#include "cuda_runtime.h"
Include dependency graph for xmp_reflect_tca.c:

Macros

#define _XMP_TCA_DMAC   0
 
#define _XMP_TCA_USE_PACK_SIZE   8
 
#define _XMP_TCA_DEBUG(...)
 

Functions

void _XMP_gpu_pack_vector_async (char *restrict dst, char *restrict src, int count, int blocklength, long stride, size_t typesize, void *async_id)
 
void _XMP_gpu_unpack_vector_async (char *restrict dst, char *restrict src, int count, int blocklength, long stride, size_t typesize, void *async_id)
 
void _XMP_reflect_init_tca (void *acc_addr, _XMP_array_t *adesc)
 
void _XMP_reflect_do_tca (_XMP_array_t *adesc)
 

Macro Definition Documentation

◆ _XMP_TCA_DEBUG

#define _XMP_TCA_DEBUG (   ...)

◆ _XMP_TCA_DMAC

#define _XMP_TCA_DMAC   0

◆ _XMP_TCA_USE_PACK_SIZE

#define _XMP_TCA_USE_PACK_SIZE   8

Function Documentation

◆ _XMP_gpu_pack_vector_async()

void _XMP_gpu_pack_vector_async ( char *restrict  dst,
char *restrict  src,
int  count,
int  blocklength,
long  stride,
size_t  typesize,
void *  async_id 
)

◆ _XMP_gpu_unpack_vector_async()

void _XMP_gpu_unpack_vector_async ( char *restrict  dst,
char *restrict  src,
int  count,
int  blocklength,
long  stride,
size_t  typesize,
void *  async_id 
)

◆ _XMP_reflect_do_tca()

void _XMP_reflect_do_tca ( _XMP_array_t adesc)
580 {
581  _XMP_tca_pack_vector(adesc);
582  TCA_CHECK(tcaStartDMADesc(_XMP_TCA_DMAC));
583  _XMP_refect_wait_tca(adesc);
584  _XMP_tca_unpack_vector(adesc);
585  MPI_Barrier(MPI_COMM_WORLD);
586 }
Here is the caller graph for this function:

◆ _XMP_reflect_init_tca()

void _XMP_reflect_init_tca ( void *  acc_addr,
_XMP_array_t adesc 
)
370 {
371  _XMP_create_TCA_handle(acc_addr, adesc);
372  _XMP_create_TCA_reflect_desc(adesc, acc_addr);
373 }
Here is the caller graph for this function:
_XMP_TCA_DMAC
#define _XMP_TCA_DMAC
Definition: xmp_reflect_tca.c:5