Struct opencv::core::DeviceInfo

source ·
pub struct DeviceInfo { /* private fields */ }
Expand description

Class providing functionality for querying the specified GPU properties.

Implementations§

source§

impl DeviceInfo

source

pub fn default() -> Result<DeviceInfo>

creates DeviceInfo object for the current GPU

source

pub fn new(device_id: i32) -> Result<DeviceInfo>

The constructors.

Parameters
  • device_id: System index of the CUDA device starting with 0.

Constructs the DeviceInfo object for the specified device. If device_id parameter is missed, it constructs an object for the current device.

Trait Implementations§

source§

impl Boxed for DeviceInfo

source§

unsafe fn from_raw(ptr: *mut c_void) -> Self

Wrap the specified raw pointer Read more
source§

fn into_raw(self) -> *mut c_void

Return an the underlying raw pointer while consuming this wrapper. Read more
source§

fn as_raw(&self) -> *const c_void

Return the underlying raw pointer. Read more
source§

fn as_raw_mut(&mut self) -> *mut c_void

Return the underlying mutable raw pointer Read more
source§

impl DeviceInfoTrait for DeviceInfo

source§

impl DeviceInfoTraitConst for DeviceInfo

source§

fn as_raw_DeviceInfo(&self) -> *const c_void

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_texture2_d_mipmap(&self) -> Result<Vec2i>

maximum 2D mipmapped texture dimensions
source§

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

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

fn max_texture2_d_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_texture2_d_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_surface2_d_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. Read more
source§

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

Checks the CUDA module and device compatibility. Read more
source§

impl Drop for DeviceInfo

source§

fn drop(&mut self)

Executes the destructor for this type. Read more
source§

impl Send for DeviceInfo

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.