Intel® oneAPI Math Kernel Library Developer Reference - C

Configuration Settings

Each of the configuration parameters is identified by a named constant in the MKL_DFTI module. These named constants have the enumeration type DFTI_CONFIG_PARAM.

All the Intel® oneAPI Math Kernel Library FFT configuration parameters are readable. Some of them are read-only, while others can be set using theDftiCreateDescriptor or DftiSetValue function.

Values of the configuration parameters fall into the following groups:

The Table "Configuration Parameters" summarizes the information on configuration parameters, along with their types and values. For more details of each configuration parameter, see the subsection describing this parameter.

Configuration Parameters

Configuration Parameter

Type/Value

Comments

Most common configuration parameters, no default, must be set explicitly by DftiCreateDescriptor

DFTI_PRECISION

Named constant DFTI_SINGLE or DFTI_DOUBLE

Precision of the computation.

DFTI_FORWARD_DOMAIN

Named constant DFTI_COMPLEX or DFTI_REAL

Type of the transform.

DFTI_DIMENSION

Integer scalar

Dimension of the transform.

DFTI_LENGTHS

Integer scalar/array

Lengths of each dimension.

Common configuration parameters, settable by DftiSetValue

DFTI_PLACEMENT

Named constant DFTI_INPLACE or DFTI_NOT_INPLACE

Defines whether the result overwrites the input data. Default value: DFTI_INPLACE.

DFTI_FORWARD_SCALE

Floating-point scalar

Scale factor for the forward transform.

Default value: 1.0.

Precision of the value should be the same as defined by DFTI_PRECISION.

DFTI_BACKWARD_SCALE

Floating-point scalar

Scale factor for the backward transform.

Default value: 1.0.

Precision of the value should be the same as defined by DFTI_PRECISION.

DFTI_NUMBER_OF_USER_THREADS

Integer scalar

This configuration parameter is no longer used and kept for compatibility with previous versions of Intel® oneAPI Math Kernel Library.

DFTI_THREAD_LIMIT

Integer scalar

Limits the number of threads for the DftiComputeForward and DftiComputeBackward.

Default value: 0.

DFTI_DESCRIPTOR_NAME

Character string

Assigns a name to a descriptor. Assumed length of the string is DFTI_MAX_NAME_LENGTH.

Default value: empty string.

Data layout configuration parameters for single and multiple transforms. Settable by DftiSetValue

DFTI_INPUT_STRIDES

Integer array

Defines the input data layout.

DFTI_OUTPUT_STRIDES

Integer array

Defines the output data layout.

DFTI_NUMBER_OF_TRANSFORMS

Integer scalar

Number of transforms.

Default value: 1.

DFTI_INPUT_DISTANCE

Integer scalar

Defines the distance between input data sets for multiple transforms.

Default value: 0.

DFTI_OUTPUT_DISTANCE

Integer scalar

Defines the distance between output data sets for multiple transforms.

Default value: 0.

DFTI_COMPLEX_STORAGE

Named constant DFTI_COMPLEX_COMPLEX or DFTI_REAL_REAL

Defines whether the real and imaginary parts of data for a complex transform are interleaved in one array or split in two arrays.

Default value: DFTI_COMPLEX_COMPLEX.

DFTI_REAL_STORAGE

Named constant DFTI_REAL_REAL

Defines how real data for a real transform is stored. Only the DFTI_REAL_REAL value is supported.

DFTI_CONJUGATE_EVEN_STORAGE

Named constant DFTI_COMPLEX_COMPLEX or DFTI_COMPLEX_REAL

Defines whether the complex data in the backward domain of a real transform is stored as complex elements or as real elements.

For the default value, see the detailed description.

DFTI_PACKED_FORMAT

Named constant DFTI_CCE_FORMAT, DFTI_CCS_FORMAT, DFTI_PACK_FORMAT, or DFTI_PERM_FORMAT

Defines the layout of real elements in the backward domain of a one-dimensional or two-dimensional real transform.

Advanced configuration parameters, settable by DftiSetValue

DFTI_WORKSPACE

Named constant DFTI_ALLOW or DFTI_AVOID

Defines whether the library should prefer algorithms using additional memory.

Default value: DFTI_ALLOW.

DFTI_ORDERING

Named constant DFTI_ORDERED or DFTI_BACKWARD_SCRAMBLED

Defines whether the result of a complex transform is ordered or permuted.

Default value: DFTI_ORDERED.

Read-Only configuration parameters

DFTI_COMMIT_STATUS

Named constant DFTI_UNCOMMITTED or DFTI_COMMITTED

Readiness of the descriptor for computation.

DFTI_VERSION

String

Version of Intel® oneAPI Math Kernel Library. Assumed length of the string isDFTI_VERSION_LENGTH.

See Also