Gewusst wie: Debuggen eines Hochleistungsclusters
Dieses Thema gilt für folgende Anwendungsbereiche:
Edition |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
|||||
Pro, Premium und Ultimate |
Das Debuggen eines Multiprocessing-Programms in einem Hochleistungscluster gleicht dem Debuggen eines gewöhnlichen Programms auf einem Remotecomputer. Es müssen jedoch einige zusätzliche Aspekte berücksichtigt werden. Informationen zu den Setupanforderungen für das Clusterdebuggen finden Sie unter Gewusst wie: Debuggen einer Remoteclusteranwendung. Allgemeine Remote-Setupanforderungen finden Sie unter Remotedebuggen – Setup.
Beim Debuggen auf einem Hochleistungscluster können alle Debugfenster von Visual Studio und alle Verfahren für das Remotedebuggen eingesetzt werden. Da Sie jedoch remote debuggen, ist das externe Konsolenfenster nicht verfügbar.
Das Threadfenster und das Prozessfenster sind zum Debuggen von parallelen Anwendungen besonders nützlich. Tipps zur Verwendung dieser Fenster finden Sie unter Gewusst wie: Verwenden des Fensters "Prozesse" und Gewusst wie: Verwenden des Threadfensters
In den folgenden Verfahren werden einige Techniken vorgestellt, die beim Debuggen in einem Hochleistungscluster besonders nützlich sind.
Beim Debuggen einer parallelen Anwendung kann es erforderlich sein, einen Haltepunkt für einen bestimmten Thread, Prozess oder Computer festzulegen. Dies kann durch das Erstellen eines normalen Haltepunkts und das Hinzufügen eines Haltepunktfilters erfolgen.
So öffnen Sie das Dialogfeld Haltepunktfilter
Klicken Sie in einem Quellcodefenster, im Disassemblyfenster, im Aufruflistenfenster oder im Haltpunktfenster mit der rechten Maustaste auf ein Haltepunktsymbol.
Klicken Sie im Kontextmenü auf Filter. Diese Option wird möglicherweise auf oberster Ebene oder im Untermenü unter Haltepunkte angezeigt.
So legen Sie einen Haltepunkt für einen bestimmten Computer fest
Entnehmen Sie dem Fenster Prozesse den Computernamen.
Wählen Sie einen Haltepunkt aus, und öffnen Sie wie in der vorigen Vorgehensweise beschrieben das Dialogfeld Haltepunktfilter.
Geben Sie im Dialogfeld Haltepunktfilter Folgendes ein:
MachineName =yourmachinename
Zum Erstellen eines komplexeren Filters können Sie Klauseln mit & (dem Operator UND), || (dem Operator ODER) und ! (dem Operator NICHT) und Klammern kombinieren.
Klicken Sie auf OK.
So legen Sie einen Haltepunkt für einen bestimmten Prozess fest
Entnehmen Sie dem Prozessfenster den Prozessnamen oder die Prozess-ID.
Wählen Sie einen Haltepunkt aus, und öffnen Sie wie in der ersten Vorgehensweise beschrieben das Dialogfeld Haltepunktfilter.
Geben Sie im Dialogfeld Haltepunktfilter Folgendes ein:
ProcessName = yourprocessname
- oder -
ProcessID = yourprocessIDnumber
Zum Erstellen eines komplexeren Filters können Sie Klauseln mit & (dem Operator UND), || (dem Operator ODER) und ! (dem Operator NICHT) und Klammern kombinieren.
Klicken Sie auf OK.
So legen Sie einen Haltepunkt für einen bestimmten Thread fest
Entnehmen Sie dem Fenster Threads den Threadnamen oder die Thread-ID.
Wählen Sie einen Haltepunkt aus, und öffnen Sie wie in der ersten Vorgehensweise beschrieben das Dialogfeld Haltepunktfilter.
Geben Sie im Dialogfeld Haltepunktfilter Folgendes ein:
ThreadName = yourthreadname
- oder -
ThreadID = yourthreadIDnumber
Zum Erstellen eines komplexeren Filters können Sie Klauseln mit & (dem Operator UND), || (dem Operator ODER) und ! (dem Operator NICHT) und Klammern kombinieren.
Klicken Sie auf OK.
Beispiel
Im folgenden Beispiel wird das Erstellen eines Filters für einen Haltepunkt für einen Computer mit dem Namen marvin und einen Thread mit dem Namen fourier1 beschrieben.
(MachineName = marvin) & (ThreadName = fourier1)
Siehe auch
Aufgaben
Gewusst wie: Debuggen einer Remoteclusteranwendung
Gewusst wie: Verwenden des Fensters "Prozesse"
Gewusst wie: Verwenden des Threadfensters
Gewusst wie: Angeben eines Haltepunktfilters