![]() |
OpenPFC
0.1.4
Phase Field Crystal simulation framework
|
Benchmark CPU (FFTW) vs GPU (CUDA) FFT performance. More...
#include <chrono>#include <iomanip>#include <iostream>#include <memory>#include <vector>#include "openpfc/core/databuffer.hpp"#include "openpfc/core/decomposition.hpp"#include "openpfc/core/world.hpp"#include "openpfc/fft.hpp"
Functions | |
| double | benchmark_fft (fft::Backend backend, const World &world, const decomposition::Decomposition &decomp, int rank_id) |
| Benchmark FFT performance for a given backend. | |
| int | main (int argc, char *argv[]) |
Variables | |
| constexpr int | GRID_SIZE = 128 |
| constexpr int | NUM_ITERATIONS = 10 |
Benchmark CPU (FFTW) vs GPU (CUDA) FFT performance.
This example demonstrates:
Compile with: cmake -B build -DOpenPFC_ENABLE_CUDA=ON cmake –build build –target fft_backend_benchmark
Run: mpirun -np 1 ./examples/fft_backend_benchmark
| double benchmark_fft | ( | fft::Backend | backend, |
| const World & | world, | ||
| const decomposition::Decomposition & | decomp, | ||
| int | rank_id | ||
| ) |
Benchmark FFT performance for a given backend.
| backend | The FFT backend to test (FFTW or CUDA) |
| world | The computational domain |
| decomp | Domain decomposition |
| rank_id | MPI rank ID |
