「OpenCL 1.1/Changes from OpenCL 1.0」の版間の差分
提供: Tommy6
19行: | 19行: | ||
* 実行可能プログラムをビルドする際の OpenCL C のバージョンを指定するオプションが追加 | * 実行可能プログラムをビルドする際の OpenCL C のバージョンを指定するオプションが追加 | ||
* [[clGetKernelWorkGroupInfo]] への param_name クエリとして以下が追加 | * [[clGetKernelWorkGroupInfo]] への param_name クエリとして以下が追加 | ||
− | ** [[CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE]] - | + | ** [[CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE]] - 推奨されるワークグループサイズの倍数を返す。 |
− | ** [[CL_KERNEL_PRIVATE_MEM_SIZE]] - | + | ** [[CL_KERNEL_PRIVATE_MEM_SIZE]] - カーネル内でそれぞれのワークアイテムが使用する[[プライベートメモリ]]の最小量を返す。 |
+ | * [[ユーザーイベント]]のサポートが追加。ユーザーイベントによりアプリケーションは、デバイスが実行を開始する前にユーザーイベントの終了を待つコマンドをキューに挿入できるようになる。これをサポートする API として [[clCreateUserEvent]] および [[clSetUserEventStatus]] が追加。 | ||
+ | * 特定のコマンド実行状態に対してコールバック関数を登録する [[clSetEventCallback]] が追加。 | ||
{{DEFAULTSORT:{{PAGENAME}}}} | {{DEFAULTSORT:{{PAGENAME}}}} | ||
[[Category:OpenCL]] | [[Category:OpenCL]] | ||
[[Category:OpenCL 1.1]] | [[Category:OpenCL 1.1]] |
2010年9月2日 (木) 16:36時点における版
Appendix E, OpenCL 1.1 Specification Revision 33 の翻訳を含む。
OpenCL プラットフォームレイヤー・ランタイムへの機能の追加
- clGetDeviceInfo への param_name クエリとして以下が追加
- CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF - 半精度型について、推奨されるベクトルサイズを返す。ベクトルサイズはベクトル内に格納できるスカラ要素の数として定義される。
- CL_DEVIDE_NATIVE_VECTOR_WIDTH_{CHAR|SHORT|INT|LONG|FLOAT|DOUBLE|HALF} - 命令セットアーキテクチャ?(ISA)のネイティブベクトルサイズを返す。ベクトルサイズは、ベクトルに格納されるスカラ要素の数として定義される。 cl_khr_fp64 拡張がサポートされていない場合、CL_DEVIDE_NATIVE_VECTOR_WIDTH_DOUBLE は0を返さなければならない。cl_khr_fp16 拡張がサポートされていない場合、CL_DEVIDE_NATIVE_VECTOR_WIDTH_HALF は0を返さなければならない。
- CL_DEVICE_HOST_UNIFIED_MEMORY - デバイスとホストが、統一されたメモリサブシステム(?)を持つのであれば CL_TRUE となり、そうでない場合は CL_FALSE。
- CL_DEVICE_OPENCL_C_VERSION - このデバイスに対応するコンパイラがサポートする OpenCL C 言語 のバージョンのうち最も高いものを文字列で返す。
- clGetContextInfo への param_name クエリとして CL_CONTEXT_NUM_DEVICES が追加
- clSetCommandQueueProperty が廃止
- clCreateSubBuffer を用いたサブバッファオブジェクト―他のバッファオブジェクトの特定の領域を参照するバッファオブジェクト―作成のサポートが追加
- バッファオブジェクトの矩形領域から読み出し、書き込み、複製を行う clEnqueueReadBufferRect / clEnqueueWriteBufferRect / clEnqueueCopyBufferRect が追加
- メモリオブジェクトが削除されそのリソースが開放されたときに呼び出されるコールバック関数を登録できる clSetMemObjectDestructorCallback が追加
- clGetMemObjectInfo への param_name クエリとして以下が追加
- CL_MEM_ASSOCIATED_MEMOBJECT - memobj が作成されたメモリオブジェクトを返す。clCreateSubBuffer に buffer 引数として指定されたメモリオブジェクトを返す。そうでない場合は NULL を返す。
- CL_MEM_OFFSET - memobj がclCreateSubBufferを用いて作られたサブバッファオブジェクトであるとき、オフセットを返す。memobjがサブバッファオブジェクトでないときは0を返す。
- 実行可能プログラムをビルドする際の OpenCL C のバージョンを指定するオプションが追加
- clGetKernelWorkGroupInfo への param_name クエリとして以下が追加
- CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE - 推奨されるワークグループサイズの倍数を返す。
- CL_KERNEL_PRIVATE_MEM_SIZE - カーネル内でそれぞれのワークアイテムが使用するプライベートメモリの最小量を返す。
- ユーザーイベントのサポートが追加。ユーザーイベントによりアプリケーションは、デバイスが実行を開始する前にユーザーイベントの終了を待つコマンドをキューに挿入できるようになる。これをサポートする API として clCreateUserEvent および clSetUserEventStatus が追加。
- 特定のコマンド実行状態に対してコールバック関数を登録する clSetEventCallback が追加。