Public Member Functions | Properties

Cloo.ComputeDevice Class Reference

Represents an OpenCL device. More...

Inheritance diagram for Cloo.ComputeDevice:
Cloo.ComputeObject

List of all members.

Public Member Functions

override string ToString ()
 Gets the string representation of the ComputeDevice.

Properties

long AddressBits [get]
 Gets the default ComputeDevice address space size in bits.
bool Available [get]
 Gets the availability state of the ComputeDevice.
ComputeCommandQueueFlags CommandQueueFlags [get]
 Gets the ComputeCommandQueueFlags supported by the ComputeDevice.
bool CompilerAvailable [get]
 Gets the availability state of the OpenCL compiler of the ComputeDevice.Platform.
string DriverVersion [get]
 Gets the OpenCL software driver version string of the ComputeDevice.
bool EndianLittle [get]
 Gets the endianness of the ComputeDevice.
bool ErrorCorrectionSupport [get]
 Gets the error correction support state of the ComputeDevice.
ComputeDeviceExecutionCapabilities ExecutionCapabilities [get]
 Gets the ComputeDeviceExecutionCapabilities of the ComputeDevice.
ReadOnlyCollection< string > Extensions [get]
 Gets a read-only collection of names of extensions that the ComputeDevice supports.
long GlobalMemoryCacheLineSize [get]
 Gets the size of the global ComputeDevice memory cache line in bytes.
long GlobalMemoryCacheSize [get]
 Gets the size of the global ComputeDevice memory cache in bytes.
ComputeDeviceMemoryCacheType GlobalMemoryCacheType [get]
 Gets the ComputeDeviceMemoryCacheType of the ComputeDevice.
long GlobalMemorySize [get]
 Gets the size of the global ComputeDevice memory in bytes.
long Image2DMaxHeight [get]
 Maximum height of 2D images that the ComputeDevice supports in pixels.
long Image2DMaxWidth [get]
 Maximum width of 2D image that the ComputeDevice supports in pixels.
long Image3DMaxDepth [get]
 Maximum depth of 3D image the ComputeDevice supports in pixels.
long Image3DMaxHeight [get]
 Max height of 3D image the ComputeDevice supports in pixels.
long Image3DMaxWidth [get]
 Max width of 3D image the ComputeDevice supports in pixels.
bool ImageSupport [get]
 Gets the state of image support of the ComputeDevice.
long LocalMemorySize [get]
 Gets the size of local memory are of the ComputeDevice in bytes.
ComputeDeviceLocalMemoryType LocalMemoryType [get]
 Gets the ComputeDeviceLocalMemoryType that is supported on the ComputeDevice.
long MaxClockFrequency [get]
 Gets the maximum configured clock frequency of the ComputeDevice in MHz.
long MaxComputeUnits [get]
 Gets the number of parallel compute cores on the ComputeDevice.
long MaxConstantArguments [get]
 Gets the maximum number of arguments declared with the __constant or constant qualifier in a ComputeKernel executing in the ComputeDevice.
long MaxConstantBufferSize [get]
 Gets the maximum size in bytes of a constant buffer allocation in the ComputeDevice memory.
long MaxMemoryAllocationSize [get]
 Gets the maximum size of memory object allocation in the ComputeDevice memory in bytes.
long MaxParameterSize [get]
 Gets the maximum size in bytes of the arguments that can be passed to a ComputeKernel executing in the ComputeDevice.
long MaxReadImageArguments [get]
 Gets the maximum number of simultaneous ComputeImages that can be read by a ComputeKernel executing in the ComputeDevice.
long MaxSamplers [get]
 Gets the maximum number of ComputeSamplers that can be used in a ComputeKernel.
long MaxWorkGroupSize [get]
 Gets the maximum number of work-items in a work-group executing a ComputeKernel in a ComputeDevice using the data parallel execution model.
long MaxWorkItemDimensions [get]
 Gets the maximum number of dimensions that specify the global and local work-item IDs used by the data parallel execution model.
ReadOnlyCollection< long > MaxWorkItemSizes [get]
 Gets the maximum number of work-items that can be specified in each dimension of the globalWorkSize argument of ComputeCommandQueue.Execute.
