HIP: Heterogenous-computing Interface for Portability
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
hip_runtime.h File Reference

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
 

Detailed Description

Contains definitions of APIs for HIP runtime.

Macro Definition Documentation

#define hipThreadIdx_x   (amp_get_local_id(2))

Kernel launching