[OMPI users] OpenMPI on a LAN
Hello, I have built an application using opemmpi 1.2.8 that is a client/server application that uses MPI_publish_name and MPI_Lookup_name to start the communication. This application works fine on a single computer. However, i'd like to run it on 2 pcs using linux (ubuntu) connected by a LAN. If I start the server on a computer, my cliente can't find the name published by the server and crashes. What should I do make this work? I believe that my application is correct, so I think I need to install some other service to make MPI see the other computer. []s Heitor
Re: [OMPI users] OpenMPI on a LAN (Raymond Wan)
Hi raymond, I have installed OpenMPI on both computers and my application works on on both of them, but when I try to communicate between them, the method MPI_Lookup_name can't resolve the name published by the other machine. I've tried to run the example from mpi-forum that uses MPI_Open_port too, but it didn't work either. After reading about it on some FAQs e some other threads from the forum, I believe that I need to config my ssh options. Heitor
Re: [OMPI users] OpenMPI on a LAN
Hi Raymond, Raymond wrote: > > Hi Heitor, > > > Heitor Florido wrote: > > I have installed OpenMPI on both computers and my application works on on > > both of them, but when I try to communicate between them, the method > > MPI_Lookup_name can't resolve the name published by the other machine. > > > > I've tried to run the example from mpi-forum that uses MPI_Open_port too, > > but it didn't work either. > > After reading about it on some FAQs e some other threads from the forum, > I > > believe that I need to config my ssh options. > > > > > > Honestly, when I installed Open MPI, I didn't perform any configuration > of the ssh options, as far as I can remember. I'm not sure if someone > else can help you. I can imagine networks being set up incorrectly, but > I can't imagine what incorrect ssh option there would be to prevent one > computer from finding another. In addition to some FAQs, Gus suggested > running a simple example called hello_c.c. Have you tried that? > Yes, I've tried to execute hello_c.c and it worked fine. Here's the outcome : heitor@heitor-desktop:~/Desktop/untitled folder$ mpiexec -n 3 hello Hello, world, I am 1 of 3 Hello, world, I am 0 of 3 Hello, world, I am 2 of 3 It might help if you ran some existing code > (such as http://mpi.deino.net/mpi_functions/MPI_Lookup_name.html), too. > > Ray > I've executed the code example from http://mpi.deino.net/mpi_functions/MPI_Lookup_name.html and it didn't wrote anything on the terminal. Reading the code I've realized that it shouldn't be any printf. I believe that's OK. <http://mpi.deino.net/mpi_functions/MPI_Lookup_name.html> > > > It is hard to give any suggestions unless you give more information such > as a shortened version of your source code and what is the command line > that you ran mpirun with. Here's some pieces of my code: Server: void Servidor::iniciaServidor(){ bool sair = false; int valorRecebido, valorEnviado; MPI_Status s; char porta[MPI_MAX_PORT_NAME]; char nomeServico[25]; strcpy (nomeServico,"GEAR-TRAINING_CENTER" ); MPI_Open_port(MPI_INFO_NULL, porta); MPI_Publish_name(nomeServico, MPI_INFO_NULL, porta); printf ("%s\n", porta); while (true){ MPI_Comm_accept(porta, MPI_INFO_NULL, 0, MPI_COMM_WORLD, &comunicadorInterface); printf ("Conexao aceitada!\n"); ... } Client: void InterfaceUsuario::conectaServidor (){ char porta[MPI_MAX_PORT_NAME]; char nomeServico[25]; strcpy (nomeServico, "GEAR-TRAINING_CENTER"); MPI_Lookup_name(nomeServico, MPI_INFO_NULL, porta); MPI_Comm_connect( porta, MPI_INFO_NULL, 0, MPI_COMM_WORLD, &this->comunicadorServidor ); } If you need the rest of the code, just tell me and I will post it. :D []s Heitor
[OMPI users] undefined symbol: MPI_Send
Hello, My program keeps throwing this error after I created a child process with MPI_comm_spawn: *./../../Desktop/computacaoDistribuida/src/server/server: symbol lookup error: ./../../Desktop/computacaoDistribuida/src/server/server: undefined symbol: MPI_Send* I've already used MPI_Send on other parts of the program... I've tried to print the message recieved from child process, but a similar message appears: *./../../Desktop/computacaoDistribuida/src/server/server: symbol lookup error: ./../../Desktop/computacaoDistribuida/src/server/server: undefined symbol: printf, version GLIBC_2.0 *This printf is executed if MPI_Comm_spawn returned MPI_SUCESS, so I guess this is working. It appears that my libs (glibc, mpi) were unload after the MPI_comm_spawn. Does anyone knows what's this?? Heitor Florido
[OMPI users] undefined symbol: MPI_Send
Hello, My program keeps throwing this error after I created a child process with MPI_comm_spawn: *./../../Desktop/computacaoDistribuida/src/server/server: symbol lookup error: ./../../Desktop/computacaoDistribuida/src/server/server: undefined symbol: MPI_Send* I've already used MPI_Send on other parts of the program... I've tried to print the message recieved from child process, but a similar message appears: *./../../Desktop/computacaoDistribuida/src/server/server: symbol lookup error: ./../../Desktop/computacaoDistribuida/src/server/server: undefined symbol: printf, version GLIBC_2.0 *This printf is executed if MPI_Comm_spawn returned MPI_SUCESS, so I guess this is working. It appears that my libs (glibc, mpi) were unload after the MPI_comm_spawn. Does anyone knows what's this?? Heitor Florido
Re: [OMPI users] undefined symbol: MPI_Send
Hello Tim, I'm using OpenMPI 1.2.8 on Linux Ubuntu 8.04 - kernel 2.4.26 I hope can help you Heitor Florido
Re: [OMPI users] undefined symbol: MPI_Send
> > Hello Tim, > > I'm using OpenMPI 1.2.8 on Linux Ubuntu 8.04 - kernel 2.4.26 > I hope can help you > > Heitor Florido > Ops... It's kernel 2.6.24 and not 2.4.26... sorry Heitor