Each of the configuration parameters is identified by a named constant in the MKL_DFTI module. In C, these named constants have the enumeration type DFTI_CONFIG_PARAM.
All the Intel MKL FFT configuration parameters are readable. Some of them are read-only, while the other can be set using the DftiCreateDescriptor or DftiSetValue function.
Values of the configuration parameters fall into the following groups:
Table "Configuration Parameters" summarises 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 |
||
Named constant DFTI_SINGLE or DFTI_DOUBLE |
Precision of the computation. |
|
Named constant DFTI_COMPLEX or DFTI_REAL |
Type of the transform. |
|
Integer scalar |
Dimension of the transform. |
|
Integer scalar/array |
Lengths of each dimension. |
|
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 |
Number of threads that concurrently use the same descriptor to compute FFT. |
|
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. |
Configuration parameters regarding data layout, for single and multiple transforms. Settable by DftiSetValue |
||
Integer array |
Defines the input data layout. |
|
Integer array |
Defines the output data layout. |
|
Integer scalar |
Number of transforms. Default value: 1. |
|
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 MKL. Assumed length of the string is DFTI_VERSION_LENGTH. |
Copyright © 1994 - 2011, Intel Corporation. All rights reserved.