第9章 OpenCLランタイム

目次

9.1. コマンドキュー
9.1.1. clCreateCommandQueue
9.1.2. cl_command_queue_properties
9.1.3. clRetainCommandQueue
9.1.4. clReleaseCommandQueue
9.1.5. cl_command_queue_info
9.2. バッファオブジェクト
9.2.1. clCreateBuffer
9.2.2. cl_mem_flags
9.2.3. Intel iGPU
9.3. バッファーの読み込み・書き込み・コピー
9.3.1. clEnqueueReadBufferとclEnqueueWriteBuffer
9.3.2. 矩形領域
9.3.3. clEnqueueReadBufferRectとclEnqueueWriteBufferRect
9.3.4. clEnqueueCopyBuffer
9.3.5. clEnqueueCopyBufferRect
9.3.6. clEnqueueFillBuffer
9.4. バッファオブジェクトのマップ
9.4.1. clEnqueueMapBuffer
9.5. オブジェクトのライフサイクル
9.5.1. clRetainMemObject
9.5.2. clReleaseMemObject
9.5.3. clSetMemObjectDestructorCallback
9.6. マップされたメモリオブジェクトをアンマップ
9.6.1. clEnqueueUnmapMemObject
9.7. イメージオブジェクト
9.7.1. 検証環境の準備
9.7.2. clCreateImage
9.7.3. 実装例
9.7.4. イメージデータのバッファ
9.7.5. cl_image_format
9.7.6. イメージ記述子
9.7.7. clGetSupportedImageFormats
9.7.8. サポートするイメージ型式
9.8. イメージの読み込みと書き込み
9.8.1. clEnqueueReadImageとclEnqueueWriteImage
9.8.2. clEnqueueCopyImage
9.8.3. clEnqueueFillImage
9.8.4. clEnqueueCopyImageToBuffer
9.8.5. clEnqueueCopyBufferToImage
9.9. イメージオブジェクトのマッピング
9.9.1. clEnqueueMapImage
9.9.2. cl_map_flags
9.10. イメージ情報取得
9.10.1. clGetImageInfo
9.10.2. cl_image_info
9.11. サンプラーオブジェクト
9.11.1. clCreateSampler
9.11.2. clRetainSampler
9.11.3. clReleaseSampler
9.11.4. clGetSamplerInfo
9.11.5. cl_sampler_info
9.12. プログラムオブジェクト
9.12.1. カーネルソースファイルの読み込みの復習
9.12.2. clCreateProgramWithSource
9.12.3. clCreateProgramWithBinary
9.12.4. clCreateProgramWithBuiltInKernels
9.12.5. clRetainProgram
9.12.6. clReleaseProgram
9.13. 実行プログラムのビルド
9.13.1. clBuildProgram
9.13.2. ビルドオプション
9.14. コンパイラ(ビルド)オプション
9.15. リンカーオプション
9.16. OpenCLコンパイラのアンロード
9.16.1. clUnloadPlatformCompiler
9.17. プログラムオブジェクトのクエリ
9.17.1. clGetProgramInfo
9.17.2. cl_program_info
9.17.3. clGetProgramBuildInfo
9.17.4. cl_program_build_info
9.18. カーネルオブジェクト
9.18.1. clCreateKernel
9.18.2. clCreateKernelsInProgram
9.18.3. clRetainKernel
9.18.4. clReleaseKernel
9.19. カーネル引数設定
9.19.1. clSetKernelArg
9.20. カーネルオブジェクト情報の取得
9.20.1. clGetKernelInfo
9.20.2. cl_kernel_info
9.20.3. clGetKernelWorkGroupInfo
9.20.4. cl_kernel_work_group_info
9.20.5. clGetKernelArgInfo
9.20.6. cl_kernel_arg_info
9.21. カーネルの実行
9.21.1. clEnqueueNDRangeKernel
9.21.2. clEnqueueTask
9.21.3. clEnqueueNativeKernel
9.22. イベントオブジェクト
9.22.1. clCreateUserEvent
9.22.2. clSetUserEventStatus
9.22.3. clWaitForEvents
9.22.4. clGetEventInfo
9.22.5. cl_event_info
9.23. マーカー・バリアー・イベント待機
9.23.1. clEnqueueMarkerWithWaitList
9.23.2. clEnqueueBarrierWithWaitList
9.24. プロファイリング
9.24.1. clGetEventProfilingInfo
9.24.2. cl_profiling_info
9.25. Flush・Finish
9.25.1. clFlush
9.25.2. clFinish

Copyright 2018-2019, by Masaki Komatsu