HIP: Heterogenous-computing Interface for Portability
|
Functions | |
hipError_t | hipConfigureCall (dim3 gridDim, dim3 blockDim, size_t sharedMem __dparm(0), hipStream_t stream __dparm(0)) |
Configure a kernel launch. More... | |
hipError_t | hipSetupArgument (const void *arg, size_t size, size_t offset) |
Set a kernel argument. More... | |
hipError_t | hipLaunchByPtr (const void *func) |
Launch a kernel. More... | |
hipError_t | __hipPushCallConfiguration (dim3 gridDim, dim3 blockDim, size_t sharedMem __dparm(0), hipStream_t stream __dparm(0)) |
Push configuration of a kernel launch. More... | |
hipError_t | __hipPopCallConfiguration (dim3 *gridDim, dim3 *blockDim, size_t *sharedMem, hipStream_t *stream) |
Pop configuration of a kernel launch. More... | |
hipError_t | hipLaunchKernel (const void *function_address, dim3 numBlocks, dim3 dimBlocks, void **args, size_t sharedMemBytes __dparm(0), hipStream_t stream __dparm(0)) |
C compliant kernel launch API. More... | |
hipError_t | hipMemPrefetchAsync (const void *dev_ptr, size_t count, int device, hipStream_t stream __dparm(0)) |
Prefetches memory to the specified destination device using AMD HMM. More... | |
hipError_t | hipMemAdvise (const void *dev_ptr, size_t count, hipMemoryAdvise advice, int device) |
Advise about the usage of a given memory range to AMD HMM. More... | |
hipError_t | hipMemRangeGetAttribute (void *data, size_t data_size, hipMemRangeAttribute attribute, const void *dev_ptr, size_t count) |
Query an attribute of a given memory range in AMD HMM. More... | |
hipError_t | hipMemRangeGetAttributes (void **data, size_t *data_sizes, hipMemRangeAttribute *attributes, size_t num_attributes, const void *dev_ptr, size_t count) |
Query attributes of a given memory range in AMD HMM. More... | |
hipError_t | hipStreamAttachMemAsync (hipStream_t stream, hipDeviceptr_t *dev_ptr, size_t length __dparm(0), unsigned int flags __dparm(hipMemAttachSingle)) |
Attach memory to a stream asynchronously in AMD HMM. More... | |
hipError_t __hipPopCallConfiguration | ( | dim3 * | gridDim, |
dim3 * | blockDim, | ||
size_t * | sharedMem, | ||
hipStream_t * | stream | ||
) |
Pop configuration of a kernel launch.
[out] | gridDim | grid dimension specified as multiple of blockDim. |
[out] | blockDim | block dimensions specified in work-items |
[out] | sharedMem | Amount of dynamic shared memory to allocate for this kernel. The kernel can access this with HIP_DYNAMIC_SHARED. |
[out] | stream | Stream where the kernel should be dispatched. May be 0, in which case the default stream is used with associated synchronization rules. |
hipError_t __hipPushCallConfiguration | ( | dim3 | gridDim, |
dim3 | blockDim, | ||
size_t sharedMem | __dparm0, | ||
hipStream_t stream | __dparm0 | ||
) |
Push configuration of a kernel launch.
[in] | gridDim | grid dimension specified as multiple of blockDim. |
[in] | blockDim | block dimensions specified in work-items |
[in] | sharedMem | Amount of dynamic shared memory to allocate for this kernel. The kernel can access this with HIP_DYNAMIC_SHARED. |
[in] | stream | Stream where the kernel should be dispatched. May be 0, in which case the default stream is used with associated synchronization rules. |
hipError_t hipConfigureCall | ( | dim3 | gridDim, |
dim3 | blockDim, | ||
size_t sharedMem | __dparm0, | ||
hipStream_t stream | __dparm0 | ||
) |
Configure a kernel launch.
[in] | gridDim | grid dimension specified as multiple of blockDim. |
[in] | blockDim | block dimensions specified in work-items |
[in] | sharedMem | Amount of dynamic shared memory to allocate for this kernel. The kernel can access this with HIP_DYNAMIC_SHARED. |
[in] | stream | Stream where the kernel should be dispatched. May be 0, in which case the default stream is used with associated synchronization rules. |
hipError_t hipLaunchByPtr | ( | const void * | func | ) |
Launch a kernel.
[in] | func | Kernel to launch. |
hipError_t hipLaunchKernel | ( | const void * | function_address, |
dim3 | numBlocks, | ||
dim3 | dimBlocks, | ||
void ** | args, | ||
size_t sharedMemBytes | __dparm0, | ||
hipStream_t stream | __dparm0 | ||
) |
C compliant kernel launch API.
[in] | function_address | - kernel stub function pointer. |
[in] | numBlocks | - number of blocks |
[in] | dimBlocks | - dimension of a block |
[in] | args | - kernel arguments |
[in] | sharedMemBytes | - Amount of dynamic shared memory to allocate for this kernel. The Kernel can access this with HIP_DYNAMIC_SHARED. |
[in] | stream | - Stream where the kernel should be dispatched. May be 0, in which case th default stream is used with associated synchronization rules. |
hipError_t hipMemAdvise | ( | const void * | dev_ptr, |
size_t | count, | ||
hipMemoryAdvise | advice, | ||
int | device | ||
) |
Advise about the usage of a given memory range to AMD HMM.
[in] | dev_ptr | pointer to memory to set the advice for |
[in] | count | size in bytes of the memory range |
[in] | advice | advice to be applied for the specified memory range |
[in] | device | device to apply the advice for |
hipError_t hipMemPrefetchAsync | ( | const void * | dev_ptr, |
size_t | count, | ||
int | device, | ||
hipStream_t stream | __dparm0 | ||
) |
Prefetches memory to the specified destination device using AMD HMM.
[in] | dev_ptr | pointer to be prefetched |
[in] | count | size in bytes for prefetching |
[in] | device | destination device to prefetch to |
[in] | stream | stream to enqueue prefetch operation |
hipError_t hipMemRangeGetAttribute | ( | void * | data, |
size_t | data_size, | ||
hipMemRangeAttribute | attribute, | ||
const void * | dev_ptr, | ||
size_t | count | ||
) |
Query an attribute of a given memory range in AMD HMM.
[in/out] | data a pointer to a memory location where the result of each attribute query will be written to | |
[in] | data_size | the size of data |
[in] | attribute | the attribute to query |
[in] | dev_ptr | start of the range to query |
[in] | count | size of the range to query |
hipError_t hipMemRangeGetAttributes | ( | void ** | data, |
size_t * | data_sizes, | ||
hipMemRangeAttribute * | attributes, | ||
size_t | num_attributes, | ||
const void * | dev_ptr, | ||
size_t | count | ||
) |
Query attributes of a given memory range in AMD HMM.
[in/out] | data a two-dimensional array containing pointers to memory locations where the result of each attribute query will be written to | |
[in] | data_sizes | an array, containing the sizes of each result |
[in] | attributes | the attribute to query |
[in] | num_attributes | an array of attributes to query (numAttributes and the number of attributes in this array should match) |
[in] | dev_ptr | start of the range to query |
[in] | count | size of the range to query |
hipError_t hipSetupArgument | ( | const void * | arg, |
size_t | size, | ||
size_t | offset | ||
) |
Set a kernel argument.
[in] | arg | Pointer the argument in host memory. |
[in] | size | Size of the argument. |
[in] | offset | Offset of the argument on the argument stack. |
hipError_t hipStreamAttachMemAsync | ( | hipStream_t | stream, |
hipDeviceptr_t * | dev_ptr, | ||
size_t length | __dparm0, | ||
unsigned int flags | __dparmhipMemAttachSingle | ||
) |
Attach memory to a stream asynchronously in AMD HMM.
[in] | stream | - stream in which to enqueue the attach operation |
[in] | dev_ptr | - pointer to memory (must be a pointer to managed memory or to a valid host-accessible region of system-allocated memory) |
[in] | length | - length of memory (defaults to zero) |
[in] | flags | - must be one of cudaMemAttachGlobal, cudaMemAttachHost or cudaMemAttachSingle (defaults to cudaMemAttachSingle) |