B.11. コマンドキュー

B.11.1. clCreateCommandQueue

表B.23 表:clCreateCommandQueue

関数

cl_command_queue

clCreateCommandQueue ( cl_context context, cl_device_id device, cl_command_queue_properties properties, cl_int *errcode_ret )

コマンドキューを生成。

引数

context

有効なOpenCLコン テキストを指定。

device

対象とするOpenCLデ バイスを指定。デバイスは contextと関連付けらる必 要がある。 clCreateContextを 使用してcontextを生成す るときに指定したデバイス のリストにあるものか、 clCreateContextFromType を使用してcontextを生成 するときに指定したデバイ スタイプと同じデバイスタ イプのデバイスの、いずれ かを指定可能。

properties

コマンドキューの プロパティのリストを指 定するビットフィールド。

errcode_ret

適切なエラーコード を戻します。 errcode_retがNULL の場合はエラーコード は戻りません。

成功した場合の戻り値

コンテキストの 生成が成功した場合は、 有効な非ゼロのコマン ドキューを戻します。 errcode_ret引数に はCL_SUCCESSを設定。

失敗した場合の戻り値

CL_INVALID_ CONTEXT

contextが有効な
OpenCLコンテキスト
でない場合。

CL_INVALID_ DEVICE

deviceが有効な
デバイスでない場合。
またはcontextと
関連付けられてい
ない場合。

CL_INVALID_ VALUE

properties引数
で指定した値が有効
でない場合。

CL_INVALID_ QUEUE_PROPERTIES

properties引数に
指定した値が有効だ
が、デバイスがサポー
トしない場合。

CL_OUT_OF_ RESOURCES

デバイス上のOpenCL
実装が必要とするリソ
ース確保に失敗した場合。

CL_OUT_OF_ HOST_MEMORY

ホスト上のOpenCL
実装が必要とするリ
ソース確保に失敗した
とき。

B.11.2. cl_command_queue_properties

表B.24 表:cl_command_queue_properties

Command-Queue プロパティ


詳細


CL_QUEUE_OUT_
OF_ORDER_EXEC_
MODE_ENABLE
コマンドキューに挿入
するコマンドがインオ
ーダーまたはアウトオ
ブオーダーで実行する
か決めます。このプロ
パティを設定する場合、
コマンドキュー内のコ
マンドがアウトオブオ
ーダーで実行されます。
それ以外はインオーダー
で実行されます。
CL_QUEUE_
PROFILING_
ENABLE
コマンドキュー内の
コマンドのプロファイリ
ングを有効にするか無効
にするか決めます。この
プロパティを設定する場
合、コマンドのプロファ
イリングが有効となり、
それ以外の場合は無効に
なります。

B.11.3. clRetainCommandQueue

表B.25 表:clRetainCommandQueue

関数

cl_int

clRetainCommandQueue (
    cl_command_queue command_queue)

command_queueの参照カウントをインクリメント。

成功した場合の戻り値

CL_SUCCESS

失敗した場合の戻り値

CL_INVALID_ COMMAND_QUEUE

command_queueが有効なコマンドキューでない場合。


CL_OUT_OF_ RESOURCES

デバイス上のOpenCL
実装が必要とするリソ
ース確保に失敗した場合。

CL_OUT_OF_ HOST_MEMORY

ホスト上のOpenCL
実装が必要とするリ
ソース確保に失敗した
とき。

B.11.4. clReleaseCommandQueue

表B.26 表:clReleaseCommandQueue

関数
cl_int
clReleaseCommandQueue (cl_command_queue command_queue)
 command_queue
の参照カウントをデク
リメントします。
 成功した場合の戻り値
 command_queue
の参照カウントが0となり、
コマンドキューに挿入さ
れた全てのコマンドが終
了するとコマンドキュー
は削除されます。成功し
た場合はCL_SUCCESSが
戻ります。
 失敗した場合の戻り値
CL_INVALID_
COMMAND_QUEUE
command_queueが
有効なコマンドキュー
でない場合。
CL_OUT_
OF_RESOURCES
デバイス上のOpenCL
実装が必要とするリソー
ス確保に失敗した場合。
CL_OUT_OF_
HOST_MEMORY
ホスト上のOpenCL実装
が必要とするリソース
確保に失敗した場合。

clGetCommandQueueInfo

表B.27 表:clGetCommandQueueInfo

関数

cl_int

clGetCommandQueueInfo (
    cl_command_queue command_queue,
    cl_command_queue_info param_name,
    size_t param_value_size,
    void *param_value,
    size_t *param_value_size_ret
)

コマンドキューについての情報を取得。

引数

command_queue

情報を取得するコマン
ドキューを指定。

param_name

取得する情報を指定。

param_value

param_nameで指定した
情報についての値が戻るメ
モリ空間へのポインタ。
NULLの場合は無視。

param_value_ size

param_valueが指す
メモリの(バイトで表す)
サイズを指定。
cl_command_queue_info
の戻り値の型のサイズ以上
である必要があります。

param_value_ size_ret

param_valueが取得
するデータの実際の
(バイトで表す)サイ
ズを戻します。
param_value_size_ret
がNULLの場合は無視。

成功した場合の戻り値

CL_SUCCESS

失敗した場合の戻り値

CL_INVALID_ COMMAND_QUEUE

command_queueが
有効なコマンドキュー
でない場合。

CL_INVALID_VALUE

param_nameがサポート
されている値でない場合、
またはparam_value_size
で指定したサイズが
cl_command_queue_info
の戻り値型のサイズより
小さくかつparam_value
がNULLでない場合。

CL_OUT_ OF_RESOURCES

デバイス上のOpenCL
実装が必要とするリソー
ス確保に失敗した場合。

CL_OUT_OF_ HOST_MEMORY

ホスト上のOpenCL実
装が必要とするリソー
ス確保に失敗した場合。

B.11.5. cl_command_queue_info

表B.28 表:cl_command_queue_info

cl_command_
queue_info
戻り値型
param_valueに
戻る情報
CL_QUEUE_
CONTEXT
cl_context
コマンドキューを生成
するときに指定した
OpenCLコンテキス
トを戻す。
CL_QUEUE_
DEVICE


cl_device_id

コマンドキューを生成
するときに指定した
OpenCLデバイスを戻す。
CL_QUEUE_
REFERENCE_COUNT


cl_uint



command_queueの
参照カウントを戻す。
CL_QUEUE_
PROPERTIES
cl_command_
queue_properties


コマンドキューに現在
指定しているプロパティ
を戻す。これらのプロ
パティは
clCreateCommandQueue
のproperties引数で
指定したものです。

Copyright 2018-2019, by Masaki Komatsu