OpenCV  3.4.12-dev
Open Source Computer Vision
Public Types | Public Member Functions | List of all members

Class providing functionality for querying the specified GPU properties. More...

#include <opencv2/core/cuda.hpp>

Public Types

enum  ComputeMode {
  ComputeModeDefault,
  ComputeModeExclusive,
  ComputeModeProhibited,
  ComputeModeExclusiveProcess
}
 

Public Member Functions

 DeviceInfo ()
 creates DeviceInfo object for the current GPU More...
 
 DeviceInfo (int device_id)
 The constructors. More...
 
int asyncEngineCount () const
 number of asynchronous engines More...
 
bool canMapHostMemory () const
 device can map host memory with cudaHostAlloc/cudaHostGetDevicePointer More...
 
int clockRate () const
 clock frequency in kilohertz More...
 
ComputeMode computeMode () const
 compute mode More...
 
bool concurrentKernels () const
 device can possibly execute multiple kernels concurrently More...
 
int deviceID () const
 Returns system index of the CUDA device starting with 0. More...
 
bool ECCEnabled () const
 device has ECC support enabled More...
 
size_t freeMemory () const
 
bool integrated () const
 device is integrated as opposed to discrete More...
 
bool isCompatible () const
 Checks the CUDA module and device compatibility. More...
 
bool kernelExecTimeoutEnabled () const
 specified whether there is a run time limit on kernels More...
 
int l2CacheSize () const
 size of L2 cache in bytes More...
 
int majorVersion () const
 major compute capability More...
 
Vec3i maxGridSize () const
 maximum size of each dimension of a grid More...
 
int maxSurface1D () const
 maximum 1D surface size More...
 
Vec2i maxSurface1DLayered () const
 maximum 1D layered surface dimensions More...
 
Vec2i maxSurface2D () const
 maximum 2D surface dimensions More...
 
Vec3i maxSurface2DLayered () const
 maximum 2D layered surface dimensions More...
 
Vec3i maxSurface3D () const
 maximum 3D surface dimensions More...
 
int maxSurfaceCubemap () const
 maximum Cubemap surface dimensions More...
 
Vec2i maxSurfaceCubemapLayered () const
 maximum Cubemap layered surface dimensions More...
 
int maxTexture1D () const
 maximum 1D texture size More...
 
Vec2i maxTexture1DLayered () const
 maximum 1D layered texture dimensions More...
 
int maxTexture1DLinear () const
 maximum size for 1D textures bound to linear memory More...
 
int maxTexture1DMipmap () const
 maximum 1D mipmapped texture size More...
 
Vec2i maxTexture2D () const
 maximum 2D texture dimensions More...
 
Vec2i maxTexture2DGather () const
 maximum 2D texture dimensions if texture gather operations have to be performed More...
 
Vec3i maxTexture2DLayered () const
 maximum 2D layered texture dimensions More...
 
Vec3i maxTexture2DLinear () const
 maximum dimensions (width, height, pitch) for 2D textures bound to pitched memory More...
 
Vec2i maxTexture2DMipmap () const
 maximum 2D mipmapped texture dimensions More...
 
Vec3i maxTexture3D () const
 maximum 3D texture dimensions More...
 
int maxTextureCubemap () const
 maximum Cubemap texture dimensions More...
 
Vec2i maxTextureCubemapLayered () const
 maximum Cubemap layered texture dimensions More...
 
Vec3i maxThreadsDim () const
 maximum size of each dimension of a block More...
 
int maxThreadsPerBlock () const
 maximum number of threads per block More...
 
int maxThreadsPerMultiProcessor () const
 maximum resident threads per multiprocessor More...
 
int memoryBusWidth () const
 global memory bus width in bits More...
 
int memoryClockRate () const
 peak memory clock frequency in kilohertz More...
 
size_t memPitch () const
 maximum pitch in bytes allowed by memory copies More...
 
int minorVersion () const
 minor compute capability More...
 
int multiProcessorCount () const
 number of multiprocessors on device More...
 
const char * name () const
 ASCII string identifying device. More...
 
int pciBusID () const
 PCI bus ID of the device. More...
 
int pciDeviceID () const
 PCI device ID of the device. More...
 
int pciDomainID () const
 PCI domain ID of the device. More...
 
void queryMemory (size_t &totalMemory, size_t &freeMemory) const
 gets free and total device memory More...
 
int regsPerBlock () const
 32-bit registers available per block More...
 
size_t sharedMemPerBlock () const
 shared memory available per block in bytes More...
 
bool supports (FeatureSet feature_set) const
 Provides information on CUDA feature support. More...
 
size_t surfaceAlignment () const
 alignment requirements for surfaces More...
 
bool tccDriver () const
 true if device is a Tesla device using TCC driver, false otherwise More...
 
size_t textureAlignment () const
 alignment requirement for textures More...
 
