Developer Reference

Contents

DftiCreateDescriptorDM

Allocates memory for the descriptor data structure and preliminarily initializes it.

Syntax

status
=
DftiCreateDescriptorDM
(
comm
,
&handle
,
v1
,
v2
,
dim
,
size
)
;
status
=
DftiCreateDescriptorDM
(
comm
,
&handle
,
v1
,
v2
,
dim
,
sizes
)
;
Include Files
  • mkl_cdft.h
Input Parameters
comm
MPI communicator, e.g.
MPI_COMM_WORLD
.
v1
Precision of the transform.
v2
Type of the forward domain. Must be
DFTI_COMPLEX
for complex-to-complex transforms or
DFTI_REAL
for real-to-complex transforms.
dim
Dimension of the transform.
size
Length of the transform in a one-dimensional case.
sizes
Lengths of the transform in a multi-dimensional case.
Output Parameters
handle
Pointer to the descriptor handle of transform. If the function completes successfully, the pointer to the created handle is stored in the variable.
Description
This function allocates memory in a particular MPI process for the descriptor data structure and instantiates it with default configuration settings with respect to the precision, domain, dimension, and length of the desired transform. The domain is understood to be the domain of the forward transform. The result is a pointer to the created descriptor. This function is slightly different from the "initialization" function
DftiCommitDescriptorDM
in a more traditional software packages or libraries used for computing the FFT. This function does not perform any significant computation work, such as twiddle factors computation, because the default configuration settings can still be changed using the function
DftiSetValueDM
.
The value of the parameter
v1
is specified through named constants
DFTI_SINGLE
and
DFTI_DOUBLE
. It corresponds to precision of input data, output data, and computation. A setting of
DFTI_SINGLE
indicates single-precision floating-point data type and a setting of
DFTI_DOUBLE
indicates double-precision floating-point data type.
The parameter
dim
is a simple positive integer indicating the dimension of the transform.
For
one-dimensional transforms, length is a single integer value of the parameter
size
having type
MKL_LONG
; for multi-dimensional transforms, length is supplied with the parameter
sizes
, which is an array of integers having type
MKL_LONG
.
Return Values
The function returns
DFTI_NO_ERROR
when completes successfully. In this case, the pointer to the created descriptor handle is stored in
handle
. If the function fails, it returns a value of another error class constant
(for the list of constants, refer to Error Codes).
Prototype
    MKL_LONG DftiCreateDescriptorDM(MPI_Comm,DFTI_DESCRIPTOR_DM_HANDLE*,    enum DFTI_CONFIG_VALUE,enum DFTI_CONFIG_VALUE,MKL_LONG,...);    

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804