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§
fn as_raw_DeviceInfo(&self) -> *const c_void
Provided Methods§
Sourcefn total_global_mem(&self) -> Result<size_t>
fn total_global_mem(&self) -> Result<size_t>
global memory available on device in bytes
shared memory available per block in bytes
Sourcefn regs_per_block(&self) -> Result<i32>
fn regs_per_block(&self) -> Result<i32>
32-bit registers available per block
Sourcefn max_threads_per_block(&self) -> Result<i32>
fn max_threads_per_block(&self) -> Result<i32>
maximum number of threads per block
Sourcefn max_threads_dim(&self) -> Result<Vec3i>
fn max_threads_dim(&self) -> Result<Vec3i>
maximum size of each dimension of a block
Sourcefn max_grid_size(&self) -> Result<Vec3i>
fn max_grid_size(&self) -> Result<Vec3i>
maximum size of each dimension of a grid
Sourcefn clock_rate(&self) -> Result<i32>
fn clock_rate(&self) -> Result<i32>
clock frequency in kilohertz
Sourcefn total_const_mem(&self) -> Result<size_t>
fn total_const_mem(&self) -> Result<size_t>
constant memory available on device in bytes
Sourcefn major_version(&self) -> Result<i32>
fn major_version(&self) -> Result<i32>
major compute capability
Sourcefn minor_version(&self) -> Result<i32>
fn minor_version(&self) -> Result<i32>
minor compute capability
Sourcefn texture_alignment(&self) -> Result<size_t>
fn texture_alignment(&self) -> Result<size_t>
alignment requirement for textures
Sourcefn texture_pitch_alignment(&self) -> Result<size_t>
fn texture_pitch_alignment(&self) -> Result<size_t>
pitch alignment requirement for texture references bound to pitched memory
Sourcefn multi_processor_count(&self) -> Result<i32>
fn multi_processor_count(&self) -> Result<i32>
number of multiprocessors on device
Sourcefn kernel_exec_timeout_enabled(&self) -> Result<bool>
fn kernel_exec_timeout_enabled(&self) -> Result<bool>
specified whether there is a run time limit on kernels
Sourcefn integrated(&self) -> Result<bool>
fn integrated(&self) -> Result<bool>
device is integrated as opposed to discrete
Sourcefn can_map_host_memory(&self) -> Result<bool>
fn can_map_host_memory(&self) -> Result<bool>
device can map host memory with cudaHostAlloc/cudaHostGetDevicePointer
Sourcefn compute_mode(&self) -> Result<DeviceInfo_ComputeMode>
fn compute_mode(&self) -> Result<DeviceInfo_ComputeMode>
compute mode
Sourcefn max_texture1_d(&self) -> Result<i32>
fn max_texture1_d(&self) -> Result<i32>
maximum 1D texture size
Sourcefn max_texture1_d_mipmap(&self) -> Result<i32>
fn max_texture1_d_mipmap(&self) -> Result<i32>
maximum 1D mipmapped texture size
Sourcefn max_texture1_d_linear(&self) -> Result<i32>
fn max_texture1_d_linear(&self) -> Result<i32>
maximum size for 1D textures bound to linear memory
Sourcefn max_texture_2d(&self) -> Result<Vec2i>
fn max_texture_2d(&self) -> Result<Vec2i>
maximum 2D texture dimensions
Sourcefn max_texture_2d_mipmap(&self) -> Result<Vec2i>
fn max_texture_2d_mipmap(&self) -> Result<Vec2i>
maximum 2D mipmapped texture dimensions
Sourcefn max_texture_2d_linear(&self) -> Result<Vec3i>
fn max_texture_2d_linear(&self) -> Result<Vec3i>
maximum dimensions (width, height, pitch) for 2D textures bound to pitched memory
Sourcefn max_texture_2d_gather(&self) -> Result<Vec2i>
fn max_texture_2d_gather(&self) -> Result<Vec2i>
maximum 2D texture dimensions if texture gather operations have to be performed
Sourcefn max_texture_3d(&self) -> Result<Vec3i>
fn max_texture_3d(&self) -> Result<Vec3i>
maximum 3D texture dimensions
Sourcefn max_texture_cubemap(&self) -> Result<i32>
fn max_texture_cubemap(&self) -> Result<i32>
maximum Cubemap texture dimensions
Sourcefn max_texture1_d_layered(&self) -> Result<Vec2i>
fn max_texture1_d_layered(&self) -> Result<Vec2i>
maximum 1D layered texture dimensions
Sourcefn max_texture_2d_layered(&self) -> Result<Vec3i>
fn max_texture_2d_layered(&self) -> Result<Vec3i>
maximum 2D layered texture dimensions
Sourcefn max_texture_cubemap_layered(&self) -> Result<Vec2i>
fn max_texture_cubemap_layered(&self) -> Result<Vec2i>
maximum Cubemap layered texture dimensions
Sourcefn max_surface1_d(&self) -> Result<i32>
fn max_surface1_d(&self) -> Result<i32>
maximum 1D surface size
Sourcefn max_surface_2d(&self) -> Result<Vec2i>
fn max_surface_2d(&self) -> Result<Vec2i>
maximum 2D surface dimensions
Sourcefn max_surface_3d(&self) -> Result<Vec3i>
fn max_surface_3d(&self) -> Result<Vec3i>
maximum 3D surface dimensions
Sourcefn max_surface1_d_layered(&self) -> Result<Vec2i>
fn max_surface1_d_layered(&self) -> Result<Vec2i>
maximum 1D layered surface dimensions
Sourcefn max_surface_2d_layered(&self) -> Result<Vec3i>
fn max_surface_2d_layered(&self) -> Result<Vec3i>
maximum 2D layered surface dimensions
Sourcefn max_surface_cubemap(&self) -> Result<i32>
fn max_surface_cubemap(&self) -> Result<i32>
maximum Cubemap surface dimensions
Sourcefn max_surface_cubemap_layered(&self) -> Result<Vec2i>
fn max_surface_cubemap_layered(&self) -> Result<Vec2i>
maximum Cubemap layered surface dimensions
Sourcefn surface_alignment(&self) -> Result<size_t>
fn surface_alignment(&self) -> Result<size_t>
alignment requirements for surfaces
Sourcefn concurrent_kernels(&self) -> Result<bool>
fn concurrent_kernels(&self) -> Result<bool>
device can possibly execute multiple kernels concurrently
Sourcefn ecc_enabled(&self) -> Result<bool>
fn ecc_enabled(&self) -> Result<bool>
device has ECC support enabled
Sourcefn pci_bus_id(&self) -> Result<i32>
fn pci_bus_id(&self) -> Result<i32>
PCI bus ID of the device
Sourcefn pci_device_id(&self) -> Result<i32>
fn pci_device_id(&self) -> Result<i32>
PCI device ID of the device
Sourcefn pci_domain_id(&self) -> Result<i32>
fn pci_domain_id(&self) -> Result<i32>
PCI domain ID of the device
Sourcefn tcc_driver(&self) -> Result<bool>
fn tcc_driver(&self) -> Result<bool>
true if device is a Tesla device using TCC driver, false otherwise
Sourcefn async_engine_count(&self) -> Result<i32>
fn async_engine_count(&self) -> Result<i32>
number of asynchronous engines
Sourcefn unified_addressing(&self) -> Result<bool>
fn unified_addressing(&self) -> Result<bool>
device shares a unified address space with the host
Sourcefn memory_clock_rate(&self) -> Result<i32>
fn memory_clock_rate(&self) -> Result<i32>
peak memory clock frequency in kilohertz
Sourcefn memory_bus_width(&self) -> Result<i32>
fn memory_bus_width(&self) -> Result<i32>
global memory bus width in bits
Sourcefn l2_cache_size(&self) -> Result<i32>
fn l2_cache_size(&self) -> Result<i32>
size of L2 cache in bytes
Sourcefn max_threads_per_multi_processor(&self) -> Result<i32>
fn max_threads_per_multi_processor(&self) -> Result<i32>
maximum resident threads per multiprocessor
Sourcefn query_memory(
&self,
total_memory: &mut size_t,
free_memory: &mut size_t,
) -> Result<()>
fn query_memory( &self, total_memory: &mut size_t, free_memory: &mut size_t, ) -> Result<()>
gets free and total device memory
fn free_memory(&self) -> Result<size_t>
fn total_memory(&self) -> Result<size_t>
Sourcefn supports(&self, feature_set: FeatureSet) -> Result<bool>
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
Sourcefn is_compatible(&self) -> Result<bool>
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 .