|
Uni20
Asynchronous tensor and runtime library.
|
CUDA device, stream, resource, and scoped runtime primitives. More...
#include <uni20/backend/cuda/device.hpp>#include <uni20/common/trace.hpp>#include <cuda_runtime_api.h>#include <atomic>#include <cstddef>#include <memory>#include <mutex>#include <optional>#include <span>#include <type_traits>#include <typeindex>#include <unordered_map>#include <utility>#include <vector>Go to the source code of this file.
Classes | |
| class | uni20::cuda::Completion |
| Shared completion token for one submitted CUDA operation. More... | |
| class | uni20::cuda::DeviceResources |
| Mutable stream and provider resources associated with one CUDA device. More... | |
| struct | uni20::cuda::DeviceResources::Config |
| Configuration for one device's mutable CUDA resources. More... | |
| class | uni20::cuda::Runtime |
| Scoped owner of the process-wide CUDA resource installation. More... | |
| struct | uni20::cuda::RuntimeConfig |
| Configuration for one scoped process-wide CUDA runtime installation. More... | |
| class | uni20::cuda::ScopedDevice |
| Temporarily select one CUDA device and restore the previous device on destruction. More... | |
| class | uni20::cuda::Stream |
| Reference-counted lease of one CUDA stream-pool slot. More... | |
| class | uni20::cuda::StreamPool |
| Device-local pool whose streams become available only after their queued work completes. More... | |
| struct | uni20::cuda::StreamPool::Config |
| Configuration for a device-local idle-stream pool. More... | |
Namespaces | |
| namespace | uni20 |
| namespace | uni20::cuda |
Functions | |
| DeviceResources & | uni20::cuda::device_resources () |
| Return canonical resources for the installed runtime's default device. | |
| DeviceResources & | uni20::cuda::device_resources (int device) |
| Return canonical resources for an enrolled CUDA device. | |
| Runtime | uni20::cuda::initialize (RuntimeConfig config={}) |
| Install and return a scoped process-wide CUDA runtime owner. | |
| bool | uni20::cuda::is_initialized () noexcept |
| Return whether a process-wide CUDA runtime is currently installed. | |
| Runtime & | uni20::cuda::runtime () |
| Return the installed runtime or fail when CUDA was not initialized. | |
CUDA device, stream, resource, and scoped runtime primitives.