|
HIP: Heterogenous-computing Interface for Portability
|
Contains definitions of APIs for HIP runtime. More...
#include <cmath>#include <string.h>#include <stddef.h>#include <hip/hip_runtime_api.h>#include <grid_launch.h>#include <hip/hcc_detail/host_defines.h>Go to the source code of this file.
Macros | |
| #define | CUDA_SUCCESS hipSuccess |
| #define | hipLaunchParm grid_launch_parm |
| #define | __launch_bounds__(requiredMaxThreadsPerBlock, minBlocksPerMultiprocessor) |
| #define | clock_t long long int |
| #define | hipThreadIdx_x (amp_get_local_id(2)) |
| #define | hipThreadIdx_y (amp_get_local_id(1)) |
| #define | hipThreadIdx_z (amp_get_local_id(0)) |
| #define | hipBlockIdx_x (hc_get_group_id(2)) |
| #define | hipBlockIdx_y (hc_get_group_id(1)) |
| #define | hipBlockIdx_z (hc_get_group_id(0)) |
| #define | hipBlockDim_x (amp_get_local_size(2)) |
| #define | hipBlockDim_y (amp_get_local_size(1)) |
| #define | hipBlockDim_z (amp_get_local_size(0)) |
| #define | hipGridDim_x (hc_get_num_groups(2)) |
| #define | hipGridDim_y (hc_get_num_groups(1)) |
| #define | hipGridDim_z (hc_get_num_groups(0)) |
| #define | __syncthreads() hc_barrier(CLK_LOCAL_MEM_FENCE) |
| #define | HIP_KERNEL_NAME(...) __VA_ARGS__ |
Functions | |
| __device__ float | acosf (float x) |
| __device__ float | acoshf (float x) |
| __device__ float | asinf (float x) |
| __device__ float | asinhf (float x) |
| __device__ float | atan2f (float y, float x) |
| __device__ float | atanf (float x) |
| __device__ float | atanhf (float x) |
| __device__ float | cbrtf (float x) |
| __device__ float | ceilf (float x) |
| __device__ float | copysignf (float x, float y) |
| __device__ float | cosf (float x) |
| __device__ float | coshf (float x) |
| __device__ float | cyl_bessel_i0f (float x) |
| __device__ float | cyl_bessel_i1f (float x) |
| __device__ float | erfcf (float x) |
| __device__ float | erfcinvf (float y) |
| __device__ float | erfcxf (float x) |
| __device__ float | erff (float x) |
| __device__ float | erfinvf (float y) |
| __device__ float | exp10f (float x) |
| __device__ float | exp2f (float x) |
| __device__ float | expf (float x) |
| __device__ float | expm1f (float x) |
| __device__ float | fabsf (float x) |
| __device__ float | fdimf (float x, float y) |
| __device__ float | fdividef (float x, float y) |
| __device__ float | floorf (float x) |
| __device__ float | fmaf (float x, float y, float z) |
| __device__ float | fmaxf (float x, float y) |
| __device__ float | fminf (float x, float y) |
| __device__ float | fmodf (float x, float y) |
| __device__ float | frexpf (float x, float y) |
| __device__ float | hypotf (float x, float y) |
| __device__ float | ilogbf (float x) |
| __host__ __device__ unsigned | isfinite (float a) |
| __device__ unsigned | isinf (float a) |
| __device__ unsigned | isnan (float a) |
| __device__ float | j0f (float x) |
| __device__ float | j1f (float x) |
| __device__ float | jnf (int n, float x) |
| __device__ float | ldexpf (float x, int exp) |
| __device__ float | lgammaf (float x) |
| __device__ long long int | llrintf (float x) |
| __device__ long long int | llroundf (float x) |
| __device__ float | log10f (float x) |
| __device__ float | log1pf (float x) |
| __device__ float | log2f (float x) |
| __device__ float | logbf (float x) |
| __device__ float | logf (float x) |
| __device__ long int | lrintf (float x) |
| __device__ long int | lroundf (float x) |
| __device__ float | modff (float x, float *iptr) |
| __device__ float | nanf (const char *tagp) |
| __device__ float | nearbyintf (float x) |
| __device__ float | nextafterf (float x, float y) |
| __device__ float | norm3df (float a, float b, float c) |
| __device__ float | norm4df (float a, float b, float c, float d) |
| __device__ float | normcdff (float y) |
| __device__ float | normcdfinvf (float y) |
| __device__ float | normf (int dim, const float *a) |
| __device__ float | powf (float x, float y) |
| __device__ float | rcbtrf (float x) |
| __device__ float | remainderf (float x, float y) |
| __device__ float | remquof (float x, float y, int *quo) |
| __device__ float | rhypotf (float x, float y) |
| __device__ float | rintf (float x) |
| __device__ float | rnorm3df (float a, float b, float c) |
| __device__ float | rnorm4df (float a, float b, float c, float d) |
| __device__ float | rnormf (int dim, const float *a) |
| __device__ float | roundf (float x) |
| __device__ float | rsqrtf (float x) |
| __device__ float | scalblnf (float x, long int n) |
| __device__ float | scalbnf (float x, int n) |
| __host__ __device__ unsigned | signbit (float a) |
| __device__ void | sincosf (float x, float *sptr, float *cptr) |
| __device__ void | sincospif (float x, float *sptr, float *cptr) |
| __device__ float | sinf (float x) |
| __device__ float | sinhf (float x) |
| __device__ float | sinpif (float x) |
| __device__ float | sqrtf (float x) |
| __device__ float | tanf (float x) |
| __device__ float | tanhf (float x) |
| __device__ float | tgammaf (float x) |
| __device__ float | truncf (float x) |
| __device__ float | y0f (float x) |
| __device__ float | y1f (float x) |
| __device__ float | ynf (int n, float x) |
| __host__ __device__ float | cospif (float x) |
| __device__ double | acos (double x) |
| __device__ double | acosh (double x) |
| __device__ double | asin (double x) |
| __device__ double | asinh (double x) |
| __device__ double | atan (double x) |
| __device__ double | atan2 (double y, double x) |
| __device__ double | atanh (double x) |
| __device__ double | cbrt (double x) |
| __device__ double | ceil (double x) |
| __device__ double | copysign (double x, double y) |
| __device__ double | cos (double x) |
| __device__ double | cosh (double x) |
| __host__ __device__ double | cospi (double x) |
| __device__ double | cyl_bessel_i0 (double x) |
| __device__ double | cyl_bessel_i1 (double x) |
| __device__ double | erf (double x) |
| __device__ double | erfc (double x) |
| __device__ double | erfcinv (double y) |
| __device__ double | erfcx (double x) |
| __device__ double | exp (double x) |
| __device__ double | exp10 (double x) |
| __device__ double | exp2 (double x) |
| __device__ double | expm1 (double x) |
| __device__ double | fabs (double x) |
| __device__ double | fdim (double x, double y) |
| __device__ double | floor (double x) |
| __device__ double | fma (double x, double y, double z) |
| __device__ double | fmax (double x, double y) |
| __device__ double | fmin (double x, double y) |
| __device__ double | fmod (double x, double y) |
| __device__ double | frexp (double x, int *nptr) |
| __device__ double | hypot (double x, double y) |
| __device__ double | ilogb (double x) |
| __host__ __device__ unsigned | isfinite (double x) |
| __device__ unsigned | isinf (double x) |
| __device__ unsigned | isnan (double x) |
| __device__ double | j0 (double x) |
| __device__ double | j1 (double x) |
| __device__ double | jn (int n, double x) |
| __device__ double | ldexp (double x, int exp) |
| __device__ double | lgamma (double x) |
| __device__ long long | llrint (double x) |
| __device__ long | llround (double x) |
| __device__ double | log (double x) |
| __device__ double | log10 (double x) |
| __device__ double | log1p (double x) |
| __device__ double | log2 (double x) |
| __device__ double | logb (double x) |
| __device__ long int | lrint (double x) |
| __device__ long int | lround (double x) |
| __device__ double | modf (double x, double *iptr) |
| __device__ double | nan (const char *tagp) |
| __device__ double | nearbyint (double x) |
| __device__ double | nextafter (double x, double y) |
| __device__ double | norm (int dim, const double *t) |
| __device__ double | norm3d (double a, double b, double c) |
| __device__ double | norm4d (double a, double b, double d) |
| __device__ double | normcdf (double y) |
| __device__ double | normcdfinv (double y) |
| __device__ double | pow (double x, double y) |
| __device__ double | rcbrt (double x) |
| __device__ double | remainder (double x, double y) |
| __device__ double | remquo (double x, double y, int *quo) |
| __device__ double | rhypot (double x, double y) |
| __device__ double | rint (double x) |
| __device__ double | rnorm (int dim, const double *t) |
| __device__ double | rnorm3d (double a, double b, double c) |
| __device__ double | rnorm4d (double a, double b, double c, double d) |
| __device__ double | round (double x) |
| __host__ __device__ double | rsqrt (double x) |
| __device__ double | scalbln (double x, long int n) |
| __device__ double | scalbn (double x, int n) |
| __host__ __device__ unsigned | signbit (double a) |
| __device__ double | sin (double a) |
| __device__ double | sincos (double x, double *sptr, double *cptr) |
| __device__ double | sincospi (double x, double *sptr, double *cptr) |
| __device__ double | sinh (double x) |
| __host__ __device__ double | sinpi (double x) |
| __device__ double | sqrt (double x) |
| __device__ double | tan (double x) |
| __device__ double | tanh (double x) |
| __device__ double | tgamma (double x) |
| __device__ double | trunc (double x) |
| __device__ double | y0 (double x) |
| __device__ double | y1 (double y) |
| __device__ double | yn (int n, double x) |
| __device__ long long int | clock64 () |
| __device__ clock_t | clock () |
| __device__ int | atomicAdd (int *address, int val) |
| __device__ unsigned int | atomicAdd (unsigned int *address, unsigned int val) |
| __device__ unsigned long long int | atomicAdd (unsigned long long int *address, unsigned long long int val) |
| __device__ float | atomicAdd (float *address, float val) |
| __device__ int | atomicSub (int *address, int val) |
| __device__ unsigned int | atomicSub (unsigned int *address, unsigned int val) |
| __device__ int | atomicExch (int *address, int val) |
| __device__ unsigned int | atomicExch (unsigned int *address, unsigned int val) |
| __device__ unsigned long long int | atomicExch (unsigned long long int *address, unsigned long long int val) |
| __device__ float | atomicExch (float *address, float val) |
| __device__ int | atomicMin (int *address, int val) |
| __device__ unsigned int | atomicMin (unsigned int *address, unsigned int val) |
| __device__ unsigned long long int | atomicMin (unsigned long long int *address, unsigned long long int val) |
| __device__ int | atomicMax (int *address, int val) |
| __device__ unsigned int | atomicMax (unsigned int *address, unsigned int val) |
| __device__ unsigned long long int | atomicMax (unsigned long long int *address, unsigned long long int val) |
| __device__ int | atomicCAS (int *address, int compare, int val) |
| __device__ unsigned int | atomicCAS (unsigned int *address, unsigned int compare, unsigned int val) |
| __device__ unsigned long long int | atomicCAS (unsigned long long int *address, unsigned long long int compare, unsigned long long int val) |
| __device__ int | atomicAnd (int *address, int val) |
| __device__ unsigned int | atomicAnd (unsigned int *address, unsigned int val) |
| __device__ unsigned long long int | atomicAnd (unsigned long long int *address, unsigned long long int val) |
| __device__ int | atomicOr (int *address, int val) |
| __device__ unsigned int | atomicOr (unsigned int *address, unsigned int val) |
| __device__ unsigned long long int | atomicOr (unsigned long long int *address, unsigned long long int val) |
| __device__ int | atomicXor (int *address, int val) |
| __device__ unsigned int | atomicXor (unsigned int *address, unsigned int val) |
| __device__ unsigned long long int | atomicXor (unsigned long long int *address, unsigned long long int val) |
| __device__ unsigned int | atomicInc (unsigned int *address, unsigned int val) |
| __device__ unsigned int | atomicDec (unsigned int *address, unsigned int val) |
| __device__ unsigned int | __popc (unsigned int input) |
| __device__ unsigned int | __popcll (unsigned long long int input) |
| __device__ unsigned int | __clz (unsigned int input) |
| __device__ unsigned int | __clzll (unsigned long long int input) |
| __device__ unsigned int | __clz (int input) |
| __device__ unsigned int | __clzll (long long int input) |
| __device__ unsigned int | __ffs (unsigned int input) |
| __device__ unsigned int | __ffsll (unsigned long long int input) |
| __device__ unsigned int | __ffs (int input) |
| __device__ unsigned int | __ffsll (long long int input) |
| __device__ unsigned int | __brev (unsigned int input) |
| __device__ unsigned long long int | __brevll (unsigned long long int input) |
| __device__ int | __all (int input) |
| __device__ int | __any (int input) |
| __device__ unsigned long long int | __ballot (int input) |
| __device__ int | __shfl (int input, int lane, int width) |
| __device__ int | __shfl_up (int input, unsigned int lane_delta, int width) |
| __device__ int | __shfl_down (int input, unsigned int lane_delta, int width) |
| __device__ int | __shfl_xor (int input, int lane_mask, int width) |
| __device__ float | __shfl (float input, int lane, int width) |
| __device__ float | __shfl_up (float input, unsigned int lane_delta, int width) |
| __device__ float | __shfl_down (float input, unsigned int lane_delta, int width) |
| __device__ float | __shfl_xor (float input, int lane_mask, int width) |
| __host__ __device__ int | min (int arg1, int arg2) |
| __host__ __device__ int | max (int arg1, int arg2) |
| __device__ float | __cosf (float x) |
| __device__ float | __expf (float x) |
| __device__ float | __frsqrt_rn (float x) |
| __device__ float | __fsqrt_rd (float x) |
| __device__ float | __fsqrt_rn (float x) |
| __device__ float | __fsqrt_ru (float x) |
| __device__ float | __fsqrt_rz (float x) |
| __device__ float | __log10f (float x) |
| __device__ float | __log2f (float x) |
| __device__ float | __logf (float x) |
| __device__ float | __powf (float base, float exponent) |
| __device__ void | __sincosf (float x, float *s, float *c) |
| __device__ float | __sinf (float x) |
| __device__ float | __tanf (float x) |
| __device__ float | __dsqrt_rd (double x) |
| __device__ float | __dsqrt_rn (double x) |
| __device__ float | __dsqrt_ru (double x) |
| __device__ float | __dsqrt_rz (double x) |
Variables | |
| int | HIP_TRACE_API |
| const int | warpSize |
Contains definitions of APIs for HIP runtime.
| #define hipThreadIdx_x (amp_get_local_id(2)) |
Kernel launching
1.8.6