VS 2005 & MPI Cluster Debugger trouble
- From: Pulestar <pulestar@xxxxxxxxxxxxxx>
- Date: Wed, 15 Feb 2006 12:05:46 +0100
I've posted this post to some Windows Cluster related groups, but since my problem is VS related, too, I'll try my luck here.
I'm having some troubles trying to debug some MPI parallel applications using VS 2005 .Net and it's MPI Cluster Debugger.
Here's my configuration:
- 3 nodes (head, node01, node02), each with 2 Intel Xeons with two cores (4 cores per node)
- each node uses Windows Server 2003 Compute Cluster Edition with Service Pack 1 (BETA2)
- Compute Cluster Pack is installed on every node
- Compute Cluster Pack SDK (this includes MS-MPI library, msmpi.lib) is installed on every node
- MPIShim.exe is installed in c:\windows\system32\ on every node
- The Remote Debugging Monitor is installed and running on every node
- Visual Studio .Net 2005 Pro is installed only on head node
- I have both computer administrator and domain administrator user rights
I've written a simple program which is using some MPI API calls to test MPI Parallel debugging and it works just fine as long as I'm debugging locally, just on my head node.
There's nothing wrong with the written program, here's it's code:
#include <stdio.h>
#include "mpi.h"
int main (int argc, char *argv[])
{
int rank, size;
char name[MPI_MAX_PROCESSOR_NAME];
int namesize;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Comm_size(MPI_COMM_WORLD, &size);
MPI_Get_processor_name(name, &namesize);
printf("Process #%d of %d total. Processor name %s.\n", rank, size, name);
MPI_Finalize();
return 0;
}
Head node's folder "C:\Share" is shared folder and it's visible through "\\head\share" from all nodes.
Here are my MPI Cluster Debugger settings:
1) MPIRun Command: "job submit /numprocessors:4 /askednodes:node01 /workdir:\\head\share /stdout:debug.out.txt /stderr:debug.err.txt mpiexec"
2) MPIRun Arguments: "-hosts %CCP_NODES%"
3) MPIRun Working Directory: ""
4) Application Command: "\\head\share\myapp.exe"
5) Application Arguments: ""
6) MPIShim Location: "c:\windows\system32\mpishim.exe"
7) MPI network serucity mode: "Accept connections from any address"
8) MPI network filter: ""
Project's output directory is set to "C:\share", so myapp.exe is visible from all nodes.
Here's what I get in my stderr (debug.err.txt) file:
MPISHIM: Debugger was unable to launch requested process '\\head\share\myapp.exe.
Ok, the message is quite straightforward, but why does all work fine when I replace "node01" with "head" in the MPIRun Command text?
When I execute this command (I'm requiring node01!):
job submit /numprocessors:4 /askednodes:node01 /workdir:\\head\share /stdout:debug.out.txt /stderr:debug.err.txt mpiexec -hosts %CCP_NODES% \\head\share\myapp.exe
from COMMAND PROMPT (no debugging involved), job finishes just fine. When I ask for 12 processors and ask for all nodes, job finishes fine, too.
I've tried many different approaches, but I haven't been successful. So, if everyone has ever successfully debugged MPI based application using multiple cluster nodes, I'd appreciate any help or advice given.
Thanks a lot in advance! And thank you for reading this far. :)
Pulestar
.
- Prev by Date: Re: Crash + DBGHelp.dll
- Next by Date: Re: Crash + DBGHelp.dll
- Previous by thread: Remote debugging and thread names
- Next by thread: RE: Edit and Continue problem
- Index(es):
Relevant Pages
|