long MaxWriteImageArguments [get]
 Gets the maximum number of simultaneous ComputeImages that can be written to by a ComputeKernel executing in the ComputeDevice.
long MemoryBaseAddressAlignment [get]
 Gets the alignment in bits of the base address of any ComputeMemory allocated in the ComputeDevice memory.
long MinDataTypeAlignmentSize [get]
 Gets the smallest alignment in bytes which can be used for any data type allocated in the ComputeDevice memory.
string Name [get]
 Gets the name of the ComputeDevice.
ComputePlatform Platform [get]
 Gets the ComputePlatform associated with the ComputeDevice.
long PreferredVectorWidthDouble [get]
 Gets the ComputeDevice's preferred native vector width size for vector of doubles.
long PreferredVectorWidthFloat [get]
 Gets the ComputeDevice's preferred native vector width size for vector of floats.
long PreferredVectorWidthChar [get]
 Gets the ComputeDevice's preferred native vector width size for vector of chars.
long PreferredVectorWidthInt [get]
 Gets the ComputeDevice's preferred native vector width size for vector of ints.
long PreferredVectorWidthLong [get]
 Gets the ComputeDevice's preferred native vector width size for vector of longs.
long PreferredVectorWidthShort [get]
 Gets the ComputeDevice's preferred native vector width size for vector of shorts.
string Profile [get]
 Gets the OpenCL profile name supported by the ComputeDevice.
long ProfilingTimerResolution [get]
 Gets the resolution of the ComputeDevice timer in nanoseconds.
ComputeDeviceSingleCapabilities SingleCapabilites [get]
 Gets the ComputeDeviceSingleCapabilities of the ComputeDevice.
ComputeDeviceTypes Type [get]
 Gets the ComputeDeviceTypes of the ComputeDevice.
string Vendor [get]
 Gets the ComputeDevice vendor name string.
long VendorId [get]
 Gets a unique ComputeDevice vendor identifier.
string Version [get]
 Gets the OpenCL version supported by the ComputeDevice.

Detailed Description

Represents an OpenCL device.

A device is a collection of compute units. A command-queue is used to queue commands to a device. Examples of commands include executing kernels, or reading and writing memory objects. OpenCL devices typically correspond to a GPU, a multi-core CPU, and other processors such as DSPs and the Cell/B.E. processor.

See also:
ComputeCommandQueue, ComputeKernel, ComputeMemory, ComputePlatform

Member Function Documentation

override string Cloo.ComputeDevice.ToString (  ) 

Gets the string representation of the ComputeDevice.

Returns:
The string representation of the ComputeDevice.

Reimplemented from Cloo.ComputeObject.


Property Documentation

long Cloo.ComputeDevice.AddressBits [get]

Gets the default ComputeDevice address space size in bits.

Currently supported values are 32 or 64 bits.

bool Cloo.ComputeDevice.Available [get]

Gets the availability state of the ComputeDevice.

Is true if the ComputeDevice is available and false if the ComputeDevice is not available.

ComputeCommandQueueFlags Cloo.ComputeDevice.CommandQueueFlags [get]

Gets the ComputeCommandQueueFlags supported by the ComputeDevice.

bool Cloo.ComputeDevice.CompilerAvailable [get]

Gets the availability state of the OpenCL compiler of the ComputeDevice.Platform.

Is false if the implementation does not have a compiler available to compile the program source. Is true if the compiler is available. This can be false for the embededed platform profile only.

string Cloo.ComputeDevice.DriverVersion [get]

Gets the OpenCL software driver version string of the ComputeDevice.

The version string is in the form major_number.minor_number.

bool Cloo.ComputeDevice.EndianLittle [get]

Gets the endianness of the ComputeDevice.

Is true if the ComputeDevice is a little endian device and false otherwise.

bool Cloo.ComputeDevice.ErrorCorrectionSupport [get]

Gets the error correction support state of the ComputeDevice.

Is true if the ComputeDevice implements error correction for the memories, caches, registers etc. Is false if the ComputeDevice does not implement error correction. This can be a requirement for certain clients of OpenCL.