size_t texturePitchAlignment () const
 pitch alignment requirement for texture references bound to pitched memory More...
 
size_t totalConstMem () const
 constant memory available on device in bytes More...
 
size_t totalGlobalMem () const
 global memory available on device in bytes More...
 
size_t totalMemory () const
 
bool unifiedAddressing () const
 device shares a unified address space with the host More...
 
int warpSize () const
 warp size in threads More...
 

Detailed Description

Class providing functionality for querying the specified GPU properties.

Member Enumeration Documentation

◆ ComputeMode

Enumerator
ComputeModeDefault 

default compute mode (Multiple threads can use cudaSetDevice with this device)

ComputeModeExclusive 

compute-exclusive-thread mode (Only one thread in one process will be able to use cudaSetDevice with this device)

ComputeModeProhibited 

compute-prohibited mode (No threads can use cudaSetDevice with this device)

ComputeModeExclusiveProcess 

compute-exclusive-process mode (Many threads in one process will be able to use cudaSetDevice with this device)

Constructor & Destructor Documentation

◆ DeviceInfo() [1/2]

cv::cuda::DeviceInfo::DeviceInfo ( )

creates DeviceInfo object for the current GPU

◆ DeviceInfo() [2/2]

cv::cuda::DeviceInfo::DeviceInfo ( int  device_id)

The constructors.

Parameters
device_idSystem 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.

Member Function Documentation

◆ asyncEngineCount()

int cv::cuda::DeviceInfo::asyncEngineCount ( ) const

number of asynchronous engines

◆ canMapHostMemory()

bool cv::cuda::DeviceInfo::canMapHostMemory ( ) const

device can map host memory with cudaHostAlloc/cudaHostGetDevicePointer

◆ clockRate()

int cv::cuda::DeviceInfo::clockRate ( ) const

clock frequency in kilohertz

◆ computeMode()

ComputeMode cv::cuda::DeviceInfo::computeMode ( ) const

compute mode

◆ concurrentKernels()

bool cv::cuda::DeviceInfo::concurrentKernels ( ) const

device can possibly execute multiple kernels concurrently

◆ deviceID()

int cv::cuda::DeviceInfo::deviceID ( ) const

Returns system index of the CUDA device starting with 0.

◆ ECCEnabled()

bool cv::cuda::DeviceInfo::ECCEnabled ( ) const

device has ECC support enabled

◆ freeMemory()

size_t cv::cuda::DeviceInfo::freeMemory ( ) const

◆ integrated()

bool cv::cuda::DeviceInfo::integrated ( ) const

device is integrated as opposed to discrete

◆ isCompatible()

bool cv::cuda::DeviceInfo::isCompatible ( ) const

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 .

◆ kernelExecTimeoutEnabled()

bool cv::cuda::DeviceInfo::kernelExecTimeoutEnabled ( ) const

specified whether there is a run time limit on kernels

◆ l2CacheSize()

int cv::cuda::DeviceInfo::l2CacheSize ( ) const

size of L2 cache in bytes

◆ majorVersion()

int cv::cuda::DeviceInfo::majorVersion ( ) const

major compute capability

◆ maxGridSize()

Vec3i cv::cuda::DeviceInfo::maxGridSize ( ) const

maximum size of each dimension of a grid

◆ maxSurface1D()

int cv::cuda::DeviceInfo::maxSurface1D ( ) const

maximum 1D surface size

◆ maxSurface1DLayered()

Vec2i cv::cuda::DeviceInfo::maxSurface1DLayered ( ) const

maximum 1D layered surface dimensions

◆ maxSurface2D()

Vec2i cv::cuda::DeviceInfo::maxSurface2D ( ) const

maximum 2D surface dimensions

◆ maxSurface2DLayered()

Vec3i cv::cuda::DeviceInfo::maxSurface2DLayered ( ) const

maximum 2D layered surface dimensions

◆ maxSurface3D()

Vec3i cv::cuda::DeviceInfo::maxSurface3D ( ) const

maximum 3D surface dimensions

◆ maxSurfaceCubemap()

int cv::cuda::DeviceInfo::maxSurfaceCubemap ( ) const

maximum Cubemap surface dimensions

◆ maxSurfaceCubemapLayered()

Vec2i cv::cuda::DeviceInfo::maxSurfaceCubemapLayered ( ) const

maximum Cubemap layered surface dimensions

◆ maxTexture1D()

int cv::cuda::DeviceInfo::maxTexture1D ( ) const

maximum 1D texture size

◆ maxTexture1DLayered()

Vec2i cv::cuda::DeviceInfo::maxTexture1DLayered ( ) const

maximum 1D layered texture dimensions

◆ maxTexture1DLinear()

int cv::cuda::DeviceInfo::maxTexture1DLinear ( ) const

maximum size for 1D textures bound to linear memory

◆ maxTexture1DMipmap()

