[OMPI users] How does OpenMPI decided to use which algorithm in MPI_Bcast????????????????

2009-09-03 Thread shan axida
Hi, 
I had a glance at OpenMPI source codes and there are several algorithms for 
MPI_Bcast function.
My question is how is the algorithm decided to use in a given MPI_Bcast call? 
message size? 
Anyone give me little detailed information for this question?

Thanks a lot.

Axida





Re: [OMPI users] Help: Infiniband interface hang

2009-09-03 Thread Peter Kjellstrom
Could you guys please trim your e-mails. No one wants to scroll by 100K-200K 
old context to see the update (not to mention wasting storage space for 
people.)

/Peter


signature.asc
Description: This is a digitally signed message part.


Re: [OMPI users] Open MPI in a PC network running Windows XP

2009-09-03 Thread Shiqing Fan

Hi George,

The Windows support exists in 1.3.3 and also in trunk.

You can have a look at the README.WINDOWS file in Open MPI source. You 
need to install at least CMake and Visual Studio with C++ compiler; if 
you want to create an installer, you need to install NSIS too.


I'm very glad to share my experience of using Open MPI on Windows systems.


Regards,
Shiqing


George Tsigaridas wrote:

Dear Open MPI users
 
Do you have any suggestions on how to install and use Open MPI in a PC 
network running Windows XP?
 
Thank you in advance
 
George Tsigaridas
 



___
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users



--
--
Shiqing Fan  http://www.hlrs.de/people/fan
High Performance Computing   Tel.: +49 711 685 87234
 Center Stuttgart (HLRS)Fax.: +49 711 685 65832
Address:Allmandring 30   email: f...@hlrs.de
70569 Stuttgart




Re: [OMPI users] Help!

2009-09-03 Thread Eugene Loh




guosong wrote:

  I am new to open MPI

I am not, but I'm not real familiar with thread-safe MPI programming. 
Still, I saw no other replies to your question, so I'll make an attempt
to answer.

MPI does not guarantee thread safety.  E.g., see
http://www.mpi-forum.org/docs/mpi-20-html/node162.htm#Node162 and the
ensuing pages.

To do what you want to do, you need to make sure you have thread
safety.  There is a standard MPI interface for doing so.  I'm not good
at C++, so here is a C example:



#include 
#include 

int main(int argc, char **argv) {
  int provided;

  /* start MPI, asking for support for multiple threads */
 
MPI_Init_thread(&argc,&argv,MPI_THREAD_MULTIPLE,&provided);

  /* report what level of support is actually provided */
  if ( MPI_THREAD_SINGLE == provided ) printf("
MPI_THREAD_SINGLE\n");
  if ( MPI_THREAD_FUNNELED   == provided ) printf("
MPI_THREAD_FUNNELED\n");
  if ( MPI_THREAD_SERIALIZED == provided ) printf("
MPI_THREAD_SERIALIZED\n");
  if ( MPI_THREAD_MULTIPLE   == provided ) printf("
MPI_THREAD_MULTIPLE\n");

  /* exit */
  MPI_Finalize();

  return 0;
}



Run this program.  If the program does not print out
"MPI_THREAD_MULTIPLE", you're not getting the level of thread support
you require and your program is not guaranteed to run properly.  You
have to make sure you're using a thread-safe MPI before you can expect
your program to work.

The next question is whether Open MPI is thread safe, and I'll leave
you with this:
http://www.open-mpi.org/faq/?category=supported-systems#thread-support

Good luck.  Again, I'm not experienced with thread-safe MPI programming
(though I understand the general concepts).




Re: [OMPI users] Help!

2009-09-03 Thread guosong

Thanks. I thought those threads will not interfere with each other since they 
have no common variables except std IO. 



List-Post: users@lists.open-mpi.org
Date: Thu, 3 Sep 2009 09:01:28 -0700
From: eugene@sun.com
To: us...@open-mpi.org
Subject: Re: [OMPI users] Help!

guosong wrote: 


I am new to open MPI
I am not, but I'm not real familiar with thread-safe MPI programming.  Still, I 
saw no other replies to your question, so I'll make an attempt to answer.

MPI does not guarantee thread safety.  E.g., see 
http://www.mpi-forum.org/docs/mpi-20-html/node162.htm#Node162 and the ensuing 
pages.

To do what you want to do, you need to make sure you have thread safety.  There 
is a standard MPI interface for doing so.  I'm not good at C++, so here is a C 
example:



#include 
#include 

int main(int argc, char **argv) {
  int provided;

  /* start MPI, asking for support for multiple threads */
  MPI_Init_thread(&argc,&argv,MPI_THREAD_MULTIPLE,&provided);

  /* report what level of support is actually provided */
  if ( MPI_THREAD_SINGLE == provided ) printf(" MPI_THREAD_SINGLE\n");
  if ( MPI_THREAD_FUNNELED   == provided ) printf(" MPI_THREAD_FUNNELED\n");
  if ( MPI_THREAD_SERIALIZED == provided ) printf(" MPI_THREAD_SERIALIZED\n");
  if ( MPI_THREAD_MULTIPLE   == provided ) printf(" MPI_THREAD_MULTIPLE\n");

  /* exit */
  MPI_Finalize();

  return 0;
}



Run this program.  If the program does not print out "MPI_THREAD_MULTIPLE", 
you're not getting the level of thread support you require and your program is 
not guaranteed to run properly.  You have to make sure you're using a 
thread-safe MPI before you can expect your program to work.

The next question is whether Open MPI is thread safe, and I'll leave you with 
this:
http://www.open-mpi.org/faq/?category=supported-systems#thread-support

Good luck.  Again, I'm not experienced with thread-safe MPI programming (though 
I understand the general concepts).

_
MSN十周年庆典,查看MSN注册时间,赢取神秘大奖
http://10.msn.com.cn