-
Notifications
You must be signed in to change notification settings - Fork 62
InstallingclAmdFft
!!!This page is deprecated. Look at Installing clFFT, which is used by the latest version of ADDA. Moreover, clAmdFft (used by ADDA v.1.3b4) is no more available for download.
clAmdFft library provides the default way to perform the FFTs in OpenCL version of ADDA. This library already significantly outperforms the built-in Apple clFFT routines and is expected to develop further. Therefore, its use on any system with GPU is highly recommended. The following guidelines are based on clAmdFft version 1.10.274 (or 321).
-
Download(broken) the package of clAmdFft for Linux and install it. The default installation directory is
/opt/clAmdFft-<version>. It is also possible to specify any other directory, for example, inside the home directory of a particular user. -
Either
- specify paths to
includeandlib64(orlib32) subdirectories of the install directory in filesrc/ocl/Makefile, as described in CompilingADDA. - or add
.../includeto environmental variableC_INCLUDE_PATHand.../lib64(orlib32) - toLIBRARY_PATHandLD_LIBRARY_PATH(for linking and runtime). SettingLD_LIBRARY_PATHcan be replaced by modifying/etc/ld.so.confor by sourcingappmlEnv.shin the installation directory.
- specify paths to
-
There is a known bug when using clAmdFft together with
libOpenCL.soprovided by Nvidia GPU driver. During linking spurious errors appear, like:...libclAmdFft.Runtime.so: undefined reference to `cl...@OPENCL_1.0'It has been discussed in a few places (1, 2, 3). Currently, the simplest workaround seems to uncomment the line
LDFLAGS +=-Wl,--unresolved-symbols=ignore-in-shared-libsin
src/ocl/Makefile. On Unix it is even better to switch to open-source implementation oflibOpenCL.so(see OpenCL#Headers_and_libraries) -
Also on Unix clAmdFft may need pthread library, which is not linked by default. One way to fix this problem is to uncomment the following line in
src/ocl/Makefile.LDLIBS += -lpthread
If you just want to use ADDA executables for Windows, do not worry about clAmdFft at all. An appropriate DLL is included in the corresponding package.
If you want to compile adda_ocl on Windows yourself, proceed further:
-
Download(broken) the installer of clAmdFft for Windows and install it. The default installation directory is
C:\Program Files (x86)\AMD\clAmdFftorC:\Program Files\AMD\clAmdFft. - Add
bin64orbin32(depending on the Windows bitness) subdirectory in the installation directory to Windows environmental variablePATH - Either
- specify paths to
includeandbin64(orbin32) subdirectories of the install directory in filesrc/ocl/Makefile, as described in CompilingADDA. The compiler will link directly to*.dll(instead of*.lib). - or copy contents of
includefolder andclAmdFft.Runtime.dllofbinfolder to correspondingincludeandlibfolders of the MinGW/MSYS environment.
- specify paths to
Home (Getting started)
Frequently asked questions
Features
Tutorial
Comparison with other codes
Largest simulations
Compiling ADDA
Installing FFTW3
Installing MPI
Using OpenCL
Installing clFFT
Installing clBLAS
Using sparse mode
Installing MinGW
Using MSYS2
Using Spack
Papers that use ADDA
Awards
References
Links
Acknowledgements
Instruction for committers
Code design & structure
Style guide
Using VS Code
Using Eclipse
Early development history
Adding new ...