Hi folks,                                                                       

WHAT:                                                                           
 Merge the htor-nbc branch to the trunk. This branch adds LibNBC support        
 to Open MPI (via compiler-wrappers mpi{cc,CC,xx,f90,...}-nbc.                  


WHY:                                                                            
 Users asked for it - this will enable to use non-blocking collective           
 operations with Open MPI easily.                                               


WHEN:                                                                           
 Before 1.3 closes                                                              


TIMEOUT:                                                                        
 I will do the merge at February 13th if no one opposes.                        


DESCRIPTION:                                                                    
 LibNBC implements non-blocking collective operations in an MPI-style. It       
 was planned that Open MPI supports this extension as MPIX_<collective>.        
 However, this would require another MPIX_{Test,Wait} which might collide       
 with any MPIX_ extensions (cf. Generalized Requests). So we decided on         
 the Paris meeting last year that we just import LibNBC and keep the NBC_       
 namespace which should not collide with anything and enables portability       
 without code-changes (since LibNBC can be linked with any MPI).                

 More information on LibNBC is available in "Implementation and                 
 Performance Analysis of Non-Blocking Collective Operations for MPI" and        
 on http://www.unixer.de/research/nbcoll/ .                                     

 Impact to the code base:                                                       
  The impact will be minimal because LibNBC will be added as a third-party      
  library (like vt) in ompi/contrib/libnbc. Jeff did all the build-system       
  magic to get LibNBC's configure script called after ompi is built. So         
  this glue-code is also minimal.                                               

 Impact on compilation time:                                                    
  The implementation will be compiled and installed by default (unless it       
  disables itself during configure).                                            

 Impact on running time:                                                        
  No impact since it just offers additional functionality. No Open MPI          
  functionality will be changed. It is also only linked if those calls are      
  actually used. The command-line arguments are only added if the user          
  uses the -nbc mpi-compiler wrapper. However, using the calls does not         
  necessarily mean that the library achieves any overlap (this depends on       
  the network and also Open MPI's configuration, e.g., leave_pinned for         
  InfiniBand).                                                                  

Best,                                                                           
   Torsten                                                                      

-- 
 bash$ :(){ :|:&};: --------------------- http://www.unixer.de/ -----
Indiana University    | http://www.indiana.edu
Open Systems Lab      | http://osl.iu.edu/
150 S. Woodlawn Ave.  | Bloomington, IN, 474045-7104 | USA
Lindley Hall Room 135 | +01 (812) 855-3608

Reply via email to