web-dev-qa-db-ja.com

OpenCLのデバッガー

私はOpenCLに取り組んでいます。 OpenCLコードにステップインしてトレースできるように、OpenCLの優れたデバッガーを知っている人はいますか?

43
Rakesh K

おそらく、GremedyのOpenCLデバッガーは役に立ちますか? http://www.gremedy.com/gDEBuggerCL.php

15
James

CodeXLを確認することもできます。

https://gpuopen.com/compute-product/codexl/

CodeXLはもともとAMDによって開発されましたが、後にオープンソースプロジェクトとしてリリースされました。

18
lateralpunk

最善の策は、Intel OpenCL SDK 1.5で発表されたIntel Debugger for CPUです。

Intel OpenCL SDK Visual Studioで段階的にデバッグできます。

Visual Studioデバッガプラグイン

9
sramij

Linux OSのx86 CPUでGDBを使用してみてください。AMDのチュートリアルを参照してください。 http://developer.AMD.com/gpu/ATIStreamSDK/assets/Debugging_OpenCL_with_GDB_on_x86_CPUs.pdf

6
Stringer

AMD gDEBuggerのみがOpenCLの段階的な実行とその他のおいしい機能をサポートしています http://developer.AMD.com/tools/gDEBugger/Pages/default.aspx

NVidia Parallel NSightおよびその他のNVidia製品は、マーケティング上の決定により、OpenCLデバッグをサポートしません。

6
uelkfr

私は通常、OpenCLプログラムのデバッグが行き詰まっている場合(特にそれより前でも良い)に、 GPUVerify インペリアルカレッジロンドンおよび Oclgrind ブリストル大学の使用をお勧めします。

5
dividiti

使用していませんが、 CLBuilder は有望に見えます

CLBuilderの主な機能

  1. カラー構文でOpenCLカーネルを作成する
  2. カーネルをコンパイルしてエラーをチェックします。独自のアプリを起動してデバッグする必要はありません。
  3. ビルド設定を簡単に作成して選択します。
  4. カーネル入力値を定義し、結果を確認します。
  5. パフォーマンスを向上させるために、カーネル実行時間をプロファイルします。
  6. 異なるワークアイテムサイズセット(グローバルとローカル)を作成して、パフォーマンスをチェックします。
  7. CPUでprintfを使用してカーネルを実行し、コードを簡単にデバッグします。
  8. グラフに入力値と出力値を表示します。
  9. CLBuilderが何をしているかを確認するために実行ログを調べます(各OpenCL C関数をログに記録します)。
  10. カーネルが使用するローカルおよび定数の引数とリソースを確認してください。
  11. カーネルを実行するCコードを生成します。CLBuilderは、この生成されたソースコードもコンパイルして実行します。
  12. プラットフォーム情報を含むすべてのOpenCLプロパティを簡単にチェックします。
3
dbr

NVIDIAの Parallel Nsight デバッガー(以前はNexusと呼ばれていました)はOpenCL(GPU)をサポートしています。

ウェブサイトから:

Parallel Nsightは、CUDA C、OpenCL、DirectCompute、Direct3D、およびOpenGLをサポートしています。

3
Tom