NSIMD documentation
Index | Tutorial | FAQ | Contribute | API overview | API reference | Wrapped intrinsics | Modules
SPMD programming module documentation
Overview | API reference

NSIMD SPMD API reference

This page contains the exhaustive API of the SPMD module. Note that most operators names follow the simple naming k_[NSIMD name] and have the same semantics. This page is light, you may use CTRL+F to find the operator you are looking for.

For genericity on the base type you should use operator names instead of infix operators, e.g. k_add instead of +. Indeed for f16's NVIDIA CUDA and NSIMD do not provide overloads and therefore code using + will fail to compile.

Note that all operators accept literals and scalars. For example you may write k_add(a, 1) or float s; k_add(a, s);. This also applies when using infix operators. But note that literals or scalars must have the same type as the other operands.

Bits manipulation operators

Logicals operators

Basic arithmetic operators

Comparison operators

Rounding functions

Conversion operators

Trigonometric functions

Exponential and logarithmic functions

Hyperbolic functions