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 FFT configuration parameters are readable. Some of them are read-only, while others can be set using the
Intel® oneAPI Math Kernel Library
DftiCreateDescriptor
or
DftiSetValue
function.
Values of the configuration parameters fall into the following groups:
- Values that have native data types. For example, the number of simultaneous transforms requested has an integer value, while the scale factor for a forward transform is a single-precision number.
- Values that are discrete in nature and are provided in theMKL_DFTImodule as named constants. For example, the domain of the forward transform requires values to be named constants.Thenamed constants for configuration values have the enumeration typeDFTI_CONFIG_VALUE.
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 Parameter
| Type/Value
| Comments
|
---|---|---|
Most common configuration parameters, no default, must be set explicitly by
DftiCreateDescriptor | ||
Common configuration parameters, settable by
DftiSetValue | ||
Named constant
DFTI_INPLACE or
DFTI_NOT_INPLACE | Defines whether the result overwrites the input data. Default value:
DFTI_INPLACE .
| |
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 .
| |
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 .
| |
Integer scalar
| This configuration parameter is no longer used and kept for compatibility with previous versions of Intel® oneAPI Math Kernel Library | |
Integer scalar
| ||
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 | ||
Integer scalar
| Defines the distance between input data sets for multiple transforms.
Default value: 0.
| |
Integer scalar
| Defines the distance between output data sets for multiple transforms.
Default value: 0.
| |
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 .
| |
Named constant
DFTI_REAL_REAL | Defines how real data for a real transform is stored. Only the
DFTI_REAL_REAL value is supported.
| |
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.
| |
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 | ||
Named constant
DFTI_ALLOW or
DFTI_AVOID | Defines whether the library should prefer algorithms using additional memory.
Default value:
DFTI_ALLOW .
| |
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 | ||
Named constant
DFTI_UNCOMMITTED or
DFTI_COMMITTED | Readiness of the descriptor for computation.
| |
DFTI_VERSION | String
| Version of Intel® oneAPI Math Kernel Library DFTI_VERSION_LENGTH .
|