ComputeDeviceExecutionCapabilities Cloo.ComputeDevice.ExecutionCapabilities [get]

Gets the ComputeDeviceExecutionCapabilities of the ComputeDevice.

ReadOnlyCollection<string> Cloo.ComputeDevice.Extensions [get]

Gets a read-only collection of names of extensions that the ComputeDevice supports.

long Cloo.ComputeDevice.GlobalMemoryCacheLineSize [get]

Gets the size of the global ComputeDevice memory cache line in bytes.

long Cloo.ComputeDevice.GlobalMemoryCacheSize [get]

Gets the size of the global ComputeDevice memory cache in bytes.

ComputeDeviceMemoryCacheType Cloo.ComputeDevice.GlobalMemoryCacheType [get]

Gets the ComputeDeviceMemoryCacheType of the ComputeDevice.

long Cloo.ComputeDevice.GlobalMemorySize [get]

Gets the size of the global ComputeDevice memory in bytes.

long Cloo.ComputeDevice.Image2DMaxHeight [get]

Maximum height of 2D images that the ComputeDevice supports in pixels.

The minimum value is 8192 if ComputeDevice.ImageSupport is true.

long Cloo.ComputeDevice.Image2DMaxWidth [get]

Maximum width of 2D image that the ComputeDevice supports in pixels.

The minimum value is 8192 if ComputeDevice.ImageSupport is true.

long Cloo.ComputeDevice.Image3DMaxDepth [get]

Maximum depth of 3D image the ComputeDevice supports in pixels.

The minimum value is 2048 if ComputeDevice.ImageSupport is true.

long Cloo.ComputeDevice.Image3DMaxHeight [get]

Max height of 3D image the ComputeDevice supports in pixels.

The minimum value is 2048 if ComputeDevice.ImageSupport is true.

long Cloo.ComputeDevice.Image3DMaxWidth [get]

Max width of 3D image the ComputeDevice supports in pixels.

The minimum value is 2048 if ComputeDevice.ImageSupport is true.

bool Cloo.ComputeDevice.ImageSupport [get]

Gets the state of image support of the ComputeDevice.

Is true if ComputeImages are supported by the ComputeDevice and false otherwise.

long Cloo.ComputeDevice.LocalMemorySize [get]

Gets the size of local memory are of the ComputeDevice in bytes.

The minimum value is 16 KB.

ComputeDeviceLocalMemoryType Cloo.ComputeDevice.LocalMemoryType [get]

Gets the ComputeDeviceLocalMemoryType that is supported on the ComputeDevice.

long Cloo.ComputeDevice.MaxClockFrequency [get]

Gets the maximum configured clock frequency of the ComputeDevice in MHz.

long Cloo.ComputeDevice.MaxComputeUnits [get]

Gets the number of parallel compute cores on the ComputeDevice.

The minimum value is 1.

long Cloo.ComputeDevice.MaxConstantArguments [get]

Gets the maximum number of arguments declared with the __constant or constant qualifier in a ComputeKernel executing in the ComputeDevice.

The minimum value is 8.

long Cloo.ComputeDevice.MaxConstantBufferSize [get]

Gets the maximum size in bytes of a constant buffer allocation in the ComputeDevice memory.

The minimum value is 64 KB.

long Cloo.ComputeDevice.MaxMemoryAllocationSize [get]

Gets the maximum size of memory object allocation in the ComputeDevice memory in bytes.

The minimum value is max(ComputeDevice.GlobalMemorySize/4, 128*1024*1024).

long Cloo.ComputeDevice.MaxParameterSize [get]

Gets the maximum size in bytes of the arguments that can be passed to a ComputeKernel executing in the ComputeDevice.

The minimum value is 256.

long Cloo.ComputeDevice.MaxReadImageArguments [get]

Gets the maximum number of simultaneous ComputeImages that can be read by a ComputeKernel executing in the ComputeDevice.

The minimum value is 128 if ComputeDevice.ImageSupport is true.

long Cloo.ComputeDevice.MaxSamplers [get]

Gets the maximum number of ComputeSamplers that can be used in a ComputeKernel.

The minimum value is 16 if ComputeDevice.ImageSupport is true.

