「clGetDeviceInfo」の版間の差分
(ページの作成: {{先頭小文字}} {{Pathnav|OpenCL|OpenCLマニュアル|OpenCLランタイム|OpenCLデバイス}} {{関数| cl_int clGetDeviceInfo(cl_device_id ''device'', [[cl_...) |
|||
78行: | 78行: | ||
[[cl_khr_fp16]] がサポートされていない場合、CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF は0を返さなければなりません。 | [[cl_khr_fp16]] がサポートされていない場合、CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF は0を返さなければなりません。 | ||
+ | {{!-}} | ||
+ | {{!}} CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR | ||
+ | CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT | ||
+ | |||
+ | CL_DEVICE_NATIVE_VECTOR_WIDTH_INT | ||
+ | |||
+ | CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG | ||
+ | |||
+ | CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT | ||
+ | |||
+ | CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE | ||
+ | |||
+ | CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF | ||
+ | {{!}} [[cl_uint]] | ||
+ | {{!}} 命令セットアーキテクチャ? (ISA) のネイティブベクトルサイズを返します。ベクトルサイズはベクトル内に格納できるスカラ要素の数として定義されます。 | ||
+ | |||
+ | [[cl_khr_fp64]] がサポートされていない場合、CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE は0を返さなければなりません。 | ||
+ | |||
+ | [[cl_khr_fp16]] がサポートされていない場合、CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF は0を返さなければなりません。 | ||
+ | {{!-}} | ||
+ | {{!}} CL_DEVICE_MAX_CLOCK_FREQUENCY | ||
+ | {{!}} [[cl_uint]] | ||
+ | {{!}} デバイスの最大設計クロック周波数を MHz で返します。 | ||
+ | {{!-}} | ||
+ | {{!}} CL_DEVICE_ADDRESS_BITS | ||
+ | {{!}} [[cl_uint]] | ||
+ | {{!}} 演算デバイスのアドレス空間のサイズを符号なし整数値としてビットで返します。サポートされる値は32ビットか64ビットです。 | ||
+ | {{!-}} | ||
+ | {{!}} CL_DEVICE_MAX_MEM_ALLOC_SIZE | ||
+ | {{!}} [[cl_ulong]] | ||
+ | {{!}} メモリオブジェクトで確保できる最大のサイズをバイトで返します。最小値は、「CL_DEVICE_GLOBAL_MEM_SIZE の4分の1」と「128*1024*1024」 のうち値の大きなほうになります。 | ||
+ | {{!-}} | ||
+ | {{!}} CL_DEVICE_IMAGE_SUPPORT | ||
+ | {{!}} [[cl_bool]] | ||
+ | {{!}} [[OpenCLデバイス]]がイメージをサポートする場合は CL_TRUE、そうでない場合は CL_FALSE になります。 | ||
+ | {{!-}} | ||
+ | {{!}} CL_DEVICE_MAX_READ_IMAGE_ARGS | ||
+ | {{!}} [[cl_uint]] | ||
+ | {{!}} カーネルが同時に読み込めるイメージオブジェクトの最大数を返します。CL_DEVICE_IMAGE_SUPPORT が CL_TRUE の場合、最小値は128です。 | ||
+ | {{!-}} | ||
+ | {{!}} CL_DEVICE_MAX_WRITE_IMAGE_ARGS | ||
+ | {{!}} [[cl_uint]] | ||
+ | {{!}} カーネルが同時に書き込めるイメージオブジェクトの最大数を返します。CL_DEVICE_IMAGE_SUPPORT が CL_TRUE の場合、最小値は8です。 | ||
+ | |||
+ | {{!}}} | ||
|[http://www.khronos.org/registry/cl/specs/opencl-1.1.pdf Revision 33, Version 1.1, The OpenCL Specification] | |[http://www.khronos.org/registry/cl/specs/opencl-1.1.pdf Revision 33, Version 1.1, The OpenCL Specification] | ||
}} | }} |
2010年9月1日 (水) 23:55時点における版
cl_int clGetDeviceInfo(cl_device_id device, cl_device_info param_name, size_t param_value_size, void *param_value, size_t *param_value_size_ret)
OpenCLデバイスについての情報を取得します。
パラメータ
- device
- clGetDeviceIDs で取得したデバイスを指定します。
- param_name
- 取得する情報を指定します。下記の表にある定数からひとつ選んで指定できます。
- param_value
- 下記の表にしたがって param_name に指定した情報についての値が返されるメモリ空間へのポインタです。NULL の場合は無視されます。
- param_value_size
- param_value が指すメモリのサイズをバイトで指定します。このサイズは、下記の表で示されている戻り値型のサイズ以上でなければなりません。
- param_value_size_ret
- param_value が指すメモリの実際のサイズをバイトで返します。NULL の場合は無視されます。
取得できる情報
param_name で指定できる情報およびこれに対して param_value に返される情報を以下の表に示しています。
cl_device_info | 戻り値型 | 解説 |
---|---|---|
CL_DEVICE_TYPE | cl_device_type | OpenCLデバイスのタイプを返します。現在サポートされている値は、
のいずれかです。 |
CL_DEVICE_VENDOR_ID | cl_uint | デバイスベンダのユニークな識別子を返します。ユニークなデバイス識別子の一例として、PCIe の ID があります。 |
CL_DEVICE_MAX_COMPUTE_UNITS | cl_uint | OpenCLデバイス上の並列演算コアの数を返します。最小値は1です。 |
CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS | cl_uint | データ並列実行モデル(clEnqueueNDRangeKernel 参照)で用いるグローバル・ローカルワークアイテムIDの次元数の最大値を返します。最小値は3です。 |
CL_DEVICE_MAX_WORK_ITEM_SIZES | size_t [] | clEnqueueNDRangeKernel に指定するワークアイテム数のそれぞれの次元についての最大値を返します。CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS で返される数の個数の size_t エントリが返されます。最小値は (1, 1, 1) です。 |
CL_DEVICE_MAX_WORK_GROUP_SIZE | size_t | データ並列実行モデル(clEnqueueNDRangeKernel 参照)を用いたカーネル実行における、ひとつのワークグループ内のワークアイテム数の最大値を返します。最小値は1です。 |
CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR
CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF |
cl_uint | ベクトル化できる組み込みスカラ型について、推奨されるベクトルサイズを返します。ベクトルサイズはベクトル内に格納できるスカラ要素の数として定義されます。
cl_khr_fp64 がサポートされていない場合、CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE は0を返さなければなりません。 cl_khr_fp16 がサポートされていない場合、CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF は0を返さなければなりません。 |
CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR
CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT CL_DEVICE_NATIVE_VECTOR_WIDTH_INT CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF |
cl_uint | 命令セットアーキテクチャ? (ISA) のネイティブベクトルサイズを返します。ベクトルサイズはベクトル内に格納できるスカラ要素の数として定義されます。
cl_khr_fp64 がサポートされていない場合、CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE は0を返さなければなりません。 cl_khr_fp16 がサポートされていない場合、CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF は0を返さなければなりません。 |
CL_DEVICE_MAX_CLOCK_FREQUENCY | cl_uint | デバイスの最大設計クロック周波数を MHz で返します。 |
CL_DEVICE_ADDRESS_BITS | cl_uint | 演算デバイスのアドレス空間のサイズを符号なし整数値としてビットで返します。サポートされる値は32ビットか64ビットです。 |
CL_DEVICE_MAX_MEM_ALLOC_SIZE | cl_ulong | メモリオブジェクトで確保できる最大のサイズをバイトで返します。最小値は、「CL_DEVICE_GLOBAL_MEM_SIZE の4分の1」と「128*1024*1024」 のうち値の大きなほうになります。 |
CL_DEVICE_IMAGE_SUPPORT | cl_bool | OpenCLデバイスがイメージをサポートする場合は CL_TRUE、そうでない場合は CL_FALSE になります。 |
CL_DEVICE_MAX_READ_IMAGE_ARGS | cl_uint | カーネルが同時に読み込めるイメージオブジェクトの最大数を返します。CL_DEVICE_IMAGE_SUPPORT が CL_TRUE の場合、最小値は128です。 |
CL_DEVICE_MAX_WRITE_IMAGE_ARGS | cl_uint | カーネルが同時に書き込めるイメージオブジェクトの最大数を返します。CL_DEVICE_IMAGE_SUPPORT が CL_TRUE の場合、最小値は8です。 |