Block-Structured AMR Software Framework
AMReX_GpuDevice.H File Reference
#include <AMReX_Config.H>
#include <AMReX.H>
#include <AMReX_Extension.H>
#include <AMReX_Utility.H>
#include <AMReX_GpuTypes.H>
#include <AMReX_GpuError.H>
#include <AMReX_GpuControl.H>
#include <AMReX_OpenMP.H>
#include <AMReX_Vector.H>
#include <algorithm>
#include <array>
#include <cstdlib>
#include <cstring>
#include <memory>

Go to the source code of this file.

Classes

class  amrex::Gpu::Device
 

Namespaces

 amrex
 
 amrex::Gpu
 

Macros

#define AMREX_GPU_MAX_STREAMS   8
 

Typedefs

using amrex::gpuDeviceProp_t = cudaDeviceProp
 

Functions

gpuStream_t amrex::Gpu::gpuStream () noexcept
 
int amrex::Gpu::numGpuStreams () noexcept
 
void amrex::Gpu::synchronize () noexcept
 
void amrex::Gpu::streamSynchronize () noexcept
 
void amrex::Gpu::streamSynchronizeAll () noexcept
 
void amrex::Gpu::htod_memcpy_async (void *p_d, const void *p_h, const std::size_t sz) noexcept
 
void amrex::Gpu::dtoh_memcpy_async (void *p_h, const void *p_d, const std::size_t sz) noexcept
 
void amrex::Gpu::dtod_memcpy_async (void *p_d_dst, const void *p_d_src, const std::size_t sz) noexcept
 
void amrex::Gpu::htod_memcpy (void *p_d, const void *p_h, const std::size_t sz) noexcept
 
void amrex::Gpu::dtoh_memcpy (void *p_h, const void *p_d, const std::size_t sz) noexcept
 
void amrex::Gpu::dtod_memcpy (void *p_d_dst, const void *p_d_src, const std::size_t sz) noexcept
 
template<typename T >
void amrex::Gpu::memcpy_from_host_to_device_global_async (T &dg, const void *src, std::size_t nbytes, std::size_t offset=0)
 
template<typename T >
void amrex::Gpu::memcpy_from_device_global_to_host_async (void *dst, T const &dg, std::size_t nbytes, std::size_t offset=0)
 

Macro Definition Documentation

◆ AMREX_GPU_MAX_STREAMS

#define AMREX_GPU_MAX_STREAMS   8