long Cloo.ComputeDevice.MaxWorkGroupSize [get]

Gets the maximum number of work-items in a work-group executing a ComputeKernel in a ComputeDevice using the data parallel execution model.

The minimum value is 1.

long Cloo.ComputeDevice.MaxWorkItemDimensions [get]

Gets the maximum number of dimensions that specify the global and local work-item IDs used by the data parallel execution model.

The minimum value is 3.

ReadOnlyCollection<long> Cloo.ComputeDevice.MaxWorkItemSizes [get]

Gets the maximum number of work-items that can be specified in each dimension of the globalWorkSize argument of ComputeCommandQueue.Execute.

long Cloo.ComputeDevice.MaxWriteImageArguments [get]

Gets the maximum number of simultaneous ComputeImages that can be written to by a ComputeKernel executing in the ComputeDevice.

The minimum value is 8 if ComputeDevice.ImageSupport is true.

long Cloo.ComputeDevice.MemoryBaseAddressAlignment [get]

Gets the alignment in bits of the base address of any ComputeMemory allocated in the ComputeDevice memory.

long Cloo.ComputeDevice.MinDataTypeAlignmentSize [get]

Gets the smallest alignment in bytes which can be used for any data type allocated in the ComputeDevice memory.

string Cloo.ComputeDevice.Name [get]

Gets the name of the ComputeDevice.

ComputePlatform Cloo.ComputeDevice.Platform [get]

Gets the ComputePlatform associated with the ComputeDevice.

long Cloo.ComputeDevice.PreferredVectorWidthChar [get]

Gets the ComputeDevice's preferred native vector width size for vector of chars.

The vector width is defined as the number of scalar elements that can be stored in the vector.

long Cloo.ComputeDevice.PreferredVectorWidthDouble [get]

Gets the ComputeDevice's preferred native vector width size for vector of doubles.

The vector width is defined as the number of scalar elements that can be stored in the vector.

long Cloo.ComputeDevice.PreferredVectorWidthFloat [get]

Gets the ComputeDevice's preferred native vector width size for vector of floats.

The vector width is defined as the number of scalar elements that can be stored in the vector.

long Cloo.ComputeDevice.PreferredVectorWidthInt [get]

Gets the ComputeDevice's preferred native vector width size for vector of ints.

The vector width is defined as the number of scalar elements that can be stored in the vector.

long Cloo.ComputeDevice.PreferredVectorWidthLong [get]

Gets the ComputeDevice's preferred native vector width size for vector of longs.

The vector width is defined as the number of scalar elements that can be stored in the vector.

long Cloo.ComputeDevice.PreferredVectorWidthShort [get]

Gets the ComputeDevice's preferred native vector width size for vector of shorts.

The vector width is defined as the number of scalar elements that can be stored in the vector.

string Cloo.ComputeDevice.Profile [get]

Gets the OpenCL profile name supported by the ComputeDevice.

The profile name returned can be one of the following strings:

  • FULL_PROFILE The ComputeDevice supports the OpenCL specification (functionality defined as part of the core specification and does not require any extensions to be supported).
  • EMBEDDED_PROFILE The ComputeDevice supports the OpenCL embedded profile.
long Cloo.ComputeDevice.ProfilingTimerResolution [get]

Gets the resolution of the ComputeDevice timer in nanoseconds.

ComputeDeviceSingleCapabilities Cloo.ComputeDevice.SingleCapabilites [get]

Gets the ComputeDeviceSingleCapabilities of the ComputeDevice.

ComputeDeviceTypes Cloo.ComputeDevice.Type [get]

Gets the ComputeDeviceTypes of the ComputeDevice.

string Cloo.ComputeDevice.Vendor [get]

Gets the ComputeDevice vendor name string.

long Cloo.ComputeDevice.VendorId [get]

Gets a unique ComputeDevice vendor identifier.

An example of a unique device identifier could be the PCIe ID.

string Cloo.ComputeDevice.Version [get]

Gets the OpenCL version supported by the ComputeDevice.

This version string has the following format: OpenCL[space][major_version].[minor_version][space][vendor-specific information]


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