表B.58 表:clRetainMemObject
関数 | ||
cl_int | clRetainMemObject ( cl_mem memobj ) | |
メモリオブジェクト参照カウントをインクリメント。 | ||
成功した場合の戻り値 | ||
CL_SUCCESS | ||
失敗した場合の戻り値 | ||
CL_INVALID_ MEM_OBJECT | memobjが有効な メモリオブジェクト でない場合。( バッファまたはイメ ージオブジェクト) | |
CL_OUT_ OF_RESOURCES | デバイス上のOpenCL 実装が必要とするリソ ース確保に失敗した場合。 | |
CL_OUT_OF_ HOST_MEMORY | ホスト上のOpenCL 実装が必要とするリ ソース確保に失敗し た場合。 |
表B.59 表:clReleaseMemObject
関数 cl_int | ||
clReleaseMemObject ( cl_mem memobj ) | ||
memobjの参照カウントをデクリメント。 | ||
引数 | ||
成功した場合の戻り値 | ||
CL_SUCCESS | ||
失敗した場合の戻り値 | ||
CL_INVALID_ MEM_OBJECT | memobjが有効な メモリオブジェクト でない場合。 | |
CL_OUT_ OF_RESOURCES | デバイス上の OpenCL実装が必要 とするリソース確保 に失敗した場合。 | |
CL_OUT_OF_ HOST_MEMORY | ホスト上のOpenCL 実装が必要とする リソース確保に 失敗した場合。 |
表B.60 表:clSetMemObjectDestructorCallback
関数 | ||
cl_int | clSetMemObjectDestructorCallback ( cl_mem memobj, void (CL_CALLBACK *pfn_notify) ( cl_mem memobj, void *user_data ), void *user_data ) | |
ユーザーコールバック関数をメモリ オブジェクトと登録。clSetMemObject DestructorCallbackのそれぞれの呼び出し は指定したユーザーコールバック関数を memobjに関連付けられたコールバック スタック上に登録。登録されたユーザーコー ルバック関数は、登録された際の逆順で呼び 出される。ユーザーコールバック関数が呼 ばれると、メモリオブジェクトのリソースが 解放されて削除される。これは、host_ptrで参 照されたメモリが再利用または解放された際に、 アプリケーションがmemobjについて通知を 受ける仕組みを提供 | ||
引数 | ||
memobj | 有効なメモリオ ブジェクトを指定。 | |
pfn_notify | アプリケーション が登録するコール バック関数を指定。 この関すはOpenCL 実装に非同期で呼び 出される。 | |
memobj | 削除されるメモリ オブジェクトを指定。 ユーザーコールバック は実装に呼び出され た際、このメモリオブ ジェクトはすでに有 効でなくなる。 memobjは参考目的 のためだけに提供さ れている。 | |
user_data | 提供されたデータ を指すポインタを 指定。 | |
成功した場合の戻り値 | ||
CL_SUCCESS | ||
失敗した場合の戻り値 | ||
CL_INVALID_ MEM_OBJECT | memobjが有効な メモリオブジェクト でない場合。 | |
CL_INVALID_ VALUE | pfn_notifyが NULLの場合 | |
CL_OUT_OF_ RESOURCES | デバイス上のOpenCL 実装が必要とする リソース確保に失敗 した場合。 | |
CL_OUT_OF_ HOST_MEMORY | ホスト上のOpenCL 実装が必要とする リソース確保に失敗 した場合。 |
Copyright 2018-2019, by Masaki Komatsu