RISA
glados::cuda Namespace Reference

Namespaces

 detail
 

Classes

class  async_copy_policy
 
class  DeviceMemoryManager
 
class  HostMemoryManager
 
class  sync_copy_policy
 

Typedefs

template<class T , class CopyPolicy >
using device_ptr = glados::ptr< T, CopyPolicy, detail::unique_device_ptr< T >>
 
template<class T , class CopyPolicy >
using host_ptr = glados::ptr< T, CopyPolicy, detail::unique_host_ptr< T >>
 
template<class T , class CopyPolicy , class is3D >
using pitched_device_ptr = glados::pitched_ptr< T, CopyPolicy, is3D, detail::unique_device_ptr< T >>
 
template<class T , class CopyPolicy , class is3D >
using pitched_host_ptr = glados::pitched_ptr< T, CopyPolicy, is3D, detail::unique_host_ptr< T >>
 

Functions

auto check (cudaError_t err, const char *file, int line) -> void
 
auto checkCufft (cufftResult res, const char *file, int line) -> void
 
auto checkCusparse (cusparseStatus_t stat, const char *file, int line) -> void
 
__device__ auto getX () -> unsigned int
 
__device__ auto getY () -> unsigned int
 
__device__ auto getZ () -> unsigned int
 
template<typename... Args>
auto launch (std::size_t input_size, void(*kernel)(Args...), Args...args) -> void
 
template<typename... Args>
auto launch (std::size_t input_width, std::size_t input_height, void(*kernel)(Args...), Args...args) -> void
 
template<typename... Args>
auto launch (std::size_t input_width, std::size_t input_height, std::size_t input_depth, void(*kernel)(Args...), Args...args) -> void
 
template<class T , class CopyPolicy = sync_copy_policy>
auto make_device_ptr (std::size_t length) -> device_ptr< T, CopyPolicy >
 
template<class T , class CopyPolicy = sync_copy_policy>
auto make_host_ptr (std::size_t length) -> host_ptr< T, CopyPolicy >
 
template<class T , class CopyPolicy = sync_copy_policy>
auto make_device_ptr (std::size_t width, std::size_t height) -> pitched_device_ptr< T, CopyPolicy, std::false_type >
 
template<class T , class CopyPolicy = sync_copy_policy>
auto make_host_ptr (std::size_t width, std::size_t height) -> pitched_host_ptr< T, CopyPolicy, std::false_type >
 
template<class T , class CopyPolicy = sync_copy_policy>
auto make_device_ptr (std::size_t width, std::size_t height, std::size_t depth) -> pitched_device_ptr< T, CopyPolicy, std::true_type >
 
template<class T , class CopyPolicy = sync_copy_policy>
auto make_host_ptr (std::size_t width, std::size_t height, std::size_t depth) -> pitched_host_ptr< T, CopyPolicy, std::true_type >
 
template<class Dest , class Src >
auto copy_sync (Dest &dest, const Src &src) -> void
 
template<class Dest , class Src >
auto copy_async (Dest &dest, const Src &src) -> void
 

Typedef Documentation

template<class T , class CopyPolicy >
using glados::cuda::device_ptr = typedef glados::ptr<T, CopyPolicy, detail::unique_device_ptr<T>>

Definition at line 249 of file Memory.h.

template<class T , class CopyPolicy >
using glados::cuda::host_ptr = typedef glados::ptr<T, CopyPolicy, detail::unique_host_ptr<T>>

Definition at line 250 of file Memory.h.

template<class T , class CopyPolicy , class is3D >
using glados::cuda::pitched_device_ptr = typedef glados::pitched_ptr<T, CopyPolicy, is3D, detail::unique_device_ptr<T>>

Definition at line 252 of file Memory.h.

template<class T , class CopyPolicy , class is3D >
using glados::cuda::pitched_host_ptr = typedef glados::pitched_ptr<T, CopyPolicy, is3D, detail::unique_host_ptr<T>>

Definition at line 253 of file Memory.h.

Function Documentation

auto glados::cuda::check ( cudaError_t  err,
const char *  file,
int  line 
) -> void
inline

Definition at line 116 of file Check.h.

auto glados::cuda::checkCufft ( cufftResult  res,
const char *  file,
int  line 
) -> void
inline

Definition at line 121 of file Check.h.

auto glados::cuda::checkCusparse ( cusparseStatus_t  stat,
const char *  file,
int  line 
) -> void
inline

Definition at line 126 of file Check.h.

template<class Dest , class Src >
auto glados::cuda::copy_async ( Dest &  dest,
const Src &  src 
) -> void

Definition at line 360 of file Memory.h.

template<class Dest , class Src >
auto glados::cuda::copy_sync ( Dest &  dest,
const Src &  src 
) -> void

Definition at line 350 of file Memory.h.

__device__ auto glados::cuda::getX ( ) -> unsigned int
inline

Definition at line 30 of file Coordinates.h.

__device__ auto glados::cuda::getY ( ) -> unsigned int
inline

Definition at line 35 of file Coordinates.h.

__device__ auto glados::cuda::getZ ( ) -> unsigned int
inline

Definition at line 40 of file Coordinates.h.

template<typename... Args>
auto glados::cuda::launch ( std::size_t  input_size,
void(*)(Args...)  kernel,
Args...  args 
) -> void

Definition at line 55 of file Launch.h.

template<typename... Args>
auto glados::cuda::launch ( std::size_t  input_width,
std::size_t  input_height,
void(*)(Args...)  kernel,
Args...  args 
) -> void

Definition at line 70 of file Launch.h.

template<typename... Args>
auto glados::cuda::launch ( std::size_t  input_width,
std::size_t  input_height,
std::size_t  input_depth,
void(*)(Args...)  kernel,
Args...  args 
) -> void

Definition at line 88 of file Launch.h.

template<class T , class CopyPolicy = sync_copy_policy>
auto glados::cuda::make_device_ptr ( std::size_t  length) -> device_ptr<T, CopyPolicy>

Definition at line 259 of file Memory.h.

template<class T , class CopyPolicy = sync_copy_policy>
auto glados::cuda::make_device_ptr ( std::size_t  width,
std::size_t  height 
) -> pitched_device_ptr<T, CopyPolicy, std::false_type>

Definition at line 277 of file Memory.h.

template<class T , class CopyPolicy = sync_copy_policy>
auto glados::cuda::make_device_ptr ( std::size_t  width,
std::size_t  height,
std::size_t  depth 
) -> pitched_device_ptr<T, CopyPolicy, std::true_type>

Definition at line 295 of file Memory.h.

template<class T , class CopyPolicy = sync_copy_policy>
auto glados::cuda::make_host_ptr ( std::size_t  length) -> host_ptr<T, CopyPolicy>

Definition at line 268 of file Memory.h.

template<class T , class CopyPolicy = sync_copy_policy>
auto glados::cuda::make_host_ptr ( std::size_t  width,
std::size_t  height 
) -> pitched_host_ptr<T, CopyPolicy, std::false_type>

Definition at line 286 of file Memory.h.

template<class T , class CopyPolicy = sync_copy_policy>
auto glados::cuda::make_host_ptr ( std::size_t  width,
std::size_t  height,
std::size_t  depth 
) -> pitched_host_ptr<T, CopyPolicy, std::true_type>

Definition at line 306 of file Memory.h.