Quick Installation Guide¶
The cuFFTDx library is distributed as a part of the MathDx package. To download the most recent release of the MathDx package including cuFFTDx go to the https://developer.nvidia.com/mathdx website.
cuFFTDx In Your Project¶
cuFFTDx is a header-only library, thus to use it users just need to the include the directory with cufftdx.hpp into their
compilation commands. All other requirements are listed in the Requirements section.
nvcc -std=c++17 -arch sm_XY (...) -I<cufftdx_include_directory> <your_source_file>.cu -o <your_binary>
When you unpack MathDx YY.MM package tarball into in <your_directory>, cufftdx.hpp file will be available at the following
locations:
<your_directory>/nvidia/mathdx/yy.mm/include/<your_directory>/nvidia/mathdx/yy.mm/include/cufftdx/include/
You can review Makefile shipped alongside cuFFTDx examples to check how they are compiled.
cuFFTDx In Your CMake Project¶
The MathDx package and the cuFFTDx library provide configuration files that simplify using cuFFTDx in other CMake projects. After
finding mathdx using find_package, users have to link mathdx::cufftdx to their target. This propagates include directory
cufftdx_INCLUDE_DIRS and the C++17 requirement to their target.
find_package(mathdx REQUIRED COMPONENTS cufftdx CONFIG)
target_link_libraries(YourProgram mathdx::cufftdx)
You can pass the path to MathDx package using PATHS option:
find_package(mathdx REQUIRED COMPONENTS cufftdx CONFIG PATHS "<your_directory>/nvidia/mathdx/yy.mm/")
Alternatively, you can set mathdx_ROOT during cmake configuration of your project:
cmake -Dmathdx_ROOT="<your_directory>/nvidia/mathdx/yy.mm/" (...)
Defined Variables¶
cufftdx_FOUND,mathdx_cufftdx_FOUNDTrue if cuFFTDx was found.
cufftdx_INCLUDE_DIRScuFFTDx include directories.
mathdx_VERSIONMathDx package version number in
X.Y.Zformat.cuFFTDx_VERSIONcuFFTDx version number in
X.Y.Zformat.MathDx/cuFFTDx version matrix
MathDx
cuFFTDx
22.02
1.0.0
22.10
1.1.0