Thin C++-flavored wrappers for the CUDA Runtime API
Public Member Functions | List of all members
cuda::device::properties_t Struct Reference

A structure holding a collection various properties of a device. More...

#include <device_properties.hpp>

Inheritance diagram for cuda::device::properties_t:
Inheritance graph
Collaboration diagram for cuda::device::properties_t:
Collaboration graph

Public Member Functions

 properties_t (const cudaDeviceProp &cdp) noexcept
 properties_t (cudaDeviceProp &&cdp) noexcept
bool usable_for_compute () const noexcept
compute_capability_t compute_capability () const noexcept
compute_architecture_t compute_architecture () const noexcept
pci_location_t pci_id () const noexcept
unsigned long long max_in_flight_threads_on_device () const
grid::block_dimension_t max_threads_per_block () const noexcept
grid::block_dimension_t max_warps_per_block () const noexcept
size_t max_shared_memory_per_block () const noexcept
size_t global_memory_size () const noexcept
bool can_map_host_memory () const noexcept

Detailed Description

A structure holding a collection various properties of a device.

Somewhat annoyingly, CUDA devices have attributes, properties and flags. Attributes have integral number values; properties have all sorts of values, including arrays and limited-length strings (see cuda::device::properties_t), and flags are either binary or small-finite-domain type fitting into an overall flagss value (see cuda::device_t::flags_t). Flags and properties are obtained all at once, attributes are more one-at-a-time.

The documentation for this struct was generated from the following file: