#include <AMReX_Config.H>
#include <AMReX_GpuQualifiers.H>
#include <AMReX_GpuKernelInfo.H>
#include <AMReX_GpuControl.H>
#include <AMReX_GpuTypes.H>
#include <AMReX_GpuError.H>
#include <AMReX_GpuRange.H>
#include <AMReX_GpuDevice.H>
#include <AMReX_GpuMemory.H>
#include <AMReX_GpuReduce.H>
#include <AMReX_Tuple.H>
#include <AMReX_Box.H>
#include <AMReX_Loop.H>
#include <AMReX_Extension.H>
#include <AMReX_BLassert.H>
#include <AMReX_TypeTraits.H>
#include <AMReX_GpuLaunchGlobal.H>
#include <AMReX_RandomEngine.H>
#include <AMReX_Algorithm.H>
#include <AMReX_Math.H>
#include <AMReX_Vector.H>
#include <cstddef>
#include <limits>
#include <algorithm>
#include <utility>
#include <AMReX_GpuLaunchMacrosG.H>
#include <AMReX_GpuLaunchFunctsG.H>
#include <AMReX_GpuLaunch.nolint.H>
#include <AMReX_CTOParallelForImpl.H>
Go to the source code of this file.
Classes | |
struct | amrex::Gpu::ComponentBox |
struct | amrex::Gpu::GridSize |
struct | amrex::Gpu::ExecutionConfig |
struct | amrex::Gpu::ExecConfig |
Namespaces | |
amrex | |
amrex::Gpu | |
Macros | |
#define | AMREX_GPU_NCELLS_PER_THREAD 3 |
#define | AMREX_GPU_Y_STRIDE 1 |
#define | AMREX_GPU_Z_STRIDE 1 |
#define | AMREX_LAUNCH_KERNEL(MT, blocks, threads, sharedMem, stream, ...) amrex::launch_global<MT><<<blocks, threads, sharedMem, stream>>>(__VA_ARGS__) |
Functions | |
template<class L , class... Lambdas> | |
AMREX_GPU_GLOBAL void | amrex::launch_global (L f0, Lambdas... fs) |
template<class L > | |
AMREX_GPU_DEVICE void | amrex::call_device (L &&f0) noexcept |
template<class L , class... Lambdas> | |
AMREX_GPU_DEVICE void | amrex::call_device (L &&f0, Lambdas &&... fs) noexcept |
template<class L > | |
void | amrex::launch_host (L &&f0) noexcept |
template<class L , class... Lambdas> | |
void | amrex::launch_host (L &&f0, Lambdas &&... fs) noexcept |
constexpr std::size_t | amrex::Gpu::numThreadsPerBlockParallelFor () |
AMREX_GPU_HOST_DEVICE Box | amrex::Gpu::getThreadBox (const Box &bx, Long offset) noexcept |
template<int MT> | |
ExecutionConfig | amrex::Gpu::makeExecutionConfig (Long N) noexcept |
template<int MT> | |
ExecutionConfig | amrex::Gpu::makeExecutionConfig (const Box &box) noexcept |
template<int MT> | |
Vector< ExecConfig > | amrex::Gpu::makeNExecutionConfigs (Long N) noexcept |
template<int MT, int dim> | |
Vector< ExecConfig > | amrex::Gpu::makeNExecutionConfigs (BoxND< dim > const &box) noexcept |
#define AMREX_GPU_NCELLS_PER_THREAD 3 |
#define AMREX_GPU_Y_STRIDE 1 |
#define AMREX_GPU_Z_STRIDE 1 |
#define AMREX_LAUNCH_KERNEL | ( | MT, | |
blocks, | |||
threads, | |||
sharedMem, | |||
stream, | |||
... | |||
) | amrex::launch_global<MT><<<blocks, threads, sharedMem, stream>>>(__VA_ARGS__) |