Comment : déboguer sur un cluster hautement performant
Le débogage d'un programme multitraitement sur un cluster hautement performant est identique au débogage d'un programme ordinaire sur un ordinateur distant. Il y a toutefois d'autres éléments à prendre en compte. Pour plus d'informations sur les besoins généraux de configuration distante, consultez Débogage et diagnostics distants.
Lorsque vous déboguez sur un cluster hautement performant, vous pouvez utiliser toutes les fenêtres de débogage et les techniques Visual Studio disponibles pour le débogage distant. Cependant, puisque vous déboguez à distance, la fenêtre de console externe n'est pas disponible.
Les fenêtres Threads et Processus sont particulièrement utiles pour déboguer des applications parallèles. Pour obtenir des conseils sur l'utilisation de ces fenêtres, consultez <PAVE OVER> Comment : utiliser la fenêtre Processus et Comment : utiliser la fenêtre Threads.
Les procédures suivantes présentent quelques techniques particulièrement utiles pour le débogage sur un cluster hautement performant.
Lors du débogage d'une application parallèle, vous souhaitez définir un point d'arrêt sur un thread, un processus ou un ordinateur particulier. Pour ce faire, vous pouvez créer un point d'arrêt normal, puis ajouter un filtre de point d'arrêt.
Pour ouvrir la boîte de dialogue Filtre de point d'arrêt
Cliquez avec le bouton droit sur un glyphe de point d'arrêt dans une fenêtre source, la fenêtre Code machine, Pile des appels ou Points d'arrêt.
Dans le menu contextuel, cliquez sur Filtre. Cette option peut s'afficher en haut ou dans le sous-menu sous Points d'arrêt.
Pour définir un point d'arrêt sur un ordinateur spécifique
Obtenez le nom de l'ordinateur dans la fenêtre Processus.
Sélectionnez un point d'arrêt et ouvrez la boîte de dialogue Filtre de point d'arrêt, comme décrit dans la procédure précédente.
Dans la boîte de dialogue Filtre de point d'arrêt, tapez :
MachineName =nom_de_votre_ordinateur
Pour créer un filtre plus complexe, vous pouvez associer des clauses à l'aide de &, de l'opérateur AND, ||, de l'opérateur OR !, de l'opérateur NOT et de parenthèses.
Cliquez sur OK.
Pour définir un point d'arrêt sur un processus spécifique
Obtenez le nom du processus ou le numéro d'identifiant du processus de la fenêtre Processus.
Sélectionnez un point d'arrêt et ouvrez la boîte de dialogue Filtre de point d'arrêt, comme décrit dans la première procédure.
Dans la boîte de dialogue Filtre de point d'arrêt, tapez :
ProcessName = nom_de_votre_processeur
- ou -
ProcessID = ID_de_votre_processeur
Pour créer un filtre plus complexe, vous pouvez associer des clauses à l'aide de &, de l'opérateur AND, ||, de l'opérateur OR !, de l'opérateur NOT et de parenthèses.
Cliquez sur OK.
Pour définir un point d'arrêt sur un thread spécifique
Obtenez le nom du thread ou le numéro d'ID de thread dans la fenêtre Threads.
Sélectionnez un point d'arrêt et ouvrez la boîte de dialogue Filtre de point d'arrêt, comme décrit dans la première procédure.
Dans la boîte de dialogue Filtre de point d'arrêt, tapez :
ThreadName = nom_de_votre_thread
- ou -
ThreadID = ID_de_votre_thread
Pour créer un filtre plus complexe, vous pouvez associer des clauses à l'aide de &, de l'opérateur AND, ||, de l'opérateur OR !, de l'opérateur NOT et de parenthèses.
Cliquez sur OK.
Exemple
L'exemple suivant montre comment créer un filtre pour un point d'arrêt sur un ordinateur nommé marvin et un thread nommé fourier1.
(MachineName = marvin) & (ThreadName = fourier1)
Voir aussi
Tâches
Comment : utiliser la fenêtre Threads
Concepts
Autres ressources
Déboguer les applications multithread dans Visual Studio
Débogage et diagnostics distants