OpenVDB 13.1.0
Loading...
Searching...
No Matches
DeviceMesh.h File Reference

nanovdb::cuda::DeviceMesh encapsulates device IDs, CUDA streams, and NCCL communicators in order to facilitate multi-GPU applications. More...

#include <vector>
#include <algorithm>
#include <thread>
#include <nanovdb/util/cuda/Util.h>

Go to the source code of this file.

Classes

class  DeviceGuard
 RAII class that caches/restores the current device at construction/destruction. More...
struct  DeviceNode
 POD struct representing a device id and a stream on that device. More...
class  DeviceMesh
 This class wraps a vector of per-device IDs and CUDA streams and holds inter-device connectivity information and NCCL comms. More...

Namespaces

namespace  nanovdb
 Defines a simple memory pool used to call cub functions that use dynamic temporary storage.
namespace  nanovdb::cuda
namespace  nanovdb::cuda::detail

Functions

void * queryAllocationGranularityEntryPoint ()
size_t minDevicePageSize (const DeviceMesh &mesh)
 Returns the minimum page size (in bytes) across all devices on the system.

Detailed Description

nanovdb::cuda::DeviceMesh encapsulates device IDs, CUDA streams, and NCCL communicators in order to facilitate multi-GPU applications.