The Open MPI Team, representing a consortium of research, academic, and industry partners, is pleased to announce the release of Open MPI version 1.7.4, the next feature release in the 1.7 series. This release includes several major new features plus numerous bug fixes:
http://www.open-mpi.org/software/ompi/v1.7/ 1.7.4 ----- ********************************************************************** * CRITICAL CHANGE * * As of release 1.7.4, OpenMPI's default mapping, ranking, and binding * settings have changed: * * Mapping: * if #procs <= 2, default to map-by core * if #procs > 2, default to map-by socket * Ranking: * if default mapping is used, then default to rank-by slot * if map-by <obj> is given, then default to rank-by <obj>, * where <obj> is whatever object we mapped against * Binding: * default to bind-to core * * Users can override any of these settings individually using the * corresponding MCA parameter. Note that multi-threaded applications * in particular may want to override at least the binding default * to allow threads to use multiple cores. ********************************************************************** - Restore version number output in "ompi_info --all". - Various bug fixes for the mpi_f08 Fortran bindings. - Fix ROMIO compile error with Lustre 2.4. Thanks to Adam Moody for reporting the issue. - Various fixes for 32 bit platforms. - Add ability to selectively disable building the mpi or mpi_f08 module. See the README file for details. - Fix MX MTL finalization issue. - Fix ROMIO issue when opening a file with MPI_MODE_EXCL. - Fix PowerPC and MIPS assembly issues. - Various fixes to the hcoll and FCA collective offload modules. - Prevent integer overflow when creating datatypes. Thanks to original patch from Gilles Gouaillardet. - Port some upstream hwloc fixes to Open MPI's embedded copy for working around buggy NUMA node cpusets and including mising header files. Thanks to Jeff Becker and Paul Hargrove for reporting the issues. - Fix recursive invocation issues in the MXM MTL. - Various bug fixes to the new MCA parameter back-end system. - Have the posix fbtl module link against -laio on NetBSD platforms. Thanks to Paul Hargrove for noticing the issue. - Various updates and fixes to network filesystem detection to support more operating systems. - Add gfortran v4.9 "ignore TKR" syntax to the mpi Fortran module. - Various compiler fixes for several BSD-based platforms. Thanks to Paul Hargrove for reporting the issues. - Fix when MPI_COMM_SPAWN[_MULTIPLE] is used on oversubscribed systems. - Change the output from --report bindings to simply state that a process is not bound, instead of reporting that it is bound to all processors. - Per MPI-3.0 guidance, remove support for all MPI subroutines with choice buffers from the TKR-based mpi Fortran module. Thanks to Jed Brown for raising the issue. - Only allow the usnic BTL to build on 64 bit platforms. - Various bug fixes to SLURM support, to include ensuring proper exiting on abnormal termination. - Ensure that MPI_COMM_SPAWN[_MULTIPLE] jobs get the same mapping directives that were used with mpirun. - Fixed the application of TCP_NODELAY. - Change the TCP BTL to not warn if a non-existent interface is ignored. - Restored the "--bycore" mpirun option for backwards compatibility. - Fixed debugger attach functionality. Thanks to Ashley Pittman for reporting the issue and suggesting the fix. - Fixed faulty MPI_IBCAST when invoked on a communicator with only one process. - Add new Mellanox device IDs to the openib BTL. - Progress towards cleaning up various internal memory leaks as reported by Valgrind. - Fixed some annoying flex-generated warnings that have been there for years. Thanks to Tom Fogal for the initial patch. - Support user-provided environment variables via the "env" info key to MPI_COMM_SPAWN[_MULTIPLE]. Thanks to Tom Fogal for the feature request. - Fix uninitialized variable in MPI_DIST_GRAPH_CREATE. - Fix a variety of memory errors on SPARC platforms. Thanks to Siegmar Gross for reporting and testing all the issues. - Remove Solaris threads support. When building on Solaris, pthreads will be used. - Correctly handle the convertor internal stack for persistent receives. Thanks to Guillaume Gouaillardet for identifying the problem. - Add support for using an external libevent via --with-libevent. See the README for more details. - Various OMPIO updates and fixes. - Add support for the MPIEXEC_TIMEOUT environment variable. If set, mpirun will terminate the job after this many seconds. - Update the internal copy of ROMIO to that which shipped in MPICH 3.0.4. - Various performance tweaks and improvements in the usnic BTL, including now reporting MPI_T performance variables for each usnic device. - Fix to not access send datatypes for non-root processes with MPI_ISCATTER[V] and MPI_IGATHER[V]. Thanks to Pierre Jolivet for supplying the initial patch. - Update VampirTrace to 5.14.4.9. - Fix ptmalloc2 hook disable when used with ummunotify. - Change the default connection manager for the openib BTL to be based on UD verbs data exchanges instead of ORTE OOB data exchanges. - Fix Fortran compile error when compiling with 8-byte INTEGERs and 4-byte ints. - Fix C++11 issue identified by Jeremiah Willcock. - Many changes, updates, and bug fixes to the ORTE run-time layer. - Correctly handle MPI_REDUCE_SCATTER with recvcounts of 0. - Update man pages for MPI-3, and add some missing man pages for MPI-2.x functions. - Updated mpi_f08 module in accordance with post-MPI-3.0 errata which basically removed BIND(C) from all interfaces. - Fixed MPI_IN_PLACE detection for MPI_SCATTER[V] in Fortran routines. Thanks to Charles Gerlach for identifying the issue. - Added support for routable RoCE to the openib BTL. - Update embedded hwloc to v1.7.2. - ErrMgr framework redesigned to better support fault tolerance development activities. See the following RFC for details: http://www.open-mpi.org/community/lists/devel/2010/03/7589.php - Added database framework to OPAL and changed all modex operations to flow thru it, also included additional system info in the available data - Added staged state machine to support sequential work flows - Added distributed file system support for accessing files across nodes that do not have networked file systems - Extended filem framework to support scalable pre-positioning of files for use by applications, adding new "raw" component that transmits files across the daemon network - Native Windows support has been removed. A cygwin package is available from that group for Windows-based use. - Added new MPI Java bindings. See the Javadocs for more details on the API. - Wrapper compilers now add rpath support by default to generated executables on systems that support it. This behavior can be disabled via --disable-wrapper-rpath. See note in README about ABI issues when using rpath in MPI applications. - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fixed MPI_STATUS_SIZE Fortran issue when used with 8-byte Fortran INTEGERs and 4-byte C ints. Since this issue affects ABI, it is only enabled if Open MPI is configured with --enable-abi-breaking-fortran-status-i8-fix. Thanks to Jim Parker for supplying the initial patch. - Add support for Intel Phi SCIF transport. - For CUDA-aware MPI configured with CUDA 6.0, use new pointer attribute to avoid extra synchronization in stream 0 when using CUDA IPC between GPUs on the same node. - For CUDA-aware MPI configured with CUDA 6.0, compile in support of GPU Direct RDMA in openib BTL to improve small message latency. - Updated ROMIO from MPICH v3.0.4. - MPI-3: Added support for remaining non-blocking collectives. - MPI-3: Added support for neighborhood collectives. - MPI-3: Updated C bindings with consistent use of []. - MPI-3: Added the const keyword to read-only buffers. - MPI-3: Added support for non-blocking communicator duplication. - MPI-3: Added support for non-collective communicator creation.