CUDA Math API (PDF) - v10.1.168 (older) - Last updated April 24, 2019 - Send Feedback

## 1.1.7. Half2 Math Functions

## [Half Precision Intrinsics]

To use these functions include the header file `cuda_fp16.h` in your program.

### Functions

__device__ ​ __half2 h2ceil ( const __half2 h ) throw ( )
  Calculate `half2` vector ceiling of the input argument.
__device__ ​ __half2 h2cos ( const __half2 a ) throw ( )
  Calculates `half2` vector cosine in round-to-nearest-even mode.
__device__ ​ __half2 h2exp ( const __half2 a ) throw ( )
  Calculates `half2` vector exponential function in round-to-nearest mode.
__device__ ​ __half2 h2exp10 ( const __half2 a ) throw ( )
  Calculates `half2` vector decimal exponential function in round-to-nearest-even mode.
__device__ ​ __half2 h2exp2 ( const __half2 a ) throw ( )
  Calculates `half2` vector binary exponential function in round-to-nearest-even mode.
__device__ ​ __half2 h2floor ( const __half2 h ) throw ( )
  Calculate the largest integer less than or equal to `h`.
__device__ ​ __half2 h2log ( const __half2 a ) throw ( )
  Calculates `half2` vector natural logarithm in round-to-nearest-even mode.
__device__ ​ __half2 h2log10 ( const __half2 a ) throw ( )
  Calculates `half2` vector decimal logarithm in round-to-nearest-even mode.
__device__ ​ __half2 h2log2 ( const __half2 a ) throw ( )
  Calculates `half2` vector binary logarithm in round-to-nearest-even mode.
__device__ ​ __half2 h2rcp ( const __half2 a ) throw ( )
  Calculates `half2` vector reciprocal in round-to-nearest-even mode.
__device__ ​ __half2 h2rint ( const __half2 h ) throw ( )
  Round input to nearest integer value in half-precision floating point number.
__device__ ​ __half2 h2rsqrt ( const __half2 a ) throw ( )
  Calculates `half2` vector reciprocal square root in round-to-nearest mode.
__device__ ​ __half2 h2sin ( const __half2 a ) throw ( )
  Calculates `half2` vector sine in round-to-nearest-even mode.
__device__ ​ __half2 h2sqrt ( const __half2 a ) throw ( )
  Calculates `half2` vector square root in round-to-nearest-even mode.
__device__ ​ __half2 h2trunc ( const __half2 h ) throw ( )
  Truncate `half2` vector input argument to the integral part.

### Functions

__device__ ​ __half2 h2ceil ( const __half2 h ) throw ( )
  Calculate `half2` vector ceiling of the input argument.

  ###### Parameters

  `h`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    vector of smallest integers not less than `h`.

  ###### Description

  For each component of vector `h` compute the smallest integer value not less than `h`. TBR

__device__ ​ __half2 h2cos ( const __half2 a ) throw ( )
  Calculates `half2` vector cosine in round-to-nearest-even mode.

  ###### Parameters

  `a`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    elementwise cosine on vector `a`.

  ###### Description

  Calculates `half2` cosine of input vector `a` in round-to-nearest-even mode. TBR

__device__ ​ __half2 h2exp ( const __half2 a ) throw ( )
  Calculates `half2` vector exponential function in round-to-nearest mode.

  ###### Parameters

  `a`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    elementwise exponential function on vector `a`.

  ###### Description

  Calculates `half2` exponential function of input vector `a` in round-to-nearest-even mode. TBR

__device__ ​ __half2 h2exp10 ( const __half2 a ) throw ( )
  Calculates `half2` vector decimal exponential function in round-to-nearest-even mode.

  ###### Parameters

  `a`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    elementwise decimal exponential function on vector `a`.

  ###### Description

  Calculates `half2` decimal exponential function of input vector `a` in round-to-nearest-even mode. TBR

__device__ ​ __half2 h2exp2 ( const __half2 a ) throw ( )
  Calculates `half2` vector binary exponential function in round-to-nearest-even mode.

  ###### Parameters

  `a`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    elementwise binary exponential function on vector `a`.

  ###### Description

  Calculates `half2` binary exponential function of input vector `a` in round-to-nearest-even mode. TBR

__device__ ​ __half2 h2floor ( const __half2 h ) throw ( )
  Calculate the largest integer less than or equal to `h`.

  ###### Parameters

  `h`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    vector of largest integers which is less than or equal to `h`.

  ###### Description

  For each component of vector `h` calculate the largest integer value which is less than or equal to `h`. TBR

__device__ ​ __half2 h2log ( const __half2 a ) throw ( )
  Calculates `half2` vector natural logarithm in round-to-nearest-even mode.

  ###### Parameters

  `a`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    elementwise natural logarithm on vector `a`.

  ###### Description

  Calculates `half2` natural logarithm of input vector `a` in round-to-nearest-even mode. TBR

__device__ ​ __half2 h2log10 ( const __half2 a ) throw ( )
  Calculates `half2` vector decimal logarithm in round-to-nearest-even mode.

  ###### Parameters

  `a`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    elementwise decimal logarithm on vector `a`.

  ###### Description

  Calculates `half2` decimal logarithm of input vector `a` in round-to-nearest-even mode. TBR

__device__ ​ __half2 h2log2 ( const __half2 a ) throw ( )
  Calculates `half2` vector binary logarithm in round-to-nearest-even mode.

  ###### Parameters

  `a`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    elementwise binary logarithm on vector `a`.

  ###### Description

  Calculates `half2` binary logarithm of input vector `a` in round-to-nearest mode. TBR

__device__ ​ __half2 h2rcp ( const __half2 a ) throw ( )
  Calculates `half2` vector reciprocal in round-to-nearest-even mode.

  ###### Parameters

  `a`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    elementwise reciprocal on vector `a`.

  ###### Description

  Calculates `half2` reciprocal of input vector `a` in round-to-nearest-even mode. TBR

__device__ ​ __half2 h2rint ( const __half2 h ) throw ( )
  Round input to nearest integer value in half-precision floating point number.

  ###### Parameters

  `h`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    vector of rounded integer values.

  ###### Description

  Round each component of `half2` vector `h` to the nearest integer value in half-precision floating point format, with halfway cases rounded to the nearest even integer value. TBR

__device__ ​ __half2 h2rsqrt ( const __half2 a ) throw ( )
  Calculates `half2` vector reciprocal square root in round-to-nearest mode.

  ###### Parameters

  `a`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    elementwise reciprocal square root on vector `a`.

  ###### Description

  Calculates `half2` reciprocal square root of input vector `a` in round-to-nearest-even mode. TBR

__device__ ​ __half2 h2sin ( const __half2 a ) throw ( )
  Calculates `half2` vector sine in round-to-nearest-even mode.

  ###### Parameters

  `a`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    elementwise sine on vector `a`.

  ###### Description

  Calculates `half2` sine of input vector `a` in round-to-nearest-even mode. TBR

__device__ ​ __half2 h2sqrt ( const __half2 a ) throw ( )
  Calculates `half2` vector square root in round-to-nearest-even mode.

  ###### Parameters

  `a`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    elementwise square root on vector `a`.

  ###### Description

  Calculates `half2` square root of input vector `a` in round-to-nearest mode. TBR

__device__ ​ __half2 h2trunc ( const __half2 h ) throw ( )
  Truncate `half2` vector input argument to the integral part.

  ###### Parameters

  `h`
    - half2. Is only being read.

  ###### Returns

  half2

  - The

    truncated `h`.

  ###### Description

  Round each component of vector `h` to the nearest integer value that does not exceed `h` in magnitude. TBR