表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