clGetEventInfo

提供: Tommy6
移動: 案内検索
OpenCL > OpenCLマニュアル > OpenCLランタイム > OpenCLランタイムAPI > イベントオブジェクト > clGetEventInfo

cl_int clGetEventInfo (cl_event event, cl_event_info param_name, size_t param_value_size, void *param_value, size_t *param_value_size_ret)

イベントオブジェクトについての情報を取得します。

パラメータ

event
有効なイベントオブジェクトを指定します。
param_name
取得する情報を指定します。下記の表にある定数からひとつ選んで指定できます。
param_value
下記の表にしたがって param_name に指定した情報についての値が返されるメモリ空間へのポインタです。NULL の場合は無視されます。
param_value_size
param_value が指すメモリのサイズをバイトで指定します。このサイズは、下記の表で示されている戻り値型のサイズ以上でなければなりません。
param_value_size_ret
param_value にコピーされるデータの実際のサイズをバイトで返します。NULL の場合は無視されます。

取得できる情報

param_name で指定できる情報およびこれに対応して param_value に返される情報を以下の表に示しています。

1.1 : OpenCL 1.1で追加

cl_event_info 戻り値型 解説
CL_EVENT_COMMAND_QUEUE cl_command_queue event と関連付けられたコマンドキューを返します。ユーザイベントオブジェクトについては NULL が返されます。
CL_EVENT_CONTEXT cl_context event と関連付けられたOpenCLコンテキストを返します。
CL_EVENT_COMMAND_TYPE cl_command_type event と関連付けられたコマンドのタイプを返します。以下の値のうちひとつが返されます。
  • CL_COMMAND_NDRANGE_KERNEL
  • CL_COMMAND_TASK
  • CL_COMMAND_NATIVE_KERNEL
  • CL_COMMAND_READ_BUFFER
  • CL_COMMAND_WRITE_BUFFER
  • CL_COMMAND_COPY_BUFFER
  • CL_COMMAND_READ_IMAGE
  • CL_COMMAND_WRITE_IMAGE
  • CL_COMMAND_COPY_IMAGE
  • CL_COMMAND_COPY_BUFFER_TO_IMAGE
  • CL_COMMAND_COPY_IMAGE_TO_BUFFER
  • CL_COMMAND_MAP_BUFFER
  • CL_COMMAND_MAP_IMAGE
  • CL_COMMAND_UNMAP_MEM_OBJECT
  • CL_COMMAND_MARKER
  • CL_COMMAND_ACQUIRE_GL_OBJECTS
  • CL_COMMAND_RELEASE_GL_OBJECTS
  • CL_COMMAND_READ_BUFFER_RECT
  • CL_COMMAND_WRITE_BUFFER_RECT
  • CL_COMMAND_COPY_BUFFER_RECT
  • CL_COMMAND_USER
CL_EVENT_COMMAND_EXECUTION_STATUS cl_int event と関連付けられたコマンドの実行状態を返します。以下の値のうちひとつが返されます。
  • CL_QUEUED - コマンドがコマンドキューに挿入された。
  • CL_SUBMITTED - コマンドキューに関連付けられたデバイスに対し、挿入されたコマンドがホストから送られた。
  • CL_RUNNING - 現在デバイスがコマンドを実行中。
  • CL_COMPLETE - コマンドが完了した。

このほかに、負の整数値のエラーコードが返されることがあります(問題のあるメモリアクセスなどでコマンドが異常終了したときなど)。このエラーコードには、プラットフォームあるいはランタイムAPIが戻り値として返すもしくは errcode_ret に返す値と同様のエラーコードが返されます。

CL_EVENT_REFERENCE_COUNT[1] cl_uint event の参照カウントを返します。

エラー

実行が成功した場合、clGetEventInfo は CL_SUCCESS を返します。そうでない場合は以下のエラーのうちひとつを返します。

  • CL_INVALID_EVENT - event が有効なイベントオブジェクトでないとき。
  • CL_INVALID_VALUE - param_name がサポートされている値でない、あるいは、param_value_size で指定されたサイズが上記の表で指定されている戻り値型のサイズより小さくかつ param_value が NULL でないとき。
  • CL_INVALID_VALUE - param_name で指定した event についての情報が取得できないとき。
  • CL_OUT_OF_RESOURCES - デバイス上でのリソース確保に失敗したとき。
  • CL_OUT_OF_HOST_MEMORY - ホスト上でのリソース確保に失敗したとき。

変更記録

  • OpenCL 1.1
    • param_name に指定できる値として CL_EVENT_CONTEXT が追加

脚注

  1. 返された参照カウントの値はすぐに古くなるものと考えるべきです。アプリケーションでの一般的な使用には向いていません。この機能はメモリリークを検出するために提供されています。


―――― Revision 33, Version 1.1, The OpenCL Specification より翻訳