|
waLBerla 7.3
|
Run an operation for every cell in the given interval.
The functions in this module iterate the given cell interval ci in x-fastest, z-slowest order and call func for every cell. The iteration is dispatched according to the given ExecutionTag:
Functions | |
| template<CellFunction Func> | |
| void | walberla::v8::sweep::forAllCells (const exectag::Serial &, const CellInterval &ci, Func &&func) |
| Single-thread CPU cellwise kernel dispatcher. | |
| template<CellFunction Func> | |
| void | walberla::v8::sweep::forAllCells (const exectag::OpenMP &, const CellInterval &ci, Func &&func) |
| Multi-threaded CPU cellwise kernel dispatcher using OpenMP. | |
| template<CellFunction Func> | |
| void | walberla::v8::sweep::forAllCells (const exectag::GPU &, const CellInterval &, Func &&) |
| GPU-accelerated kernel dispatcher. | |
| void walberla::v8::sweep::forAllCells | ( | const exectag::GPU & | , |
| const CellInterval & | , | ||
| Func && | ) |
GPU-accelerated kernel dispatcher.
Execute a cellwise kernel function on all cells of a given interval in parallel on the GPU
| void walberla::v8::sweep::forAllCells | ( | const exectag::OpenMP & | , |
| const CellInterval & | ci, | ||
| Func && | func ) |
Multi-threaded CPU cellwise kernel dispatcher using OpenMP.
Execute a cellwise kernel function on all cells of a given interval in parallel on the CPU using OpenMP.
| void walberla::v8::sweep::forAllCells | ( | const exectag::Serial & | , |
| const CellInterval & | ci, | ||
| Func && | func ) |
Single-thread CPU cellwise kernel dispatcher.
Execute a cellwise kernel function on all cells of a given interval in sequence on the CPU.