|
DistDir
|
Functions | |
| t_kernels * | new_vtable_cuda (MPI_Datatype type) |
| Create new t_kernels data structure. More... | |
| void | pack_cuda_int (int *buffer, int *data, int *buffer_idxlist, int buffer_size, int offset, int *transform) |
| Packing function for int arrays. More... | |
| void | pack_cuda_float (float *buffer, float *data, int *buffer_idxlist, int buffer_size, int offset, int *transform) |
| Packing function for float arrays. More... | |
| void | pack_cuda_double (double *buffer, double *data, int *buffer_idxlist, int buffer_size, int offset, int *transform) |
| Packing function for double arrays. More... | |
| void | unpack_cuda_int (int *buffer, int *data, int *buffer_idxlist, int buffer_size, int offset, int *transform) |
| Unpacking function for int arrays. More... | |
| void | unpack_cuda_float (float *buffer, float *data, int *buffer_idxlist, int buffer_size, int offset, int *transform) |
| Unpacking function for float arrays. More... | |
| void | unpack_cuda_double (double *buffer, double *data, int *buffer_idxlist, int buffer_size, int offset, int *transform) |
| Unpacking function for double arrays. More... | |
| void * | allocator_cuda (size_t buffer_size) |
| Allocate array. More... | |
| void | deallocator_cuda (void *buffer) |
| Deallocate array. More... | |
| void | memcpy_h2d (int *buffer_cuda, int *buffer_cpu, int buffer_size) |
| Copy memory from host to device. More... | |
CUDA specific implementation
| void* allocator_cuda | ( | size_t | buffer_size | ) |
Allocate array.
| [in] | buffer_size | byte size of the array to be allocated |
| void deallocator_cuda | ( | void * | buffer | ) |
Deallocate array.
| [in,out] | buffer | Pointer to the memory to be deallocated |
| void memcpy_h2d | ( | int * | buffer_cuda, |
| int * | buffer_cpu, | ||
| int | buffer_size | ||
| ) |
Copy memory from host to device.
| [out] | buffer_cuda | pointer to the destination GPU memory |
| [in] | buffer_cpu | pointer to the source CPU memory |
| [in] | buffer_size | byte size to be copied |
| t_kernels* new_vtable_cuda | ( | MPI_Datatype | type | ) |
| void pack_cuda_double | ( | double * | buffer, |
| double * | data, | ||
| int * | buffer_idxlist, | ||
| int | buffer_size, | ||
| int | offset, | ||
| int * | transform | ||
| ) |
Packing function for double arrays.
Pack array data into a buffer using the buffer_idxlist
| [out] | buffer | double array to be filled |
| [in] | data | double array with the data |
| [in] | buffer_idxlist | integer array with the information to fill the buffer |
| [in] | buffer_size | size of the buffer to be filled (it can be a subset of the buffer array) |
| [in] | offset | buffer offset to start the filling of the buffer array |
| [in] | transform | array of indices to transform the memory layout |
| void pack_cuda_float | ( | float * | buffer, |
| float * | data, | ||
| int * | buffer_idxlist, | ||
| int | buffer_size, | ||
| int | offset, | ||
| int * | transform | ||
| ) |
Packing function for float arrays.
Pack array data into a buffer using the buffer_idxlist
| [out] | buffer | float array to be filled |
| [in] | data | float array with the data |
| [in] | buffer_idxlist | integer array with the information to fill the buffer |
| [in] | buffer_size | size of the buffer to be filled (it can be a subset of the buffer array) |
| [in] | offset | buffer offset to start the filling of the buffer array |
| [in] | transform | array of indices to transform the memory layout |
| void pack_cuda_int | ( | int * | buffer, |
| int * | data, | ||
| int * | buffer_idxlist, | ||
| int | buffer_size, | ||
| int | offset, | ||
| int * | transform | ||
| ) |
Packing function for int arrays.
Pack array data into a buffer using the buffer_idxlist
| [out] | buffer | integer array to be filled |
| [in] | data | integer array with the data |
| [in] | buffer_idxlist | integer array with the information to fill the buffer |
| [in] | buffer_size | size of the buffer to be filled (it can be a subset of the buffer array) |
| [in] | offset | buffer offset to start the filling of the buffer array |
| [in] | transform | array of indices to transform the memory layout |
| void unpack_cuda_double | ( | double * | buffer, |
| double * | data, | ||
| int * | buffer_idxlist, | ||
| int | buffer_size, | ||
| int | offset, | ||
| int * | transform | ||
| ) |
Unpacking function for double arrays.
Unpack beffer into array data using the buffer_idxlist
| [in] | buffer | double array with the data |
| [out] | data | double array to be filled |
| [in] | buffer_idxlist | integer array with the information to fill the data array |
| [in] | buffer_size | size of the buffer to unpack (it can be a subset of the buffer array) |
| [in] | offset | buffer offset to start the unpacking of the buffer array |
| [in] | transform | array of indices to transform the memory layout |
| void unpack_cuda_float | ( | float * | buffer, |
| float * | data, | ||
| int * | buffer_idxlist, | ||
| int | buffer_size, | ||
| int | offset, | ||
| int * | transform | ||
| ) |
Unpacking function for float arrays.
Unpack beffer into array data using the buffer_idxlist
| [in] | buffer | float array with the data |
| [out] | data | float array to be filled |
| [in] | buffer_idxlist | integer array with the information to fill the data array |
| [in] | buffer_size | size of the buffer to unpack (it can be a subset of the buffer array) |
| [in] | offset | buffer offset to start the unpacking of the buffer array |
| [in] | transform | array of indices to transform the memory layout |
| void unpack_cuda_int | ( | int * | buffer, |
| int * | data, | ||
| int * | buffer_idxlist, | ||
| int | buffer_size, | ||
| int | offset, | ||
| int * | transform | ||
| ) |
Unpacking function for int arrays.
Unpack beffer into array data using the buffer_idxlist
| [in] | buffer | integer array with the data |
| [out] | data | integer array to be filled |
| [in] | buffer_idxlist | integer array with the information to fill the data array |
| [in] | buffer_size | size of the buffer to unpack (it can be a subset of the buffer array) |
| [in] | offset | buffer offset to start the unpacking of the buffer array |
| [in] | transform | array of indices to transform the memory layout |