int cv::cuda::DeviceInfo::maxTexture1DMipmap ( ) const

maximum 1D mipmapped texture size

◆ maxTexture2D()

Vec2i cv::cuda::DeviceInfo::maxTexture2D ( ) const

maximum 2D texture dimensions

◆ maxTexture2DGather()

Vec2i cv::cuda::DeviceInfo::maxTexture2DGather ( ) const

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

◆ maxTexture2DLayered()

Vec3i cv::cuda::DeviceInfo::maxTexture2DLayered ( ) const

maximum 2D layered texture dimensions

◆ maxTexture2DLinear()

Vec3i cv::cuda::DeviceInfo::maxTexture2DLinear ( ) const

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

◆ maxTexture2DMipmap()

Vec2i cv::cuda::DeviceInfo::maxTexture2DMipmap ( ) const

maximum 2D mipmapped texture dimensions

◆ maxTexture3D()

Vec3i cv::cuda::DeviceInfo::maxTexture3D ( ) const

maximum 3D texture dimensions

◆ maxTextureCubemap()

int cv::cuda::DeviceInfo::maxTextureCubemap ( ) const

maximum Cubemap texture dimensions

◆ maxTextureCubemapLayered()

Vec2i cv::cuda::DeviceInfo::maxTextureCubemapLayered ( ) const

maximum Cubemap layered texture dimensions

◆ maxThreadsDim()

Vec3i cv::cuda::DeviceInfo::maxThreadsDim ( ) const

maximum size of each dimension of a block

◆ maxThreadsPerBlock()

int cv::cuda::DeviceInfo::maxThreadsPerBlock ( ) const

maximum number of threads per block

◆ maxThreadsPerMultiProcessor()

int cv::cuda::DeviceInfo::maxThreadsPerMultiProcessor ( ) const

maximum resident threads per multiprocessor

◆ memoryBusWidth()

int cv::cuda::DeviceInfo::memoryBusWidth ( ) const

global memory bus width in bits

◆ memoryClockRate()

int cv::cuda::DeviceInfo::memoryClockRate ( ) const

peak memory clock frequency in kilohertz

◆ memPitch()

size_t cv::cuda::DeviceInfo::memPitch ( ) const

maximum pitch in bytes allowed by memory copies

◆ minorVersion()

int cv::cuda::DeviceInfo::minorVersion ( ) const

minor compute capability

◆ multiProcessorCount()

int cv::cuda::DeviceInfo::multiProcessorCount ( ) const

number of multiprocessors on device

◆ name()

const char* cv::cuda::DeviceInfo::name ( ) const

ASCII string identifying device.

◆ pciBusID()

int cv::cuda::DeviceInfo::pciBusID ( ) const

PCI bus ID of the device.

◆ pciDeviceID()

int cv::cuda::DeviceInfo::pciDeviceID ( ) const

PCI device ID of the device.

◆ pciDomainID()

int cv::cuda::DeviceInfo::pciDomainID ( ) const

PCI domain ID of the device.

◆ queryMemory()

void cv::cuda::DeviceInfo::queryMemory ( size_t &  totalMemory,
size_t &  freeMemory 
) const

gets free and total device memory

◆ regsPerBlock()

int cv::cuda::DeviceInfo::regsPerBlock ( ) const

32-bit registers available per block

◆ sharedMemPerBlock()

size_t cv::cuda::DeviceInfo::sharedMemPerBlock ( ) const

shared memory available per block in bytes

◆ supports()

bool cv::cuda::DeviceInfo::supports ( FeatureSet  feature_set) const

Provides information on CUDA feature support.

Parameters
feature_setFeatures to be checked. See cuda::FeatureSet.

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

◆ surfaceAlignment()

size_t cv::cuda::DeviceInfo::surfaceAlignment ( ) const

alignment requirements for surfaces

◆ tccDriver()

bool cv::cuda::DeviceInfo::tccDriver ( ) const

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

◆ textureAlignment()

size_t cv::cuda::DeviceInfo::textureAlignment ( ) const

alignment requirement for textures

◆ texturePitchAlignment()

size_t cv::cuda::DeviceInfo::texturePitchAlignment ( ) const

pitch alignment requirement for texture references bound to pitched memory

◆ totalConstMem()

size_t cv::cuda::DeviceInfo::totalConstMem ( ) const

constant memory available on device in bytes

◆ totalGlobalMem()

size_t cv::cuda::DeviceInfo::totalGlobalMem ( ) const

global memory available on device in bytes

◆ totalMemory()

size_t cv::cuda::DeviceInfo::totalMemory ( ) const

◆ unifiedAddressing()

bool cv::cuda::DeviceInfo::unifiedAddressing ( ) const

device shares a unified address space with the host

◆ warpSize()

int cv::cuda::DeviceInfo::warpSize ( ) const

warp size in threads


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