cuda-0.6.7.0: FFI binding to the CUDA interface for programming NVIDIA GPUs

Copyright[2009..2014] Trevor L. McDonell
LicenseBSD
Safe HaskellNone
LanguageHaskell98

Foreign.CUDA.Analysis.Device

Description

Common device functions

Synopsis

Documentation

data ComputeMode Source

The compute mode the device is currently in

Instances

Enum ComputeMode Source

GPU compute capability, major and minor revision number respectively.

Eq ComputeMode Source 
Show ComputeMode Source 

data DeviceProperties Source

The properties of a compute device

Constructors

DeviceProperties 

Fields

deviceName :: !String

Identifier

computeCapability :: !Compute

Supported compute capability

totalGlobalMem :: !Int64

Available global memory on the device in bytes

totalConstMem :: !Int64

Available constant memory on the device in bytes

sharedMemPerBlock :: !Int64

Available shared memory per block in bytes

regsPerBlock :: !Int

32-bit registers per block

warpSize :: !Int

Warp size in threads (SIMD width)

maxThreadsPerBlock :: !Int

Max number of threads per block

maxThreadsPerMultiProcessor :: !Int

Max number of threads per multiprocessor

maxBlockSize :: !(Int, Int, Int)

Max size of each dimension of a block

maxGridSize :: !(Int, Int, Int)

Max size of each dimension of a grid

maxTextureDim1D :: !Int

Maximum texture dimensions

maxTextureDim2D :: !(Int, Int)
 
maxTextureDim3D :: !(Int, Int, Int)
 
clockRate :: !Int

Clock frequency in kilohertz

multiProcessorCount :: !Int

Number of multiprocessors on the device

memPitch :: !Int64

Max pitch in bytes allowed by memory copies

memBusWidth :: !Int

Global memory bus width in bits

memClockRate :: !Int

Peak memory clock frequency in kilohertz

textureAlignment :: !Int64

Alignment requirement for textures

computeMode :: !ComputeMode
 
deviceOverlap :: !Bool

Device can concurrently copy memory and execute a kernel

concurrentKernels :: !Bool

Device can possibly execute multiple kernels concurrently

eccEnabled :: !Bool

Device supports and has enabled error correction

asyncEngineCount :: !Int

Number of asynchronous engines

cacheMemL2 :: !Int

Size of the L2 cache in bytes

tccDriverEnabled :: !Bool

Whether this is a Tesla device using the TCC driver

pciInfo :: !PCI

PCI device information for the device

kernelExecTimeoutEnabled :: !Bool

Whether there is a runtime limit on kernels

integrated :: !Bool

As opposed to discrete

canMapHostMemory :: !Bool

Device can use pinned memory

unifiedAddressing :: !Bool

Device shares a unified address space with the host

data DeviceResources Source

Constructors

DeviceResources 

Fields

threadsPerWarp :: !Int

Warp size

threadsPerMP :: !Int

Maximum number of in-flight threads on a multiprocessor

threadBlocksPerMP :: !Int

Maximum number of thread blocks resident on a multiprocessor

warpsPerMP :: !Int

Maximum number of in-flight warps per multiprocessor

coresPerMP :: !Int

Number of SIMD arithmetic units per multiprocessor

sharedMemPerMP :: !Int

Total amount of shared memory per multiprocessor (bytes)

sharedMemAllocUnit :: !Int

Shared memory allocation unit size (bytes)

regFileSize :: !Int

Total number of registers in a multiprocessor

regAllocUnit :: !Int

Register allocation unit size

regAllocWarp :: !Int

Register allocation granularity for warps

regPerThread :: !Int

Maximum number of registers per thread

allocation :: !Allocation

How multiprocessor resources are divided

data Allocation Source

Constructors

Warp 
Block 

data PCI Source

Constructors

PCI 

Fields

busID :: !Int

PCI bus ID of the device

deviceID :: !Int

PCI device ID

domainID :: !Int

PCI domain ID

Instances

deviceResources :: DeviceProperties -> DeviceResources Source

Extract some additional hardware resource limitations for a given device.