Context#

cuest.bindings.cuestCreate(
*,
parameters: cuest.bindings.cuest.Parameters,
handle: cuest.bindings.cuest.cuestHandle,
) cuest.bindings.cuest.CuestStatus#

Creates a new cuEST handle and its associated resources from a parameter structure.

Ownership of handles or pointers passed into the structure is NOT transferred. Default parameters will construct a generic GPU context.

Requirements:
  • A cudaStream alone may be provided, all others may be left NULL.

  • If cuBLAS or cuSolver handles are specified, a cudaStream must also be specified.

  • When cuBLAS or cuSolver handles are specified, these handles must be set to operate on the provided cudaStream (i.e. by calling cublasSetStream or cusolverDnSetStream with it).

Parameters#

parameters[in]cuestHandleParameters

Parameter structure handle (must not be NULL).

handle[out]cuestHandle

Pointer to opaque cuEST handle for output.

Returns#

status[out]cuestStatus_t
cuest.bindings.cuestDestroy(
*,
handle: cuest.bindings.cuest.cuestHandle,
) cuest.bindings.cuest.CuestStatus#

Destroys a cuEST handle and all associated resources.

Frees memory for GPU resources, quadrature data, solid harmonics coefficients, and rys table.

Parameters#

handle[in]cuestHandle

Opaque cuEST handle to destroy (must not be NULL).

Returns#

status[out]cuestStatus_t
cuest.bindings.cuestSetMathMode(
*,
handle: cuest.bindings.cuest.cuestHandle,
mode: int,
) cuest.bindings.cuest.CuestStatus#

Sets the math mode used when cuEST functions are called with this handle.

Parameters#

handle[in,out]cuestHandle

Opaque cuEST handle (must not be NULL).

mode[in]CuestMathMode

Math mode to set in cuEST handle

Returns#

status[out]CuestStatus
cuest.bindings.cuestGetMathMode(
*,
handle: cuest.bindings.cuest.cuestHandle,
mode: cuest.bindings.cuest.data_cuestMathMode_t,
) cuest.bindings.cuest.CuestStatus#

Gets the math mode associated with this handle.

Parameters#

handle[in]cuestHandle

Opaque cuEST handle (must not be NULL).

mode[out]data_cuestMathMode_t

Math mode to get from the cuEST handle

Returns#

status[out]CuestStatus
cuest.bindings.cuestSetComputeCapabilityTarget(
*,
handle: cuest.bindings.cuest.cuestHandle,
targetMajorVersion: int,
targetMinorVersion: int,
) cuest.bindings.cuest.CuestStatus#

Sets the compute capability target used when cuEST functions are called with this handle.

Parameters#

handle[in,out]cuestHandle

Opaque cuEST handle (must not be NULL).

targetMajorVersion[in]int

Major compute capability version

targetMinorVersion[in]int

Minor compute capability version

Returns#

status[out]CuestStatus
cuest.bindings.cuestGetComputeCapabilityTarget(
*,
handle: cuest.bindings.cuest.cuestHandle,
targetMajorVersion: cuest.bindings.cuest.data_uint32_t,
targetMinorVersion: cuest.bindings.cuest.data_uint32_t,
) cuest.bindings.cuest.CuestStatus#

Gets the compute capability target used when cuEST functions are called with this handle.

Parameters#

handle[in]cuestHandle

Opaque cuEST handle (must not be NULL).

targetMajorVersion[out]data_uint32_t

Major compute capability version

targetMinorVersion[out]data_uint32_t

Minor compute capability version

Returns#

status[out]CuestStatus
cuest.bindings.cuestGetMajorVersion(
*,
handle: cuest.bindings.cuest.cuestHandle,
majorVersion: cuest.bindings.cuest.data_uint32_t,
) cuest.bindings.cuest.CuestStatus#

Gets the major version of the cuEST library.

Parameters#

handle[in]cuestHandle

Opaque cuEST handle (must not be NULL).

majorVersion[out]data_uint32_t

Major version of the cuEST library.

Returns#

statusCuestStatus
cuest.bindings.cuestGetMinorVersion(
*,
handle: cuest.bindings.cuest.cuestHandle,
minorVersion: cuest.bindings.cuest.data_uint32_t,
) cuest.bindings.cuest.CuestStatus#

Gets the minor version of the cuEST library.

Parameters#

handle[in]cuestHandle

Opaque cuEST handle (must not be NULL).

minorVersion[out]data_uint32_t

Minor version of the cuEST library.

Returns#

statusCuestStatus
cuest.bindings.cuestGetPatchVersion(
*,
handle: cuest.bindings.cuest.cuestHandle,
patchVersion: cuest.bindings.cuest.data_uint32_t,
) cuest.bindings.cuest.CuestStatus#

Gets the patch version of the cuEST library.

Parameters#

handle[in]cuestHandle

Opaque cuEST handle (must not be NULL).

patchVersion[out]data_uint32_t

Patch version of the cuEST library.

Returns#

statusCuestStatus