Cloo 0.9.1
Properties
Cloo.ComputeDevice Class Reference

Represents an OpenCL device. More...

Inheritance diagram for Cloo.ComputeDevice:
Cloo.ComputeObject

List of all members.

Properties

CLDeviceHandle Handle [get, set]
 The handle of the ComputeDevice.
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]
 Gets the maximum ComputeImage2D.Height value that the ComputeDevice supports in pixels.
long Image2DMaxWidth [get]
 Gets the maximum ComputeImage2D.Width value that the ComputeDevice supports in pixels.
long Image3DMaxDepth [get]
 Gets the maximum ComputeImage3D.Depth value that the ComputeDevice supports in pixels.
long Image3DMaxHeight [get]
 Gets the maximum ComputeImage3D.Height value that the ComputeDevice supports in pixels.
long Image3DMaxWidth [get]
 Gets the maximum ComputeImage3D.Width value that 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 PreferredVectorWidthChar [get]
 Gets the ComputeDevice's preferred native vector width size for vector of chars.
long PreferredVectorWidthDouble [get]
 Gets the ComputeDevice's preferred native vector width size for vector of doubles or 0 if the cl_khr_fp64 format is not supported.
long PreferredVectorWidthFloat [get]
 Gets the ComputeDevice's preferred native vector width size for vector of floats.
long PreferredVectorWidthHalf [get]
 Gets the ComputeDevice's preferred native vector width size for vector of halfs or 0 if the cl_khr_fp16 format is not supported.
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.
Version Version [get]
 Gets the OpenCL version supported by the ComputeDevice.
string VersionString [get]
 Gets the OpenCL version string supported by the ComputeDevice.
bool HostUnifiedMemory [get]
 Gets information about the presence of the unified memory subsystem.
long NativeVectorWidthChar [get]
 Gets the native ISA vector width size for vector of chars.
long NativeVectorWidthDouble [get]
 Gets the native ISA vector width size for vector of doubles or 0 if the cl_khr_fp64 format is not supported.
long NativeVectorWidthFloat [get]
 Gets the native ISA vector width size for vector of floats.
long NativeVectorWidthHalf [get]
 Gets the native ISA vector width size for vector of halfs or 0 if the cl_khr_fp16 format is not supported.
long NativeVectorWidthInt [get]
 Gets the native ISA vector width size for vector of ints.
long NativeVectorWidthLong [get]
 Gets the native ISA vector width size for vector of longs.
long NativeVectorWidthShort [get]
 Gets the native ISA vector width size for vector of shorts.
Version OpenCLCVersion [get]
 Gets the OpenCL C version supported by the ComputeDevice.
string OpenCLCVersionString [get]
 Gets the OpenCL C version string 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

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 otherwise.

ComputeCommandQueueFlags Cloo.ComputeDevice.CommandQueueFlags [get]

Gets the ComputeCommandQueueFlags supported by the ComputeDevice.

The ComputeCommandQueueFlags supported by the ComputeDevice.

bool Cloo.ComputeDevice.CompilerAvailable [get]

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

Is true if the implementation has a compiler available to compile the program source and false otherwise. 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 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]
ReadOnlyCollection<string> Cloo.ComputeDevice.Extensions [get]

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

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.

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.

The size of the global ComputeDevice memory cache in bytes.

ComputeDeviceMemoryCacheType Cloo.ComputeDevice.GlobalMemoryCacheType [get]
long Cloo.ComputeDevice.GlobalMemorySize [get]

Gets the size of the global ComputeDevice memory in bytes.

The size of the global ComputeDevice memory in bytes.

CLDeviceHandle Cloo.ComputeDevice.Handle [get, set]

The handle of the ComputeDevice.

bool Cloo.ComputeDevice.HostUnifiedMemory [get]

Gets information about the presence of the unified memory subsystem.

Is true if the ComputeDevice and the host have a unified memory subsystem and false otherwise.

Requires OpenCL 1.1

long Cloo.ComputeDevice.Image2DMaxHeight [get]

Gets the maximum ComputeImage2D.Height value that the ComputeDevice supports in pixels.

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

long Cloo.ComputeDevice.Image2DMaxWidth [get]

Gets the maximum ComputeImage2D.Width value that the ComputeDevice supports in pixels.

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

long Cloo.ComputeDevice.Image3DMaxDepth [get]

Gets the maximum ComputeImage3D.Depth value that the ComputeDevice supports in pixels.

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

