Trait DeviceInfoTraitConst

Source
pub trait DeviceInfoTraitConst {
Show 59 methods // Required method fn as_raw_DeviceInfo(&self) -> *const c_void; // Provided methods fn device_id(&self) -> Result<i32> { ... } fn name(&self) -> Result<String> { ... } fn total_global_mem(&self) -> Result<size_t> { ... } fn shared_mem_per_block(&self) -> Result<size_t> { ... } fn regs_per_block(&self) -> Result<i32> { ... } fn warp_size(&self) -> Result<i32> { ... } fn mem_pitch(&self) -> Result<size_t> { ... } fn max_threads_per_block(&self) -> Result<i32> { ... } fn max_threads_dim(&self) -> Result<Vec3i> { ... } fn max_grid_size(&self) -> Result<Vec3i> { ... } fn clock_rate(&self) -> Result<i32> { ... } fn total_const_mem(&self) -> Result<size_t> { ... } fn major_version(&self) -> Result<i32> { ... } fn minor_version(&self) -> Result<i32> { ... } fn texture_alignment(&self) -> Result<size_t> { ... } fn texture_pitch_alignment(&self) -> Result<size_t> { ... } fn multi_processor_count(&self) -> Result<i32> { ... } fn kernel_exec_timeout_enabled(&self) -> Result<bool> { ... } fn integrated(&self) -> Result<bool> { ... } fn can_map_host_memory(&self) -> Result<bool> { ... } fn compute_mode(&self) -> Result<DeviceInfo_ComputeMode> { ... } fn max_texture1_d(&self) -> Result<i32> { ... } fn max_texture1_d_mipmap(&self) -> Result<i32> { ... } fn max_texture1_d_linear(&self) -> Result<i32> { ... } fn max_texture_2d(&self) -> Result<Vec2i> { ... } fn max_texture_2d_mipmap(&self) -> Result<Vec2i> { ... } fn max_texture_2d_linear(&self) -> Result<Vec3i> { ... } fn max_texture_2d_gather(&self) -> Result<Vec2i> { ... } fn max_texture_3d(&self) -> Result<Vec3i> { ... } fn max_texture_cubemap(&self) -> Result<i32> { ... } fn max_texture1_d_layered(&self) -> Result<Vec2i> { ... } fn max_texture_2d_layered(&self) -> Result<Vec3i> { ... } fn max_texture_cubemap_layered(&self) -> Result<Vec2i> { ... } fn max_surface1_d(&self) -> Result<i32> { ... } fn max_surface_2d(&self) -> Result<Vec2i> { ... } fn max_surface_3d(&self) -> Result<Vec3i> { ... } fn max_surface1_d_layered(&self) -> Result<Vec2i> { ... } fn max_surface_2d_layered(&self) -> Result<Vec3i> { ... } fn max_surface_cubemap(&self) -> Result<i32> { ... } fn max_surface_cubemap_layered(&self) -> Result<Vec2i> { ... } fn surface_alignment(&self) -> Result<size_t> { ... } fn concurrent_kernels(&self) -> Result<bool> { ... } fn ecc_enabled(&self) -> Result<bool> { ... } fn pci_bus_id(&self) -> Result<i32> { ... } fn pci_device_id(&self) -> Result<i32> { ... } fn pci_domain_id(&self) -> Result<i32> { ... } fn tcc_driver(&self) -> Result<bool> { ... } fn async_engine_count(&self) -> Result<i32> { ... } fn unified_addressing(&self) -> Result<bool> { ... } fn memory_clock_rate(&self) -> Result<i32> { ... } fn memory_bus_width(&self) -> Result<i32> { ... } fn l2_cache_size(&self) -> Result<i32> { ... } fn max_threads_per_multi_processor(&self) -> Result<i32> { ... } fn query_memory( &self, total_memory: &mut size_t, free_memory: &mut size_t, ) -> Result<()> { ... } fn free_memory(&self) -> Result<size_t> { ... } fn total_memory(&self) -> Result<size_t> { ... } fn supports(&self, feature_set: FeatureSet) -> Result<bool> { ... } fn is_compatible(&self) -> Result<bool> { ... }
}
Expand description

Constant methods for core::DeviceInfo

Required Methods§

Provided Methods§

Source

fn device_id(&self) -> Result<i32>

Returns system index of the CUDA device starting with 0.

Source

fn name(&self) -> Result<String>

ASCII string identifying device

Source

fn total_global_mem(&self) -> Result<size_t>

global memory available on device in bytes

Source

fn shared_mem_per_block(&self) -> Result<size_t>

shared memory available per block in bytes

Source

fn regs_per_block(&self) -> Result<i32>

32-bit registers available per block

Source

fn warp_size(&self) -> Result<i32>

warp size in threads

Source

fn mem_pitch(&self) -> Result<size_t>

maximum pitch in bytes allowed by memory copies

Source

fn max_threads_per_block(&self) -> Result<i32>

maximum number of threads per block

Source

fn max_threads_dim(&self) -> Result<Vec3i>

maximum size of each dimension of a block

Source

fn max_grid_size(&self) -> Result<Vec3i>

maximum size of each dimension of a grid

Source

fn clock_rate(&self) -> Result<i32>

