Procedure: Configurare e avviare Debugger cluster MPI
Con Debugger cluster MPI è possibile eseguire il debug di applicazioni in parallelo in esecuzione su un cluster Windows HPC Server e che comunicano attraverso MPI (Message Passing Interface). In Visual Studio è possibile selezionare l'head node del cluster e specificare il numero di processi da includere nella sessione di debug, configurare le proprietà avanzate per la sessione di debug dei cluster e quindi avviare il debugger.
Requisiti per l'uso di Debugger cluster MPI
È necessario che Visual Studio 2010 Professional Edition o versione successiva (inclusolo il debugger remoto) sia installato nel computer di sviluppo.
Sono necessarie le autorizzazioni di amministrazione sul cluster.
Visual Studio deve essere in grado di accedere ai compute node su cui eseguire la sessione di debug. Gli scenari riportati di seguito garantiscono il tipo di accesso necessario:
Si sta sviluppando l'applicazione sull'head node del cluster o su un nodo di accesso dedicato.
Si utilizza un cluster in cui i compute node sono connessi alla rete aziendale (topologia°2, 4 o 5) e il computer utilizzato per lo sviluppo è parte dello stesso dominio o di un dominio che ha una relazione di trust con il dominio del cluster.
Per inviare l'applicazione a un cluster HPC utilizzando un computer client, è necessario aver installato Microsoft HPC Pack°2008.
Per creare programmi MPI utilizzando Microsoft Message Passing Interface, è necessario installare Windows HPC Server 2008 SDK sul computer utilizzato per lo sviluppo.
Per configurare Debugger cluster MPI
In Visual Studio, aprire la soluzione contenente l'applicazione in parallelo.
Scegliere Proprietà <nomeProgetto> dal menu Progetto. Viene visualizzata la finestra di dialogo Pagine delle proprietà.
Espandere il nodo Proprietà di configurazione, quindi selezionare Debug.
Selezionare Debugger cluster MPI in Debugger da avviare.
Selezionare i nodi e il numero di processi da utilizzare per il debug.
Selezionare Modifica nodo HPC dall'elenco a discesa Ambiente di esecuzione. Viene visualizzata la finestra di dialogo Selettore nodo.
Selezionare il nome dell'head node da utilizzare nell'elenco a discesa Head node. Se l'head node desiderato non è visualizzato, immettere il nome o l'indirizzo IPv4 dell'head node.
Selezionare il numero di processi da avviare in Numero di processi.
In Pianifica un processo per, selezionare la modalità per allocare i processi. È possibile allocare un processo per Core, Socket o Nodo.
In alternativa, in Seleziona nodi da, è possibile specificare il gruppo di nodi su cui deve essere eseguita la sessione di debug. I nodi nel gruppo selezionato sono visualizzati nell'elenco dei nodi.
In alternativa, per richiedere nodi specifici, selezionare Seleziona manualmente nodi da includere nell'allocazione, quindi scegliere i singoli nodi nell'elenco.
Fare clic su OK per salvare le modifiche e chiudere la finestra di dialogo Selettore nodo.
Configurare le seguenti proprietà:
Directory di distribuzione:
Specificare il nome di una directory di distribuzione. È la posizione da cui vengono copiati i file di output del progetto all'avvio del debugger. Deve trattarsi di una risorsa condivisa di rete, ad esempio:
\\myTestCluster\CcpSpoolDir\$(UserName)\$(ProjectName)
Directory di lavoro:
Specificare una directory di lavoro locale su ogni compute node. I file della directory di distribuzione vengono copiati nelle directory di lavoro sui compute node.
Comando applicazione:
Specificare il nome o il percorso dell'applicazione che sarà eseguita da MPI su ciascun nodo cluster (è l'applicazione per cui è in corso il debug in Visual Studio). Il percorso può corrispondere a una risorsa di condivisione o a un percorso locale su ciascun compute node nel cluster. Se si tratta di un percorso locale, deve essere identico per ogni nodo, ad esempio:
$(WorkDir)\$(TargetFileName)
Distribuisci CRT:
Selezionare Sì se si desidera che Visual Studio distribuisca gli assembly C Runtime (CRT) con l'applicazione.
Se le DLL (Dynamic-Link Library) di debug a thread multipli sono collegate in modo statico, non è necessario distribuire i file CRT. Se le DLL di debug a thread multipli sono collegate in modo dinamico, è necessario distribuire i file CRT.
Pulisci distribuzione:
Selezionare Sì.
Nota
La directory di distribuzione non viene eliminata se contiene file diversi da quelli aggiunti da Visual Studio. Ad esempio, se l'applicazione produce un output nella directory di distribuzione, è opportuno utilizzare uno script post-debug per eliminare la directory.
Fare clic su OK per salvare le modifiche e chiudere la finestra Pagine delle proprietà.
Nota
Durante il debug di più processi, per impostazione predefinita un punto di interruzione influisce su tutti i processi in fase di debug. Per evitare l'interruzione dei processi in punti non previsti, deselezionare l'opzione Quando si interrompe un processo, interrompi tutti i processi. Per ulteriori informazioni sulla modifica del comportamento di interruzione, vedere Procedure: Interrompere l'esecuzione.
Per avviare Debugger cluster MPI
Impostare uno o più punti di interruzione nel codice. Per informazioni su come impostare i punti di interruzione, vedere Punti di interruzione e punti di analisi.
Premere F5 per avviare il debugger.
Nota
In Debugger cluster MPI non è possibile iniziare senza eseguire il debug. Per avviare il debug, è possibile anche premere Ctrl+F5 (o scegliere Avvia senza eseguire debug dal menu Debug).
Dal momento che si sta inviando un processo al cluster, viene richiesto di immettere la password per connettersi al cluster. Digitare la password e premere INVIO.
Dopo l'avvio del debugger, osservare la finestra Processi per verificare il posizionamento dei processi. Per ogni processo è possibile osservare la colonna Qualificatore di trasporto per visualizzare il compute node su cui è in esecuzione il processo.
Nota
Dopo l'avvio del debugger è possibile impostare il processo attivo per il debug facendo doppio clic su un processo nella finestra Processi. Per aprire la finestra Processi, scegliere Finestra, Processi dal menu Debug.
Vedere anche
Concetti
Proprietà di configurazione per Debugger cluster MPI
Scenario: Avvio di Debugger cluster MPI in Visual Studio 2010
Debug delle applicazioni MPI su un cluster HPC