- Akademische Forschung und Lehre
- Mitarbeiter des KIT
- Studierende des KIT (auch auf privaten Geräten)
-
Debugger DDT
-
Der Debugger DDT von Allinea Software ist ein paralleler und serieller Debugger, der für eine Vielzahl von Systemen verfügbar ist. Die Steuerung geschieht i.w. über Maustasten, so dass kein Erlernen einer umfangreichen Kommandosprache notwendig ist.
- Kontakt:
- Ansprechpartner:
- Dienste:
Paralleler Debugger DDT
Das "Distributed Debugging Tool" (DDT) ist ein am Quelltext orientierter, fensterbasierter Debugger. DDT bietet viele Vorteile gegenüber konventionellen UNIX Debuggern:
- Der Hauptvorteil von DDT ist die Unterstützung für viele parallele Programmiermodelle einschließlich MPI und OpenMP für die Programmiersprachen Fortran90/95 und C/C++.
- DDT's grafische Benutzeroberfläche (basierend auf dem X Window System) macht die Benutzung sehr leicht.
- Der Debugger kann bereits laufenden Prozessen zugeordnet werden.
Der Debugger DDT steht auf den HPC-Systemen des SCC zur Verfügung.
Debugging paralleler MPI Programme
Bei der Benutzung von DDT auf den HPC-Systemen sind folgende Schritte durchzufüheren:
- Übersetzen des Programms mit der zusätzlichen Option
-g
ifort -g -c myprog.f90 ! Fortran95-Programm
icc -g -c myprog.c /* C-Programm */ - Erstellen des ausführbaren Programms (hier: myprog) benötigt keine besonderen Optionen
mpif90 -o myprog myprog.o
- Starten des Programms unter Kontrolle von DDT
ddt <programm>
<programm>
ist der Name des ausführbaren Programms, das unter Kontrolle des Debuggers ausgeführt werden soll..
Nach dem Start von DDT erscheint der "Welcome Screen" von DDT. Hier entscheiden Sie, welche Art von Debugging Sie durchführen wollen
Wenn Sie ein ausführbares Programm debuggen wollen, entscheiden Sie sich für "Run and Debug a Program".
Bei "MPI Implementation" sollte OpenMPI oder Intel MPI eingetragen werden, wenn Sie die jeweilige Standardumgebung benutzen und ein MPI-Programm debuggen wollen. Wenn Sie ein Einzelprozessorprogramm debuggen wollen, wählen Sie bei "MPI Implementation" "none" als Einstellung im "Run Window".
Debugging von OpenMP Programmen
Mittels OpenMP für shared memory Nutzung parallelisierte Programme können mit DDT in ähnlicher Weise bearbeitet werden wie MPI Applikationen oder serielle Programme. Beim Übersetzen des Programms ist zusätzlich die Option -openmp
erforderlich. Die Übersetzung eines Fortran Programms mit dem Intel-Compiler, das OpenMP Direktiven enthält, kann also mit folgendem Kommando geschehen:
ifort -g -qopenmp -o my_openmp_prog my_openmp_prog.f90
Der Aufruf des Debuggers lautet dann:
ddt my_openmp_prog
Geben Sie Im "Run Window" die Anzahl der Threads ein, für die Sie Ihr OpenMP-Programm debuggen wollen.
Links zu DDT
DDT Homepage bei Allinea Software.
Sie können den Debugger DDT auch lokal benutzen, ohne Lizenzgebühren bezahlen zu müssen, indem Sie den Debugger lokal installieren und eine kleine Lizenzdatei benutzen, über die Sie den DDT-Lizenzserver des SCC mitbenutzen. Die bei lokalen Installationen benötigte Lizenzdatei finden Sie auf dem FTP-Server des SCC
(ftp://ftp.scc.kit.edu/pub/campus/Allinea).