long Cloo.ComputeDevice.Image3DMaxHeight [get]

Gets the maximum ComputeImage3D.Height value that the ComputeDevice supports in pixels.

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

long Cloo.ComputeDevice.Image3DMaxWidth [get]

Gets the maximum ComputeImage3D.Width value that 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 (OpenCL 1.0) or 32 KB (OpenCL 1.1).

ComputeDeviceLocalMemoryType Cloo.ComputeDevice.LocalMemoryType [get]

Gets the ComputeDeviceLocalMemoryType that is supported on the ComputeDevice.

The ComputeDeviceLocalMemoryType that is supported on the ComputeDevice.

long Cloo.ComputeDevice.MaxClockFrequency [get]

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

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 (OpenCL 1.0) or 1024 (OpenCL 1.1).

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.

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.

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.

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.

The name of the ComputeDevice.

long Cloo.ComputeDevice.NativeVectorWidthChar [get]

Gets the native ISA vector width size for vector of chars.

The native ISA 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.

Requires OpenCL 1.1

long Cloo.ComputeDevice.NativeVectorWidthDouble [get]

Gets the native ISA vector width size for vector of doubles or 0 if the cl_khr_fp64 format is not supported.

The native ISA vector width size for vector of doubles or 0 if the cl_khr_fp64 format is not supported.

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

Requires OpenCL 1.1

long Cloo.ComputeDevice.NativeVectorWidthFloat [get]

Gets the native ISA vector width size for vector of floats.

The native ISA 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.

Requires OpenCL 1.1

long Cloo.ComputeDevice.NativeVectorWidthHalf [get]

Gets the native ISA vector width size for vector of halfs or 0 if the cl_khr_fp16 format is not supported.

The native ISA vector width size for vector of halfs or 0 if the cl_khr_fp16 format is not supported.

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

Requires OpenCL 1.1

long Cloo.ComputeDevice.NativeVectorWidthInt [get]

Gets the native ISA vector width size for vector of ints.

The native ISA 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.

Requires OpenCL 1.1

long Cloo.ComputeDevice.NativeVectorWidthLong [get]

Gets the native ISA vector width size for vector of longs.

The native ISA 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.

Requires OpenCL 1.1

long Cloo.ComputeDevice.NativeVectorWidthShort [get]

Gets the native ISA vector width size for vector of shorts.

The native ISA 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.

Requires OpenCL 1.1

Version Cloo.ComputeDevice.OpenCLCVersion [get]

Gets the OpenCL C version supported by the ComputeDevice.

Is 1.1 if ComputeDevice.Version is 1.1. Is 1.0 or 1.1 if ComputeDevice.Version is 1.0.

Requires OpenCL 1.1.

string Cloo.ComputeDevice.OpenCLCVersionString [get]

Gets the OpenCL C version string supported by the ComputeDevice.

The OpenCL C version string supported by the ComputeDevice. The version string has the following format: OpenCL[space]C[space][major_version].[minor_version][space][vendor-specific information].

Requires OpenCL 1.1.

ComputePlatform Cloo.ComputeDevice.Platform [get]

Gets the ComputePlatform associated with the ComputeDevice.

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 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 or 0 if the cl_khr_fp64 format is not supported.

The ComputeDevice's preferred native vector width size for vector of doubles or 0 if the cl_khr_fp64 format is not supported.

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 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.PreferredVectorWidthHalf [get]

Gets the ComputeDevice's preferred native vector width size for vector of halfs or 0 if the cl_khr_fp16 format is not supported.

The ComputeDevice's preferred native vector width size for vector of halfs or 0 if the cl_khr_fp16 format is not supported.

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

The resolution of the ComputeDevice timer in nanoseconds.

ComputeDeviceSingleCapabilities Cloo.ComputeDevice.SingleCapabilites [get]
ComputeDeviceTypes Cloo.ComputeDevice.Type [get]
string Cloo.ComputeDevice.Vendor [get]

Gets the ComputeDevice vendor name string.

The ComputeDevice vendor name string.

long Cloo.ComputeDevice.VendorId [get]

Gets a unique ComputeDevice vendor identifier.

A unique ComputeDevice vendor identifier.

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

Version Cloo.ComputeDevice.Version [get]

Gets the OpenCL version supported by the ComputeDevice.

The OpenCL version supported by the ComputeDevice.

string Cloo.ComputeDevice.VersionString [get]

Gets the OpenCL version string supported by the ComputeDevice.

The 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: