Re: [OMPI users] How to create multi-thread parallel program using thread-safe send and recv?

2009-09-28 Thread guosong
Thanks. > From: jsquy...@cisco.com > To: us...@open-mpi.org > Date: Mon, 28 Sep 2009 11:49:36 -0400 > Subject: Re: [OMPI users] How to create multi-thread parallel program using > thread-safe send and recv? > > On Sep 28, 2009, at 11:48 AM, guosong wrote: > > > O

Re: [OMPI users] How to create multi-thread parallel program using thread-safe send and recv?

2009-09-28 Thread Jeff Squyres
On Sep 28, 2009, at 11:48 AM, guosong wrote: Oh, thanks. I found that mpich2/gnu supports MPI_THREAD_MULTIPLE by default on my server. So if it supports MPI_THREAD_MULTIPLE, does it mean that I can run the program without segmentation fault (if there is no other bugs ^_^) Hypothetically,

Re: [OMPI users] How to create multi-thread parallel program using thread-safe send and recv?

2009-09-28 Thread guosong
Date: Mon, 28 Sep 2009 11:28:31 -0400 > Subject: Re: [OMPI users] How to create multi-thread parallel program using > thread-safe send and recv? > > On Sep 27, 2009, at 1:45 PM, guosong wrote: > > > Hi Loh, > > I used MPI_Init_thread(&argc,&argv, MPI_THREAD_MULT

Re: [OMPI users] How to create multi-thread parallel program using thread-safe send and recv?

2009-09-28 Thread Jeff Squyres
On Sep 27, 2009, at 1:45 PM, guosong wrote: Hi Loh, I used MPI_Init_thread(&argc,&argv, MPI_THREAD_MULTIPLE, &provided); in my program and got provided = 0 which turns out to be the MPI_THREAD_SINGLE. Does this mean that I can not use MPI_THREAD_MULTIPLE model? Correct. To get Open MPI

Re: [OMPI users] How to create multi-thread parallel program using thread-safe send and recv?

2009-09-27 Thread guosong
: [OMPI users] How to create multi-thread parallel program using thread-safe send and recv? guosong wrote: I used MPI_Init_thread(&argc,&argv, MPI_THREAD_MULTIPLE, &provided); in my program and got provided = 0 which turns out to be the MPI_THREAD_SINGLE. Does this mean that I

Re: [OMPI users] How to create multi-thread parallel program using thread-safe send and recv?

2009-09-27 Thread Eugene Loh
guosong wrote: I used MPI_Init_thread(&argc,&argv, MPI_THREAD_MULTIPLE, &provided); in my program and got provided = 0 which turns out to be the MPI_THREAD_SINGLE. Does this mean that I can not use MPI_THREAD_MULTIPLE model? Right.  I've not done much multithreaded MPI work.  Someone else on

Re: [OMPI users] How to create multi-thread parallel program using thread-safe send and recv?

2009-09-27 Thread guosong
quot; sends to "<< nprocs-1 << " sMSG.x = " << sMSG.x << endl; MPI_Recv(&rMSG, MSG_QUERY_SIZE, MPI_CHAR, nprocs-1, myid, MPI_COMM_WORLD, &status2); //MPI_Irecv(&rMSG, MSG_QUERY_SIZE, MPI_CHAR, nprocs-1, myid, MPI_COMM_WORLD, &requ2); //MPI_

Re: [OMPI users] How to create multi-thread parallel program using thread-safe send and recv?

2009-09-22 Thread guosong
This is just a test example. The real project behind it needs to configure like that. > From: te...@chem.gu.se > To: us...@open-mpi.org > Date: Wed, 23 Sep 2009 09:39:22 +1000 > Subject: Re: [OMPI users] How to create multi-thread parallel program using > thread-safe send and re

Re: [OMPI users] How to create multi-thread parallel program using thread-safe send and recv?

2009-09-22 Thread Terry Frankcombe
If you want all threads to communicate via MPI, and your initially launching multiple parents, I don't really see the advantage of using threads at all. Why not launch 12 MPI processes? On Tue, 2009-09-22 at 10:32 -0700, Eugene Loh wrote: > guosong wrote: > > Thanks for responding. I used a linu

Re: [OMPI users] How to create multi-thread parallel program using thread-safe send and recv?

2009-09-22 Thread Eugene Loh
guosong wrote: Thanks for responding. I used a linux cluster. I think I would like to create a model that is multithreaded and each thread can make MPI calls. I attached test code as follow. It has two pthreads and there are MPI calls in both of those two threads. In the main function, there

Re: [OMPI users] How to create multi-thread parallel program using thread-safe send and recv?

2009-09-22 Thread guosong
myid << endl; fflush(stdout); } pret1 = pthread_create(&pt1, NULL, backRecv, NULL); if(pret1 != 0) { cout << myid << "backRecv Thread Create Failed." << endl; exit(1); } pret2 = pthread_create(&pt2, NULL, backID, NULL); if(pret2

Re: [OMPI users] How to create multi-thread parallel program using thread-safe send and recv?

2009-09-22 Thread Eugene Loh
guosong wrote: Hi all, I would like to write a multi-thread parallel program. I used pthread. Basicly, I want to create two background threads besides  the main thread(process). For example, if I use "-np 4", the program should have 4 main processes on four processors and two background thre

[OMPI users] How to create multi-thread parallel program using thread-safe send and recv?

2009-09-22 Thread guosong
Hi all, I would like to write a multi-thread parallel program. I used pthread. Basicly, I want to create two background threads besides the main thread(process). For example, if I use "-np 4", the program should have 4 main processes on four processors and two background threads for each main