2010-03-02 7 views
41

Je travaille sur OpenCL. Est-ce que quelqu'un connaît un bon débogueur pour OpenCL afin que je puisse entrer dans le code OpenCL et tracer?Débogueur pour OpenCL

Répondre

14

Peut-être que le débogueur OpenCL de Gremedy serait utile? http://www.gremedy.com/gDEBuggerCL.php

+0

Maintenant, il est disponible dans le site Web AMD mis à jour la version 6.2 disponible pour Windows et Linux http://developer.amd.com/tools/gDEBugger/Pages/default.aspx – kiranputtur

+0

@ocluser Ce n'est plus en cours. AMD a abandonné gDEBugger, qui est remplacé par [CodeXL] (http://developer.amd.com/tools/heterogeneous-computing/codexl/). [Gremedy's] (http://www.gremedy.com/gDEBuggerCL.php) est la dernière version de gDEBugger (11 déc 2012). – kynan

2

Le débogueur NVIDIA Parallel Nsight (anciennement appelé Nexus) prend en charge OpenCL (GPU).

Depuis le site Web:

Parallel Nsight prend en charge CUDA C, OpenCL, DirectCompute, Direct3D et OpenGL.

5

seulement AMD gDEBugger prend en charge étape par étape OpenCL en cours d'exécution et d'autres caractéristiques savoureux http://developer.amd.com/tools/gDEBugger/Pages/default.aspx

NVidia Parallel Nsight et d'autres produits NVidia ne supporteront pas le débogage OpenCL en raison des décisions de marketing.

+1

AMD a abandonné gDEBugger, qui est remplacé par [CodeXL] (http://developer.amd.com/tools/heterogeneous-computing/codexl/). [Gremedy's] (http://www.gremedy.com/gDEBuggerCL.php) est la dernière version de gDEBugger (11 déc 2012). – kynan

2

Je ne l'ai pas utilisé, mais CLBuilder semble prometteur

Caractéristiques principales de CLBuilder

  1. noyaux Ecrire OpenCL avec la couleur syntaxing
  2. compiler le noyau pour vérifier les erreurs sans qu'il soit nécessaire de lancer et déboguer votre propre application.
  3. Créez et sélectionnez facilement les paramètres de construction.
  4. Définir les valeurs d'entrée du noyau et vérifier les résultats.
  5. Afficher le temps d'exécution du noyau afin d'améliorer les performances.
  6. Créez différentes tailles d'éléments de travail (global et local) pour vérifier les performances .
  7. Exécuter le noyau avec printf sur CPU et facilement déboguer le code.
  8. Afficher les valeurs d'entrée et de sortie sur un graphique.
  9. Consultez le journal d'exécution pour voir ce que fait CLBuilder (log chaque fonction OpenCL C).
  10. Vérifier les arguments et ressources locaux et constants utilisés par le noyau .
  11. Générer du code C pour exécuter le noyau, CLBuilder compilera également ce code source généré et l'exécutera.
  12. Facilement vérifier toutes les propriétés OpenCL y compris les informations de la plate-forme.
+0

Remarque: CLBuilder semble être un produit commercial pour Mac. –

+0

@EmanuelEy Yep, ça coûte 25USD'ish – dbr

15

Vous pouvez également regarder dans CodeXL:

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

CodeXL a été initialement développé par AMD, mais il a été libéré par la suite comme un projet open-source.

+0

CodeXL est en effet un excellent débogueur OpenCL, il était anciennement connu sous le nom de gDebugger –

+3

Je considère que CodeXL est de loin le meilleur outil opencl disponible gratuitement. Il vous donne le débogage CPU/GPU et le profilage tout en un. –

4

Je recommande généralement l'utilisation GPUVerify de l'Imperial College de Londres et Oclgrind de l'Université de Bristol, en particulier lorsque vous êtes coincé déboguer vos programmes OpenCL (mais mieux avant même que).

+0

Heh! Je suis venu ici pour parler d'oclgrind, mais tu m'as battu pour ça :-) Mais ça ne supporte pas les warps pour l'instant je pense? Est-ce que GPUVerify fournit un débogage pas à pas des noyaux opencl? –