Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Classes | Namespaces
buffer.hpp File Reference

Typed CUDA device buffers and scoped stream access guards. More...

#include <uni20/backend/cuda/cuda_error.hpp>
#include <uni20/backend/cuda/device.hpp>
#include <uni20/backend/cuda/runtime.hpp>
#include <uni20/common/trace.hpp>
#include <algorithm>
#include <atomic>
#include <cstddef>
#include <limits>
#include <memory>
#include <mutex>
#include <span>
#include <type_traits>
#include <utility>
#include <vector>
Include dependency graph for buffer.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  uni20::cuda::AccessCompletion
 One operation-tail completion shared by multiple CUDA buffer accesses. More...
 
class  uni20::cuda::BlockingReadAccess< T >
 Scoped read-only CUDA pointer access after a host-side synchronization. More...
 
class  uni20::cuda::BlockingWriteAccess< T >
 Scoped read/write CUDA pointer access after a host-side synchronization. More...
 
class  uni20::cuda::CudaBuffer< T >
 Move-only logical CUDA buffer and completion state. More...
 
struct  uni20::cuda::CudaBufferRange
 One logical range used to partition a CUDA allocation. More...
 
class  uni20::cuda::OwningReadAccess< T >
 Read access that owns a moved CUDA buffer. More...
 
class  uni20::cuda::PartitionedCudaBuffer< T >
 One CUDA allocation partitioned into independent logical buffers. More...
 
class  uni20::cuda::PartitionedReadAccess< T >
 Scoped read access to every child of one partitioned CUDA allocation. More...
 
class  uni20::cuda::PartitionedWriteAccess< T >
 Scoped write access to every child of one partitioned CUDA allocation. More...
 
class  uni20::cuda::ReadAccess< T >
 Scoped read-only access to a CUDA buffer on one stream. More...
 
class  uni20::cuda::WriteAccess< T >
 Scoped read/write access to a CUDA buffer on one stream. More...
 

Namespaces

namespace  uni20
 
namespace  uni20::cuda
 

Detailed Description

Typed CUDA device buffers and scoped stream access guards.