clock frequency in kilohertz

Source

fn total_const_mem(&self) -> Result<size_t>

constant memory available on device in bytes

Source

fn major_version(&self) -> Result<i32>

major compute capability

Source

fn minor_version(&self) -> Result<i32>

minor compute capability

Source

fn texture_alignment(&self) -> Result<size_t>

alignment requirement for textures

Source

fn texture_pitch_alignment(&self) -> Result<size_t>

pitch alignment requirement for texture references bound to pitched memory

Source

fn multi_processor_count(&self) -> Result<i32>

number of multiprocessors on device

Source

fn kernel_exec_timeout_enabled(&self) -> Result<bool>

specified whether there is a run time limit on kernels

Source

fn integrated(&self) -> Result<bool>

device is integrated as opposed to discrete

Source

fn can_map_host_memory(&self) -> Result<bool>

device can map host memory with cudaHostAlloc/cudaHostGetDevicePointer

Source

fn compute_mode(&self) -> Result<DeviceInfo_ComputeMode>

compute mode

Source

fn max_texture1_d(&self) -> Result<i32>

maximum 1D texture size

Source

fn max_texture1_d_mipmap(&self) -> Result<i32>

maximum 1D mipmapped texture size

Source

fn max_texture1_d_linear(&self) -> Result<i32>

maximum size for 1D textures bound to linear memory

Source

fn max_texture_2d(&self) -> Result<Vec2i>

maximum 2D texture dimensions

Source

fn max_texture_2d_mipmap(&self) -> Result<Vec2i>

maximum 2D mipmapped texture dimensions

Source

fn max_texture_2d_linear(&self) -> Result<Vec3i>

maximum dimensions (width, height, pitch) for 2D textures bound to pitched memory

Source

fn max_texture_2d_gather(&self) -> Result<Vec2i>

maximum 2D texture dimensions if texture gather operations have to be performed

Source

fn max_texture_3d(&self) -> Result<Vec3i>

maximum 3D texture dimensions

Source

fn max_texture_cubemap(&self) -> Result<i32>

maximum Cubemap texture dimensions

Source

fn max_texture1_d_layered(&self) -> Result<Vec2i>

maximum 1D layered texture dimensions

Source

fn max_texture_2d_layered(&self) -> Result<Vec3i>

maximum 2D layered texture dimensions

Source

fn max_texture_cubemap_layered(&self) -> Result<Vec2i>

maximum Cubemap layered texture dimensions

Source

fn max_surface1_d(&self) -> Result<i32>

maximum 1D surface size

Source

fn max_surface_2d(&self) -> Result<Vec2i>

maximum 2D surface dimensions

Source

fn max_surface_3d(&self) -> Result<Vec3i>

maximum 3D surface dimensions

Source

fn max_surface1_d_layered(&self) -> Result<Vec2i>

maximum 1D layered surface dimensions

Source

fn max_surface_2d_layered(&self) -> Result<Vec3i>

maximum 2D layered surface dimensions

Source

fn max_surface_cubemap(&self) -> Result<i32>

maximum Cubemap surface dimensions

Source

fn max_surface_cubemap_layered(&self) -> Result<Vec2i>

maximum Cubemap layered surface dimensions

Source

fn surface_alignment(&self) -> Result<size_t>

alignment requirements for surfaces

Source

fn concurrent_kernels(&self) -> Result<bool>

device can possibly execute multiple kernels concurrently

Source

fn ecc_enabled(&self) -> Result<bool>

device has ECC support enabled

Source

fn pci_bus_id(&self) -> Result<i32>

PCI bus ID of the device

Source

fn pci_device_id(&self) -> Result<i32>

PCI device ID of the device

Source

fn pci_domain_id(&self) -> Result<i32>

PCI domain ID of the device

Source

fn tcc_driver(&self) -> Result<bool>

true if device is a Tesla device using TCC driver, false otherwise

Source

fn async_engine_count(&self) -> Result<i32>

number of asynchronous engines

Source

fn unified_addressing(&self) -> Result<bool>

device shares a unified address space with the host

Source

fn memory_clock_rate(&self) -> Result<i32>

peak memory clock frequency in kilohertz

Source

fn memory_bus_width(&self) -> Result<i32>

global memory bus width in bits

Source

fn l2_cache_size(&self) -> Result<i32>

size of L2 cache in bytes

Source

fn max_threads_per_multi_processor(&self) -> Result<i32>

maximum resident threads per multiprocessor

Source

fn query_memory( &self, total_memory: &mut size_t, free_memory: &mut size_t, ) -> Result<()>

gets free and total device memory

Source

fn free_memory(&self) -> Result<size_t>

Source

fn total_memory(&self) -> Result<size_t>

Source

fn supports(&self, feature_set: FeatureSet) -> Result<bool>

Provides information on CUDA feature support.

§Parameters
  • feature_set: Features to be checked. See cuda::FeatureSet.

This function returns true if the device has the specified CUDA feature. Otherwise, it returns false

Source

fn is_compatible(&self) -> Result<bool>

Checks the CUDA module and device compatibility.

This function returns true if the CUDA module can be run on the specified device. Otherwise, it returns false .

Implementors§