Just to check what is going on, why don't you remove that message passing code and just
printf("Hello MPI World from process %d!", my_rank in each process? Much more direct - avoids any ambiguity. Also, be certain that you compile this program for the specific OMPI version you are running it under. OMPI is NOT binary compatible across releases - you have to recompile the program for the specific release you are going to use. On Apr 17, 2010, at 4:52 PM, Mario Ogrizek wrote: > Ofcourse, its the same program, wasnt recompiled for a week. > > > #include <stdio.h> > #include <string.h> > #include "mpi.h" > > int main(int argc, char* argv[]){ > int my_rank; /* rank of process */ > int p; /* number of processes */ > int source; /* rank of sender */ > int dest; /* rank of receiver */ > int tag=0; /* tag for messages */ > char message[100]; /* storage for message */ > MPI_Status status ; /* return status for receive */ > > /* start up MPI */ > > MPI_Init(&argc, &argv); > > /* find out process rank */ > MPI_Comm_rank(MPI_COMM_WORLD, &my_rank); > > > /* find out number of processes */ > MPI_Comm_size(MPI_COMM_WORLD, &p); > > > if (my_rank !=0){ > /* create message */ > sprintf(message, "Hello MPI World from process %d!", my_rank); > dest = 0; > /* use strlen+1 so that '\0' get transmitted */ > MPI_Send(message, strlen(message)+1, MPI_CHAR, > dest, tag, MPI_COMM_WORLD); > } > else{ > printf("Hello MPI World From process 0: Num processes: %d\n",p); > for (source = 1; source < p; source++) { > MPI_Recv(message, 100, MPI_CHAR, source, tag, > MPI_COMM_WORLD, &status); > printf("%s\n",message); > } > } > /* shut down MPI */ > MPI_Finalize(); > > > return 0; > } > > I triplechecked: > v1.2 output > Hello MPI World From process 0: Num processes: 4 > Hello MPI World from process 1! > Hello MPI World from process 2! > Hello MPI World from process 3! > > v1.4 output: > Hello MPI World From process 0: Num processes: 1 > Hello MPI World From process 0: Num processes: 1 > Hello MPI World From process 0: Num processes: 1 > Hello MPI World From process 0: Num processes: 1 > > > > > > > > On Sat, Apr 17, 2010 at 9:13 PM, Ralph Castain <r...@open-mpi.org> wrote: > > On Apr 17, 2010, at 11:17 AM, Mario Ogrizek wrote: > >> Hahaha, ok then that WAS silly! :D >> So there is no way to utilize both cores with mpi? > > We are using both cores - it is just that they are on the same node. Unless > told otherwise, the processes will use shared memory for communication. > >> >> Ah well, I'll correct that. >> >> From console, im starting a job like this: mpirun -np 4 Program, where i >> want to run a Program on 4 processors. >> I was just stumbled when i got same output 4 times, like there are 4 >> processes ranked 0. >> While with the old version of mpi (1.2) same execution would give 4 >> processes ranked 0..3. > > And so you should - if not, then there is something wrong. No way mpirun > would start 4 processes ranked 0. How are you printing the rank? Are you sure > you are getting it correctly? > > >> >> Hope you see my question. >> >> On Sat, Apr 17, 2010 at 6:29 PM, Ralph Castain <r...@open-mpi.org> wrote: >> >> On Apr 17, 2010, at 1:16 AM, Mario Ogrizek wrote: >> >>> I am new to mpi, so I'm sorry for any silly questions. >>> >>> My idea was to try to use dual core machine as two nodes. I have a limited >>> access to a cluster, so this was just for "testing" purposes. >>> My default hostfile contains usual comments and this two nodes: >>> >>>> node0 >>>> node1 >>> I thought that each processor is a node for MPI purpose. >> >> I'm afraid not - it is just another processor on that node. So you only have >> one node as far as OMPI is concerned. >> >>> Im not sure what do you mean with "mpirun cmd line"? >> >> How are you starting your job? The usual way is with "mpirun -n N ...". That >> is what we mean by the "mpirun cmd line" - i.e., what command are you using >> to start your job? >> >> It sounds like things are actually working correctly. You might look at >> "mpirun -h" for possible options of interest. >> >> >>> >>> Regards, >>> >>> Mario >>> >>> On Sat, Apr 17, 2010 at 1:54 AM, Ralph Castain <r...@open-mpi.org> wrote: >>> >>> On Apr 16, 2010, at 5:08 PM, Mario Ogrizek wrote: >>> >>>> I checked the default MCA param file, and found it was there that was >>>> (automatically) specified as a relative path, so i changed it. >>>> So now, it works, altho, still something is not right. >>>> Seems like its creating 4 times only 1 process. >>>> Not sure if it has to do something with my hostfile, it contains: >>>> >>>> node0 >>>> node1 >>>> >>>> I am running this on a simple dualcore machine, so i specified it as a >>>> localhost with two nodes. >>> >>> I don't understand this comment - a dual core machine would still be a >>> single node. Just happens to have two processors in it. >>> >>> Could you send the contents of your hostfile and your mpirun cmd line? >>> >>>> >>>> Regards, >>>> >>>> Mario >>>> >>>> On Sat, Apr 17, 2010 at 12:52 AM, Mario Ogrizek <mario.guard...@gmail.com> >>>> wrote: >>>> I understand, so, its looking for a >>>> working_dir/usr/local/etc/openmpi-default-hostfile >>>> I managed to run a hello world program from the console, while my wd was >>>> just "/" and it worked, altho strangely... >>>> example for 4 procs: >>>> >>>> Hello MPI World From process 0: Num processes: 1 >>>> Hello MPI World From process 0: Num processes: 1 >>>> Hello MPI World From process 0: Num processes: 1 >>>> Hello MPI World From process 0: Num processes: 1 >>>> >>>> So, you are saying i allways have to be in "/" to run mpi programs, or >>>> there is a way for mpi to search absolute path? >>>> It seems pretty inconvinient this way. >>>> I think v 1.2 didnt have this limitation. >>>> >>>> Does this have to do anything with LD_LIBRARY_PATH? >>>> >>>> Regards, >>>> >>>> Mario >>>> >>>> On Fri, Apr 16, 2010 at 7:46 PM, Ralph Castain <r...@open-mpi.org> wrote: >>>> How did you specify it? Command line? Default MCA param file? >>>> >>>> On Apr 16, 2010, at 11:44 AM, Mario Ogrizek wrote: >>>> >>>>> Any idea how to solve this? >>>>> >>>>> On Fri, Apr 16, 2010 at 7:40 PM, Timur Magomedov >>>>> <timur.magome...@developonbox.ru> wrote: >>>>> Hello. >>>>> It looks that you hostfile path should >>>>> be /usr/local/etc/openmpi-default-hostfile not >>>>> usr/local/etc/openmpi-default-hostfile but somehow Open MPI gets the >>>>> second path. >>>>> >>>>> В Птн, 16/04/2010 в 19:10 +0200, Mario Ogrizek пишет: >>>>> > Well, im not sure why should i name it /openmpi-default-hostfile >>>>> > Especially, because mpirun v1.2 executes without any errors. >>>>> > But, i made a copy named /openmpi-default-hostfile, and still, the >>>>> > same result. >>>>> > >>>>> > This is the whole error message for a simple hello world program: >>>>> > >>>>> > >>>>> > Open RTE was unable to open the hostfile: >>>>> > usr/local/etc/openmpi-default-hostfile >>>>> > Check to make sure the path and filename are correct. >>>>> > -------------------------------------------------------------------------- >>>>> > [Mario.local:04300] [[114,0],0] ORTE_ERROR_LOG: Not found in file >>>>> > base/ras_base_allocate.c at line 186 >>>>> > [Mario.local:04300] [[114,0],0] ORTE_ERROR_LOG: Not found in file >>>>> > base/plm_base_launch_support.c at line 72 >>>>> > [Mario.local:04300] [[114,0],0] ORTE_ERROR_LOG: Not found in file >>>>> > plm_rsh_module.c at line 990 >>>>> > -------------------------------------------------------------------------- >>>>> > A daemon (pid unknown) died unexpectedly on signal 1 while attempting >>>>> > to >>>>> > launch so we are aborting. >>>>> > >>>>> > >>>>> > There may be more information reported by the environment (see above). >>>>> > >>>>> > >>>>> > This may be because the daemon was unable to find all the needed >>>>> > shared >>>>> > libraries on the remote node. You may set your LD_LIBRARY_PATH to have >>>>> > the >>>>> > location of the shared libraries on the remote nodes and this will >>>>> > automatically be forwarded to the remote nodes. >>>>> > -------------------------------------------------------------------------- >>>>> > -------------------------------------------------------------------------- >>>>> > mpirun noticed that the job aborted, but has no info as to the process >>>>> > that caused that situation. >>>>> > -------------------------------------------------------------------------- >>>>> > mpirun: clean termination accomplished >>>>> > >>>>> > >>>>> > >>>>> > >>>>> > ps. PTP is a parallel tools platform plugin for eclipse >>>>> > >>>>> > >>>>> > Regards, >>>>> > >>>>> > >>>>> > Mario >>>>> > >>>>> > _______________________________________________ >>>>> > users mailing list >>>>> > us...@open-mpi.org >>>>> > http://www.open-mpi.org/mailman/listinfo.cgi/users >>>>> >>>>> >>>>> -- >>>>> Kind regards, >>>>> Timur Magomedov >>>>> Senior C++ Developer >>>>> DevelopOnBox LLC / Zodiac Interactive >>>>> http://www.zodiac.tv/ >>>>> >>>>> _______________________________________________ >>>>> users mailing list >>>>> us...@open-mpi.org >>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users >>>>> >>>>> _______________________________________________ >>>>> users mailing list >>>>> us...@open-mpi.org >>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users >>>> >>>> >>>> _______________________________________________ >>>> users mailing list >>>> us...@open-mpi.org >>>> http://www.open-mpi.org/mailman/listinfo.cgi/users >>>> >>>> >>>> _______________________________________________ >>>> users mailing list >>>> us...@open-mpi.org >>>> http://www.open-mpi.org/mailman/listinfo.cgi/users >>> >>> >>> _______________________________________________ >>> users mailing list >>> us...@open-mpi.org >>> http://www.open-mpi.org/mailman/listinfo.cgi/users >>> >>> _______________________________________________ >>> users mailing list >>> us...@open-mpi.org >>> http://www.open-mpi.org/mailman/listinfo.cgi/users >> >> >> _______________________________________________ >> users mailing list >> us...@open-mpi.org >> http://www.open-mpi.org/mailman/listinfo.cgi/users >> >> _______________________________________________ >> users mailing list >> us...@open-mpi.org >> http://www.open-mpi.org/mailman/listinfo.cgi/users > > > _______________________________________________ > users mailing list > us...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/users > > _______________________________________________ > users mailing list > us...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/users