-
Notifications
You must be signed in to change notification settings - Fork 85
Clients
Source: https://github.com/ROCmSoftwarePlatform/rocFFT/tree/develop/clients/tests
CMake build option: BUILD_CLIENTS_TESTS
Check running options: ./rocfft-test -h
rocfft-test is the functional coverage tests for rocFFT. As default, it go through all enabled tests. One also could run rocfft-test manually with the options similar to rocfft-rider to verify specific case.
Source: https://github.com/ROCmSoftwarePlatform/rocFFT/blob/develop/clients/rider/rider.cpp
CMake build option: BUILD_CLIENTS_RIDER
Check running options: ./rocfft-rider -h
rofft-rider benchmarks on a single FFT problem with various configurations.
Source: https://github.com/ROCmSoftwarePlatform/rocFFT/blob/develop/clients/rider/dyna-rider.cpp
CMake build option: BUILD_CLIENTS_RIDER
Check running options: ./dyna-rocfft-rider -h
dyna-rocfft-rider benchmarks on a single FFT problem as well. It provides advanced option to test one problem within single test binary but dynamic loading rocFFT libraries from different builds. The rocFFT library to be tested with dyna-rocfft-rider need to be built with CMake option "-DSINGLELIB=ON".
Source: https://github.com/ROCmSoftwarePlatform/rocFFT/tree/develop/scripts/perf
Check running options: ./alltime.py -h
alltime.py is the tool to benchmark, plot, and generate performance report of rocFFT with a group of test suites. For each suite, It outputs median(time, gflops, roofline) and its detailed scatter(time) diagram. It is based on rocfft-rider or dyna-rocfft-rider. The interactive mode allows user doing EXECUTE/PLOT/DOCUMENT separately.
Dependency: It requires python3, numpy, tex, asymptote. The setup could be:
-
numpy:
sudo apt-get install python3-numpy
-
tex: wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz
tar -xvf install-tl-unx.tar.gz
cd install-tl-xxxxxxxx
./install-tl
export PATH=${HOME}/tex/bin/x86_64-linux:${PATH}
-
asymptote wget https://cfhcable.dl.sourceforge.net/project/asymptote/2.61/asymptote-2.61.src.tgz
tar -xvf asymptote-2.61.src.tgz cd asymptote-2.61
./configure --prefix=${HOME}/asy && make && make install
export PATH=${HOME}/asy/bin:${PATH}
Examples:
- Test 2 builds of rocFFT with rocfft-rider: ./alltime.py -i ../build0/clients/staging/ -i ../build1/clients/staging/ -o ../working_dir/old -o ../working_dir/new/ -l old -l new -w ../working_dir/report -d 1
- Test 2 builds of rocFFT with dyna-rocfft-rider: ./alltime.py -b ../rocFFT/build/clients/staging/ -i ../build0/library/src/ -i ../build1/library/src/ -o ../working_dir/old -o ../working_dir/new/ -l old -l new -w ../working_dir/report -d 1