pkgsrc/parallel/openmpi/PLIST

751 lines
22 KiB
Text
Raw Normal View History

@comment $NetBSD: PLIST,v 1.20 2022/08/25 22:09:14 thor Exp $
bin/aggregate_profile.pl
bin/mpiCC
bin/mpic++
bin/mpicc
bin/mpicxx
bin/mpiexec
bin/mpif77
bin/mpif90
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
bin/mpifort
${PLIST.java}bin/mpijavac
${PLIST.java}bin/mpijavac.pl
bin/mpirun
bin/ompi-clean
bin/ompi-server
bin/ompi_info
bin/opal_wrapper
bin/orte-clean
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
bin/orte-info
bin/orte-server
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
bin/ortecc
bin/orted
bin/orterun
bin/profile2mat.pl
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
include/mpi-ext.h
include/mpi.h
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
include/mpi_portable_platform.h
include/mpif-c-constants-decl.h
2018-01-04 21:31:28 +01:00
${PLIST.f90}include/mpif-config.h
${PLIST.f90}include/mpif-constants.h
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
include/mpif-ext.h
2018-01-04 21:31:28 +01:00
${PLIST.f90}include/mpif-externals.h
${PLIST.f90}include/mpif-handles.h
${PLIST.f90}include/mpif-io-constants.h
${PLIST.f90}include/mpif-io-handles.h
${PLIST.f90}include/mpif-sentinels.h
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
include/mpif-sizeof.h
include/mpif.h
include/openmpi/mpiext/mpiext_affinity_c.h
include/openmpi/mpiext/mpiext_cuda_c.h
include/openmpi/mpiext/mpiext_pcollreq_c.h
${PLIST.f90}include/openmpi/mpiext/mpiext_pcollreq_mpifh.h
include/openmpi/mpiext/pmpiext_pcollreq_c.h
${PLIST.java}include/openmpi/ompi/mpi/java/mpiJava.h
lib/libmca_common_dstore.la
lib/libmca_common_monitoring.la
lib/libmca_common_ompio.la
lib/libmca_common_sm.la
lib/libmpi.la
${PLIST.java}lib/libmpi_java.la
2018-01-04 21:31:28 +01:00
${PLIST.f90}lib/libmpi_mpifh.la
${PLIST.f90}${PLIST.noignoretkr}lib/libmpi_usempi.la
${PLIST.f90}${PLIST.ignoretkr}lib/libmpi_usempi_ignore_tkr.la
${PLIST.f08}lib/libmpi_usempif08.la
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
lib/libompitrace.la
lib/libopen-pal.la
lib/libopen-rte.la
${PLIST.java}lib/mpi.jar
2018-01-04 21:31:28 +01:00
${PLIST.f90}lib/mpi.mod
${PLIST.f90}${PLIST.ignoretkr}lib/mpi_ext.mod
${PLIST.f08}lib/mpi_f08.mod
2017-02-06 05:19:12 +01:00
${PLIST.f08}lib/mpi_f08_callbacks.mod
${PLIST.f08}lib/mpi_f08_ext.mod
${PLIST.f08}lib/mpi_f08_interfaces.mod
${PLIST.f08}lib/mpi_f08_interfaces_callbacks.mod
${PLIST.f08}lib/mpi_f08_types.mod
lib/ompi_monitoring_prof.la
lib/openmpi/libompi_dbg_msgq.la
lib/openmpi/mca_allocator_basic.la
lib/openmpi/mca_allocator_bucket.la
lib/openmpi/mca_bml_r2.la
lib/openmpi/mca_btl_self.la
lib/openmpi/mca_btl_sm.la
lib/openmpi/mca_btl_tcp.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_btl_vader.la
lib/openmpi/mca_coll_adapt.la
lib/openmpi/mca_coll_basic.la
lib/openmpi/mca_coll_han.la
lib/openmpi/mca_coll_inter.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_coll_libnbc.la
lib/openmpi/mca_coll_monitoring.la
lib/openmpi/mca_coll_self.la
lib/openmpi/mca_coll_sm.la
2016-12-26 00:57:45 +01:00
lib/openmpi/mca_coll_sync.la
lib/openmpi/mca_coll_tuned.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_compress_bzip.la
lib/openmpi/mca_compress_gzip.la
lib/openmpi/mca_crs_none.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_errmgr_default_app.la
lib/openmpi/mca_errmgr_default_hnp.la
lib/openmpi/mca_errmgr_default_orted.la
lib/openmpi/mca_errmgr_default_tool.la
lib/openmpi/mca_ess_env.la
lib/openmpi/mca_ess_hnp.la
lib/openmpi/mca_ess_pmi.la
lib/openmpi/mca_ess_singleton.la
lib/openmpi/mca_ess_tool.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_fbtl_posix.la
lib/openmpi/mca_fcoll_dynamic.la
lib/openmpi/mca_fcoll_dynamic_gen2.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_fcoll_individual.la
lib/openmpi/mca_fcoll_two_phase.la
lib/openmpi/mca_fcoll_vulcan.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_filem_raw.la
lib/openmpi/mca_fs_ufs.la
lib/openmpi/mca_grpcomm_direct.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_io_ompio.la
lib/openmpi/mca_io_romio321.la
lib/openmpi/mca_iof_hnp.la
lib/openmpi/mca_iof_orted.la
lib/openmpi/mca_iof_tool.la
lib/openmpi/mca_mpool_hugepage.la
lib/openmpi/mca_odls_default.la
lib/openmpi/mca_odls_pspawn.la
lib/openmpi/mca_oob_tcp.la
lib/openmpi/mca_op_avx.la
lib/openmpi/mca_osc_monitoring.la
lib/openmpi/mca_osc_pt2pt.la
lib/openmpi/mca_osc_rdma.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_osc_sm.la
lib/openmpi/mca_patcher_overwrite.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_plm_isolated.la
lib/openmpi/mca_plm_rsh.la
lib/openmpi/mca_pmix_flux.la
lib/openmpi/mca_pmix_isolated.la
lib/openmpi/mca_pmix_pmix3x.la
lib/openmpi/mca_pml_cm.la
lib/openmpi/mca_pml_monitoring.la
lib/openmpi/mca_pml_ob1.la
${PLIST.linux}lib/openmpi/mca_pstat_linux.la
${PLIST.pstattest}lib/openmpi/mca_pstat_test.la
${PLIST.sge}lib/openmpi/mca_ras_gridengine.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_ras_simulator.la
lib/openmpi/mca_rcache_grdma.la
${PLIST.linux}lib/openmpi/mca_reachable_netlink.la
lib/openmpi/mca_reachable_weighted.la
lib/openmpi/mca_regx_fwd.la
lib/openmpi/mca_regx_naive.la
lib/openmpi/mca_regx_reverse.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_rmaps_mindist.la
lib/openmpi/mca_rmaps_ppr.la
lib/openmpi/mca_rmaps_rank_file.la
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
lib/openmpi/mca_rmaps_resilient.la
lib/openmpi/mca_rmaps_round_robin.la
lib/openmpi/mca_rmaps_seq.la
lib/openmpi/mca_rml_oob.la
lib/openmpi/mca_routed_binomial.la
lib/openmpi/mca_routed_direct.la
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
lib/openmpi/mca_routed_radix.la
lib/openmpi/mca_rtc_hwloc.la
lib/openmpi/mca_schizo_flux.la
lib/openmpi/mca_schizo_jsm.la
lib/openmpi/mca_schizo_ompi.la
lib/openmpi/mca_schizo_orte.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_sharedfp_individual.la
lib/openmpi/mca_sharedfp_lockedfile.la
lib/openmpi/mca_sharedfp_sm.la
Update to OpenMPI 1.5.5 Changes in 1.5.5 ---------------- - Many, many portability configure/build fixes courtesy of Paul Hargrove. Thanks, Paul! - Fixed shared memory fault tolerance support compiler errors. - Removed not-production-quality rshd and tmd PLM launchers. - Minor updates to the Open MPI SRPM spec file. - Fixed mpirun's --bind-to-socket option. - A few MPI_THREAD_MULTIPLE fixes in the shared memory BTL. - Upgrade the GNU Autotools used to bootstrap the 1.5/1.6 series to all the latest versions at the time of this release. - Categorically state in the README that if you're having a problem with Open MPI with the Linux Intel 12.1 compilers, *upgrade your Intel Compiler Suite to the latest patch version*, and the problems will go away. :-) - Fix the --without-memory-manager configure option. - Fixes for Totalview/DDT MPI-capable debuggers. - Update rsh/ssh support to properly handle the Mac OS X library path (i.e., DYLD_LIBRARY_PATH). - Make warning about shared memory backing files on a networked file system be optional (i.e., can be disabled via MCA parameter). - Several fixes to processor and memory affinity. - Various shared memory infrastructure improvements. - Various checkpoint/restart fixes. - Fix MPI_IN_PLACE (and other MPI sentinel values) on OS X. Thanks to Dave Goodell for providing the magic OS X gcc linker flags necessary. - Various man page corrections and typo fixes. Thanks to Fujitsu for the patch. - Updated wrapper compiler man pages to list the various --showme options that are available. - Add PMI direct-launch support (e.g., "srun mpi_application" under SLURM). - Correctly compute the aligned address when packing the datatype description. Thanks to Fujitsu for the patch. - Fix MPI obscure corner case handling in packing MPI datatypes. Thanks to Fujitsu for providing the patch. - Workaround an Intel compiler v12.1.0 2011.6.233 vector optimization bug. - Output the MPI API in ompi_info output. - Major VT update to 5.12.1.4. - Rankfile 'P'hysical mapping is no longer available. - Upgrade embedded Hardware Locality (hwloc) v1.3.2, plus some post-1.3.2-release bug fixes. All processor and memory binding is now done through hwloc. Woo hoo! Note that this fixes core binding on AMD Opteron 6200 and 4200 series-based systems (sometimes known as Interlagos, Valencia, or other Bulldozer-based chips). - New MCA parameters to control process-wide memory binding policy: hwloc_base_mem_alloc_policy, hwloc_base_mem_bind_failure_action (see ompi_info --param hwloc base). - Removed direct support for libnuma. Libnuma support may now be picked up through hwloc. - Added MPI_IN_PLACE support to MPI_EXSCAN. - Various fixes for building on Windows, including MinGW support. - Removed support for the OpenFabrics IBCM connection manager. - Updated Chelsio T4 and Intel NE OpenFabrics default buffer settings. - Increased the default RDMA CM timeout to 30 seconds. - Issue a warning if both btl_tcp_if_include and btl_tcp_if_exclude are specified. - Many fixes to the Mellanox MXM transport.
2012-05-28 20:38:17 +02:00
lib/openmpi/mca_shmem_mmap.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_shmem_posix.la
Update to OpenMPI 1.5.5 Changes in 1.5.5 ---------------- - Many, many portability configure/build fixes courtesy of Paul Hargrove. Thanks, Paul! - Fixed shared memory fault tolerance support compiler errors. - Removed not-production-quality rshd and tmd PLM launchers. - Minor updates to the Open MPI SRPM spec file. - Fixed mpirun's --bind-to-socket option. - A few MPI_THREAD_MULTIPLE fixes in the shared memory BTL. - Upgrade the GNU Autotools used to bootstrap the 1.5/1.6 series to all the latest versions at the time of this release. - Categorically state in the README that if you're having a problem with Open MPI with the Linux Intel 12.1 compilers, *upgrade your Intel Compiler Suite to the latest patch version*, and the problems will go away. :-) - Fix the --without-memory-manager configure option. - Fixes for Totalview/DDT MPI-capable debuggers. - Update rsh/ssh support to properly handle the Mac OS X library path (i.e., DYLD_LIBRARY_PATH). - Make warning about shared memory backing files on a networked file system be optional (i.e., can be disabled via MCA parameter). - Several fixes to processor and memory affinity. - Various shared memory infrastructure improvements. - Various checkpoint/restart fixes. - Fix MPI_IN_PLACE (and other MPI sentinel values) on OS X. Thanks to Dave Goodell for providing the magic OS X gcc linker flags necessary. - Various man page corrections and typo fixes. Thanks to Fujitsu for the patch. - Updated wrapper compiler man pages to list the various --showme options that are available. - Add PMI direct-launch support (e.g., "srun mpi_application" under SLURM). - Correctly compute the aligned address when packing the datatype description. Thanks to Fujitsu for the patch. - Fix MPI obscure corner case handling in packing MPI datatypes. Thanks to Fujitsu for providing the patch. - Workaround an Intel compiler v12.1.0 2011.6.233 vector optimization bug. - Output the MPI API in ompi_info output. - Major VT update to 5.12.1.4. - Rankfile 'P'hysical mapping is no longer available. - Upgrade embedded Hardware Locality (hwloc) v1.3.2, plus some post-1.3.2-release bug fixes. All processor and memory binding is now done through hwloc. Woo hoo! Note that this fixes core binding on AMD Opteron 6200 and 4200 series-based systems (sometimes known as Interlagos, Valencia, or other Bulldozer-based chips). - New MCA parameters to control process-wide memory binding policy: hwloc_base_mem_alloc_policy, hwloc_base_mem_bind_failure_action (see ompi_info --param hwloc base). - Removed direct support for libnuma. Libnuma support may now be picked up through hwloc. - Added MPI_IN_PLACE support to MPI_EXSCAN. - Various fixes for building on Windows, including MinGW support. - Removed support for the OpenFabrics IBCM connection manager. - Updated Chelsio T4 and Intel NE OpenFabrics default buffer settings. - Increased the default RDMA CM timeout to 30 seconds. - Issue a warning if both btl_tcp_if_include and btl_tcp_if_exclude are specified. - Many fixes to the Mellanox MXM transport.
2012-05-28 20:38:17 +02:00
lib/openmpi/mca_shmem_sysv.la
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/openmpi/mca_state_app.la
lib/openmpi/mca_state_hnp.la
lib/openmpi/mca_state_novm.la
lib/openmpi/mca_state_orted.la
lib/openmpi/mca_state_tool.la
lib/openmpi/mca_topo_basic.la
lib/openmpi/mca_topo_treematch.la
lib/openmpi/mca_vprotocol_pessimist.la
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
lib/pkgconfig/ompi-c.pc
lib/pkgconfig/ompi-cxx.pc
lib/pkgconfig/ompi-f77.pc
lib/pkgconfig/ompi-f90.pc
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
lib/pkgconfig/ompi-fort.pc
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
lib/pkgconfig/ompi.pc
lib/pkgconfig/orte.pc
lib/pkgconfig/pmix.pc
lib/pmix/mca_bfrops_v12.la
lib/pmix/mca_bfrops_v20.la
lib/pmix/mca_bfrops_v21.la
lib/pmix/mca_bfrops_v3.la
lib/pmix/mca_gds_ds12.la
${PLIST.linux}lib/pmix/mca_gds_ds21.la
lib/pmix/mca_gds_hash.la
lib/pmix/mca_pcompress_zlib.la
lib/pmix/mca_plog_default.la
lib/pmix/mca_plog_stdfd.la
lib/pmix/mca_plog_syslog.la
lib/pmix/mca_preg_compress.la
lib/pmix/mca_preg_native.la
lib/pmix/mca_psec_native.la
lib/pmix/mca_psec_none.la
lib/pmix/mca_psensor_file.la
lib/pmix/mca_psensor_heartbeat.la
lib/pmix/mca_pshmem_mmap.la
lib/pmix/mca_psquash_flex128.la
lib/pmix/mca_psquash_native.la
lib/pmix/mca_ptl_tcp.la
lib/pmix/mca_ptl_usock.la
${PLIST.f08}lib/pmpi_f08_interfaces.mod
man/man1/mpiCC.1
man/man1/mpic++.1
man/man1/mpicc.1
man/man1/mpicxx.1
man/man1/mpiexec.1
man/man1/mpif77.1
man/man1/mpif90.1
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man1/mpifort.1
${PLIST.java}man/man1/mpijavac.1
man/man1/mpirun.1
man/man1/ompi-clean.1
man/man1/ompi-server.1
man/man1/ompi_info.1
man/man1/opal_wrapper.1
man/man1/orte-clean.1
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man1/orte-info.1
man/man1/orte-server.1
man/man1/orted.1
man/man1/orterun.1
man/man3/MPI.3
man/man3/MPIX_Allgather_init.3
man/man3/MPIX_Allgatherv_init.3
man/man3/MPIX_Allreduce_init.3
man/man3/MPIX_Alltoall_init.3
man/man3/MPIX_Alltoallv_init.3
man/man3/MPIX_Alltoallw_init.3
man/man3/MPIX_Barrier_init.3
man/man3/MPIX_Bcast_init.3
man/man3/MPIX_Exscan_init.3
man/man3/MPIX_Gather_init.3
man/man3/MPIX_Gatherv_init.3
man/man3/MPIX_Neighbor_allgather_init.3
man/man3/MPIX_Neighbor_allgatherv_init.3
man/man3/MPIX_Neighbor_alltoall_init.3
man/man3/MPIX_Neighbor_alltoallv_init.3
man/man3/MPIX_Neighbor_alltoallw_init.3
man/man3/MPIX_Query_cuda_support.3
man/man3/MPIX_Reduce_init.3
man/man3/MPIX_Reduce_scatter_block_init.3
man/man3/MPIX_Reduce_scatter_init.3
man/man3/MPIX_Scan_init.3
man/man3/MPIX_Scatter_init.3
man/man3/MPIX_Scatterv_init.3
man/man3/MPI_Abort.3
man/man3/MPI_Accumulate.3
man/man3/MPI_Add_error_class.3
man/man3/MPI_Add_error_code.3
man/man3/MPI_Add_error_string.3
man/man3/MPI_Address.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Aint_add.3
man/man3/MPI_Aint_diff.3
man/man3/MPI_Allgather.3
man/man3/MPI_Allgatherv.3
man/man3/MPI_Alloc_mem.3
man/man3/MPI_Allreduce.3
man/man3/MPI_Alltoall.3
man/man3/MPI_Alltoallv.3
man/man3/MPI_Alltoallw.3
man/man3/MPI_Attr_delete.3
man/man3/MPI_Attr_get.3
man/man3/MPI_Attr_put.3
man/man3/MPI_Barrier.3
man/man3/MPI_Bcast.3
man/man3/MPI_Bsend.3
man/man3/MPI_Bsend_init.3
man/man3/MPI_Buffer_attach.3
man/man3/MPI_Buffer_detach.3
man/man3/MPI_Cancel.3
man/man3/MPI_Cart_coords.3
man/man3/MPI_Cart_create.3
man/man3/MPI_Cart_get.3
man/man3/MPI_Cart_map.3
man/man3/MPI_Cart_rank.3
man/man3/MPI_Cart_shift.3
man/man3/MPI_Cart_sub.3
man/man3/MPI_Cartdim_get.3
man/man3/MPI_Close_port.3
man/man3/MPI_Comm_accept.3
man/man3/MPI_Comm_c2f.3
man/man3/MPI_Comm_call_errhandler.3
man/man3/MPI_Comm_compare.3
man/man3/MPI_Comm_connect.3
man/man3/MPI_Comm_create.3
man/man3/MPI_Comm_create_errhandler.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Comm_create_group.3
man/man3/MPI_Comm_create_keyval.3
man/man3/MPI_Comm_delete_attr.3
man/man3/MPI_Comm_disconnect.3
man/man3/MPI_Comm_dup.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Comm_dup_with_info.3
man/man3/MPI_Comm_f2c.3
man/man3/MPI_Comm_free.3
man/man3/MPI_Comm_free_keyval.3
man/man3/MPI_Comm_get_attr.3
man/man3/MPI_Comm_get_errhandler.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Comm_get_info.3
man/man3/MPI_Comm_get_name.3
man/man3/MPI_Comm_get_parent.3
man/man3/MPI_Comm_group.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Comm_idup.3
man/man3/MPI_Comm_join.3
man/man3/MPI_Comm_rank.3
man/man3/MPI_Comm_remote_group.3
man/man3/MPI_Comm_remote_size.3
man/man3/MPI_Comm_set_attr.3
man/man3/MPI_Comm_set_errhandler.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Comm_set_info.3
man/man3/MPI_Comm_set_name.3
man/man3/MPI_Comm_size.3
man/man3/MPI_Comm_spawn.3
man/man3/MPI_Comm_spawn_multiple.3
man/man3/MPI_Comm_split.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Comm_split_type.3
man/man3/MPI_Comm_test_inter.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Compare_and_swap.3
man/man3/MPI_Dims_create.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Dist_graph_create.3
man/man3/MPI_Dist_graph_create_adjacent.3
man/man3/MPI_Dist_graph_neighbors.3
man/man3/MPI_Dist_graph_neighbors_count.3
man/man3/MPI_Errhandler_create.3
man/man3/MPI_Errhandler_free.3
man/man3/MPI_Errhandler_get.3
man/man3/MPI_Errhandler_set.3
man/man3/MPI_Error_class.3
man/man3/MPI_Error_string.3
man/man3/MPI_Exscan.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Fetch_and_op.3
man/man3/MPI_File_c2f.3
man/man3/MPI_File_call_errhandler.3
man/man3/MPI_File_close.3
man/man3/MPI_File_create_errhandler.3
man/man3/MPI_File_delete.3
man/man3/MPI_File_f2c.3
man/man3/MPI_File_get_amode.3
man/man3/MPI_File_get_atomicity.3
man/man3/MPI_File_get_byte_offset.3
man/man3/MPI_File_get_errhandler.3
man/man3/MPI_File_get_group.3
man/man3/MPI_File_get_info.3
man/man3/MPI_File_get_position.3
man/man3/MPI_File_get_position_shared.3
man/man3/MPI_File_get_size.3
man/man3/MPI_File_get_type_extent.3
man/man3/MPI_File_get_view.3
man/man3/MPI_File_iread.3
man/man3/MPI_File_iread_all.3
man/man3/MPI_File_iread_at.3
man/man3/MPI_File_iread_at_all.3
man/man3/MPI_File_iread_shared.3
man/man3/MPI_File_iwrite.3
man/man3/MPI_File_iwrite_all.3
man/man3/MPI_File_iwrite_at.3
man/man3/MPI_File_iwrite_at_all.3
man/man3/MPI_File_iwrite_shared.3
man/man3/MPI_File_open.3
man/man3/MPI_File_preallocate.3
man/man3/MPI_File_read.3
man/man3/MPI_File_read_all.3
man/man3/MPI_File_read_all_begin.3
man/man3/MPI_File_read_all_end.3
man/man3/MPI_File_read_at.3
man/man3/MPI_File_read_at_all.3
man/man3/MPI_File_read_at_all_begin.3
man/man3/MPI_File_read_at_all_end.3
man/man3/MPI_File_read_ordered.3
man/man3/MPI_File_read_ordered_begin.3
man/man3/MPI_File_read_ordered_end.3
man/man3/MPI_File_read_shared.3
man/man3/MPI_File_seek.3
man/man3/MPI_File_seek_shared.3
man/man3/MPI_File_set_atomicity.3
man/man3/MPI_File_set_errhandler.3
man/man3/MPI_File_set_info.3
man/man3/MPI_File_set_size.3
man/man3/MPI_File_set_view.3
man/man3/MPI_File_sync.3
man/man3/MPI_File_write.3
man/man3/MPI_File_write_all.3
man/man3/MPI_File_write_all_begin.3
man/man3/MPI_File_write_all_end.3
man/man3/MPI_File_write_at.3
man/man3/MPI_File_write_at_all.3
man/man3/MPI_File_write_at_all_begin.3
man/man3/MPI_File_write_at_all_end.3
man/man3/MPI_File_write_ordered.3
man/man3/MPI_File_write_ordered_begin.3
man/man3/MPI_File_write_ordered_end.3
man/man3/MPI_File_write_shared.3
man/man3/MPI_Finalize.3
man/man3/MPI_Finalized.3
man/man3/MPI_Free_mem.3
man/man3/MPI_Gather.3
man/man3/MPI_Gatherv.3
man/man3/MPI_Get.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Get_accumulate.3
man/man3/MPI_Get_address.3
man/man3/MPI_Get_count.3
man/man3/MPI_Get_elements.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Get_elements_x.3
man/man3/MPI_Get_library_version.3
man/man3/MPI_Get_processor_name.3
man/man3/MPI_Get_version.3
man/man3/MPI_Graph_create.3
man/man3/MPI_Graph_get.3
man/man3/MPI_Graph_map.3
man/man3/MPI_Graph_neighbors.3
man/man3/MPI_Graph_neighbors_count.3
man/man3/MPI_Graphdims_get.3
man/man3/MPI_Grequest_complete.3
man/man3/MPI_Grequest_start.3
man/man3/MPI_Group_c2f.3
man/man3/MPI_Group_compare.3
man/man3/MPI_Group_difference.3
man/man3/MPI_Group_excl.3
man/man3/MPI_Group_f2c.3
man/man3/MPI_Group_free.3
man/man3/MPI_Group_incl.3
man/man3/MPI_Group_intersection.3
man/man3/MPI_Group_range_excl.3
man/man3/MPI_Group_range_incl.3
man/man3/MPI_Group_rank.3
man/man3/MPI_Group_size.3
man/man3/MPI_Group_translate_ranks.3
man/man3/MPI_Group_union.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Iallgather.3
man/man3/MPI_Iallgatherv.3
man/man3/MPI_Iallreduce.3
man/man3/MPI_Ialltoall.3
man/man3/MPI_Ialltoallv.3
man/man3/MPI_Ialltoallw.3
man/man3/MPI_Ibarrier.3
man/man3/MPI_Ibcast.3
man/man3/MPI_Ibsend.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Iexscan.3
man/man3/MPI_Igather.3
man/man3/MPI_Igatherv.3
man/man3/MPI_Improbe.3
man/man3/MPI_Imrecv.3
man/man3/MPI_Ineighbor_allgather.3
man/man3/MPI_Ineighbor_allgatherv.3
man/man3/MPI_Ineighbor_alltoall.3
man/man3/MPI_Ineighbor_alltoallv.3
man/man3/MPI_Ineighbor_alltoallw.3
man/man3/MPI_Info_c2f.3
man/man3/MPI_Info_create.3
man/man3/MPI_Info_delete.3
man/man3/MPI_Info_dup.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Info_env.3
man/man3/MPI_Info_f2c.3
man/man3/MPI_Info_free.3
man/man3/MPI_Info_get.3
man/man3/MPI_Info_get_nkeys.3
man/man3/MPI_Info_get_nthkey.3
man/man3/MPI_Info_get_valuelen.3
man/man3/MPI_Info_set.3
man/man3/MPI_Init.3
man/man3/MPI_Init_thread.3
man/man3/MPI_Initialized.3
man/man3/MPI_Intercomm_create.3
man/man3/MPI_Intercomm_merge.3
man/man3/MPI_Iprobe.3
man/man3/MPI_Irecv.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Ireduce.3
man/man3/MPI_Ireduce_scatter.3
man/man3/MPI_Ireduce_scatter_block.3
man/man3/MPI_Irsend.3
man/man3/MPI_Is_thread_main.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Iscan.3
man/man3/MPI_Iscatter.3
man/man3/MPI_Iscatterv.3
man/man3/MPI_Isend.3
man/man3/MPI_Issend.3
man/man3/MPI_Keyval_create.3
man/man3/MPI_Keyval_free.3
man/man3/MPI_Lookup_name.3
man/man3/MPI_Message_c2f.3
man/man3/MPI_Message_f2c.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Mprobe.3
man/man3/MPI_Mrecv.3
man/man3/MPI_Neighbor_allgather.3
man/man3/MPI_Neighbor_allgatherv.3
man/man3/MPI_Neighbor_alltoall.3
man/man3/MPI_Neighbor_alltoallv.3
man/man3/MPI_Neighbor_alltoallw.3
man/man3/MPI_Op_c2f.3
man/man3/MPI_Op_commutative.3
man/man3/MPI_Op_create.3
man/man3/MPI_Op_f2c.3
man/man3/MPI_Op_free.3
man/man3/MPI_Open_port.3
man/man3/MPI_Pack.3
man/man3/MPI_Pack_external.3
man/man3/MPI_Pack_external_size.3
man/man3/MPI_Pack_size.3
man/man3/MPI_Pcontrol.3
man/man3/MPI_Probe.3
man/man3/MPI_Publish_name.3
man/man3/MPI_Put.3
man/man3/MPI_Query_thread.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Raccumulate.3
man/man3/MPI_Recv.3
man/man3/MPI_Recv_init.3
man/man3/MPI_Reduce.3
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
man/man3/MPI_Reduce_local.3
man/man3/MPI_Reduce_scatter.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Reduce_scatter_block.3
man/man3/MPI_Register_datarep.3
man/man3/MPI_Request_c2f.3
man/man3/MPI_Request_f2c.3
man/man3/MPI_Request_free.3
man/man3/MPI_Request_get_status.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Rget.3
man/man3/MPI_Rget_accumulate.3
man/man3/MPI_Rput.3
man/man3/MPI_Rsend.3
man/man3/MPI_Rsend_init.3
man/man3/MPI_Scan.3
man/man3/MPI_Scatter.3
man/man3/MPI_Scatterv.3
man/man3/MPI_Send.3
man/man3/MPI_Send_init.3
man/man3/MPI_Sendrecv.3
man/man3/MPI_Sendrecv_replace.3
man/man3/MPI_Sizeof.3
man/man3/MPI_Ssend.3
man/man3/MPI_Ssend_init.3
man/man3/MPI_Start.3
man/man3/MPI_Startall.3
man/man3/MPI_Status_c2f.3
man/man3/MPI_Status_f2c.3
man/man3/MPI_Status_set_cancelled.3
man/man3/MPI_Status_set_elements.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Status_set_elements_x.3
2016-12-26 00:57:45 +01:00
man/man3/MPI_T_category_changed.3
man/man3/MPI_T_category_get_categories.3
man/man3/MPI_T_category_get_cvars.3
man/man3/MPI_T_category_get_info.3
man/man3/MPI_T_category_get_num.3
man/man3/MPI_T_category_get_pvars.3
man/man3/MPI_T_cvar_get_info.3
man/man3/MPI_T_cvar_get_num.3
man/man3/MPI_T_cvar_handle_alloc.3
man/man3/MPI_T_cvar_handle_free.3
man/man3/MPI_T_cvar_read.3
man/man3/MPI_T_cvar_write.3
man/man3/MPI_T_enum_get_info.3
man/man3/MPI_T_enum_get_item.3
man/man3/MPI_T_finalize.3
man/man3/MPI_T_init_thread.3
man/man3/MPI_T_pvar_get_info.3
man/man3/MPI_T_pvar_get_num.3
man/man3/MPI_T_pvar_handle_alloc.3
man/man3/MPI_T_pvar_handle_free.3
man/man3/MPI_T_pvar_read.3
man/man3/MPI_T_pvar_readreset.3
man/man3/MPI_T_pvar_reset.3
man/man3/MPI_T_pvar_session_create.3
man/man3/MPI_T_pvar_session_free.3
man/man3/MPI_T_pvar_start.3
man/man3/MPI_T_pvar_stop.3
man/man3/MPI_T_pvar_write.3
man/man3/MPI_Test.3
man/man3/MPI_Test_cancelled.3
man/man3/MPI_Testall.3
man/man3/MPI_Testany.3
man/man3/MPI_Testsome.3
man/man3/MPI_Topo_test.3
man/man3/MPI_Type_c2f.3
man/man3/MPI_Type_commit.3
man/man3/MPI_Type_contiguous.3
man/man3/MPI_Type_create_darray.3
man/man3/MPI_Type_create_f90_complex.3
man/man3/MPI_Type_create_f90_integer.3
man/man3/MPI_Type_create_f90_real.3
man/man3/MPI_Type_create_hindexed.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Type_create_hindexed_block.3
man/man3/MPI_Type_create_hvector.3
man/man3/MPI_Type_create_indexed_block.3
man/man3/MPI_Type_create_keyval.3
man/man3/MPI_Type_create_resized.3
man/man3/MPI_Type_create_struct.3
man/man3/MPI_Type_create_subarray.3
man/man3/MPI_Type_delete_attr.3
man/man3/MPI_Type_dup.3
man/man3/MPI_Type_extent.3
man/man3/MPI_Type_f2c.3
man/man3/MPI_Type_free.3
man/man3/MPI_Type_free_keyval.3
man/man3/MPI_Type_get_attr.3
man/man3/MPI_Type_get_contents.3
man/man3/MPI_Type_get_envelope.3
man/man3/MPI_Type_get_extent.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Type_get_extent_x.3
man/man3/MPI_Type_get_name.3
man/man3/MPI_Type_get_true_extent.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Type_get_true_extent_x.3
man/man3/MPI_Type_hindexed.3
man/man3/MPI_Type_hvector.3
man/man3/MPI_Type_indexed.3
man/man3/MPI_Type_lb.3
man/man3/MPI_Type_match_size.3
man/man3/MPI_Type_set_attr.3
man/man3/MPI_Type_set_name.3
man/man3/MPI_Type_size.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Type_size_x.3
man/man3/MPI_Type_struct.3
man/man3/MPI_Type_ub.3
man/man3/MPI_Type_vector.3
man/man3/MPI_Unpack.3
man/man3/MPI_Unpack_external.3
man/man3/MPI_Unpublish_name.3
man/man3/MPI_Wait.3
man/man3/MPI_Waitall.3
man/man3/MPI_Waitany.3
man/man3/MPI_Waitsome.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Win_allocate.3
man/man3/MPI_Win_allocate_shared.3
man/man3/MPI_Win_attach.3
man/man3/MPI_Win_c2f.3
man/man3/MPI_Win_call_errhandler.3
man/man3/MPI_Win_complete.3
man/man3/MPI_Win_create.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Win_create_dynamic.3
man/man3/MPI_Win_create_errhandler.3
man/man3/MPI_Win_create_keyval.3
man/man3/MPI_Win_delete_attr.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Win_detach.3
man/man3/MPI_Win_f2c.3
man/man3/MPI_Win_fence.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Win_flush.3
man/man3/MPI_Win_flush_all.3
man/man3/MPI_Win_flush_local.3
man/man3/MPI_Win_flush_local_all.3
man/man3/MPI_Win_free.3
man/man3/MPI_Win_free_keyval.3
man/man3/MPI_Win_get_attr.3
man/man3/MPI_Win_get_errhandler.3
man/man3/MPI_Win_get_group.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Win_get_info.3
man/man3/MPI_Win_get_name.3
man/man3/MPI_Win_lock.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Win_lock_all.3
man/man3/MPI_Win_post.3
man/man3/MPI_Win_set_attr.3
man/man3/MPI_Win_set_errhandler.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Win_set_info.3
man/man3/MPI_Win_set_name.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Win_shared_query.3
man/man3/MPI_Win_start.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Win_sync.3
man/man3/MPI_Win_test.3
man/man3/MPI_Win_unlock.3
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man3/MPI_Win_unlock_all.3
man/man3/MPI_Win_wait.3
man/man3/MPI_Wtick.3
man/man3/MPI_Wtime.3
man/man3/OMPI_Affinity_str.3
man/man3/OpenMPI.3
man/man7/ompi_crcp.7
man/man7/opal_crs.7
man/man7/orte_filem.7
man/man7/orte_hosts.7
man/man7/orte_snapc.7
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
man/man7/orte_sstore.7
share/examples/openmpi/openmpi-default-hostfile
share/examples/openmpi/openmpi-mca-params.conf
share/examples/openmpi/pmix-mca-params.conf
share/openmpi/amca-param-sets/example.conf
share/openmpi/examples/openmpi-totalview.tcl
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
share/openmpi/help-btl-vader.txt
2016-12-26 00:57:45 +01:00
share/openmpi/help-coll-sync.txt
share/openmpi/help-dash-host.txt
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
share/openmpi/help-errmgr-base.txt
share/openmpi/help-ess-base.txt
share/openmpi/help-hostfile.txt
share/openmpi/help-mca-base.txt
share/openmpi/help-mca-bml-r2.txt
share/openmpi/help-mca-coll-base.txt
share/openmpi/help-mca-hook-base.txt
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
share/openmpi/help-mca-var.txt
share/openmpi/help-mpi-api.txt
share/openmpi/help-mpi-btl-base.txt
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
share/openmpi/help-mpi-btl-sm.txt
Update to OpenMPI 1.4.3 New in 1.4.3 ------------ - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue. - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch. - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue. - Fixed various MPI_THREAD_MULTIPLE race conditions. - Fixed an issue with an undeclared variable from ptmalloc2 munmap on BSD systems. - Fixes for BSD interface detection. - Various other BSD fixes. Thanks to Kevin Buckley helping to track. all of this down. - Fixed issues with the use of the -nper* mpirun command line arguments. - Fixed an issue with coll tuned dynamic rules. - Fixed an issue with the use of OPAL_DESTDIR being applied too aggressively. - Fixed an issue with one-sided xfers when the displacement exceeds 2GBytes. - Change to ensure TotalView works properly on Darwin. - Added support for Visual Studio 2010. - Fix to ensure proper placement of VampirTrace header files. - Needed to add volatile keyword to a varialbe used in debugging (MPIR_being_debugged). - Fixed a bug in inter-allgather. - Fixed malloc(0) warnings. - Corrected a typo the MPI_Comm_size man page (intra -> inter). Thanks to Simon number.cruncher for pointing this out. - Fixed a SegV in orted when given more than 127 app_contexts. - Removed xgrid source code from the 1.4 branch since it is no longer supported in the 1.4 series. - Removed the --enable-opal-progress-threads config option since opal progress thread support does not work in 1.4.x. - Fixed a defect in VampirTrace's vtfilter. - Fixed wrong Windows path in hnp_contact. - Removed the requirement for a paffinity component. - Removed a hardcoded limit of 64 interconnected jobs. - Fix to allow singletons to use ompi-server for rendezvous. - Fixed bug in output-filename option. - Fix to correctly handle failures in mx_init(). - Fixed a potential Fortran memory leak. - Fixed an incorrect branch in some ppc32 assembly code. Thanks to Matthew Clark for this fix. - Remove use of undocumented AS_VAR_GET macro during configuration. - Fixed an issue with VampirTrace's wrapper for MPI_init_thread. - Updated mca-btl-openib-device-params.ini file with various new vendor id's. - Configuration fixes to ensure CPPFLAGS in handled properly if a non-standard valgrind location was specified. - Various man page updates
2010-11-24 02:56:13 +01:00
share/openmpi/help-mpi-btl-tcp.txt
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
share/openmpi/help-mpi-coll-sm.txt
share/openmpi/help-mpi-common-sm.txt
share/openmpi/help-mpi-errors.txt
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
share/openmpi/help-mpi-pml-ob1.txt
share/openmpi/help-mpi-runtime.txt
share/openmpi/help-mpool-base.txt
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
share/openmpi/help-oob-base.txt
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
share/openmpi/help-oob-tcp.txt
share/openmpi/help-opal-crs-none.txt
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
share/openmpi/help-opal-hwloc-base.txt
share/openmpi/help-opal-runtime.txt
Update to OpenMPI 1.5.5 Changes in 1.5.5 ---------------- - Many, many portability configure/build fixes courtesy of Paul Hargrove. Thanks, Paul! - Fixed shared memory fault tolerance support compiler errors. - Removed not-production-quality rshd and tmd PLM launchers. - Minor updates to the Open MPI SRPM spec file. - Fixed mpirun's --bind-to-socket option. - A few MPI_THREAD_MULTIPLE fixes in the shared memory BTL. - Upgrade the GNU Autotools used to bootstrap the 1.5/1.6 series to all the latest versions at the time of this release. - Categorically state in the README that if you're having a problem with Open MPI with the Linux Intel 12.1 compilers, *upgrade your Intel Compiler Suite to the latest patch version*, and the problems will go away. :-) - Fix the --without-memory-manager configure option. - Fixes for Totalview/DDT MPI-capable debuggers. - Update rsh/ssh support to properly handle the Mac OS X library path (i.e., DYLD_LIBRARY_PATH). - Make warning about shared memory backing files on a networked file system be optional (i.e., can be disabled via MCA parameter). - Several fixes to processor and memory affinity. - Various shared memory infrastructure improvements. - Various checkpoint/restart fixes. - Fix MPI_IN_PLACE (and other MPI sentinel values) on OS X. Thanks to Dave Goodell for providing the magic OS X gcc linker flags necessary. - Various man page corrections and typo fixes. Thanks to Fujitsu for the patch. - Updated wrapper compiler man pages to list the various --showme options that are available. - Add PMI direct-launch support (e.g., "srun mpi_application" under SLURM). - Correctly compute the aligned address when packing the datatype description. Thanks to Fujitsu for the patch. - Fix MPI obscure corner case handling in packing MPI datatypes. Thanks to Fujitsu for providing the patch. - Workaround an Intel compiler v12.1.0 2011.6.233 vector optimization bug. - Output the MPI API in ompi_info output. - Major VT update to 5.12.1.4. - Rankfile 'P'hysical mapping is no longer available. - Upgrade embedded Hardware Locality (hwloc) v1.3.2, plus some post-1.3.2-release bug fixes. All processor and memory binding is now done through hwloc. Woo hoo! Note that this fixes core binding on AMD Opteron 6200 and 4200 series-based systems (sometimes known as Interlagos, Valencia, or other Bulldozer-based chips). - New MCA parameters to control process-wide memory binding policy: hwloc_base_mem_alloc_policy, hwloc_base_mem_bind_failure_action (see ompi_info --param hwloc base). - Removed direct support for libnuma. Libnuma support may now be picked up through hwloc. - Added MPI_IN_PLACE support to MPI_EXSCAN. - Various fixes for building on Windows, including MinGW support. - Removed support for the OpenFabrics IBCM connection manager. - Updated Chelsio T4 and Intel NE OpenFabrics default buffer settings. - Increased the default RDMA CM timeout to 30 seconds. - Issue a warning if both btl_tcp_if_include and btl_tcp_if_exclude are specified. - Many fixes to the Mellanox MXM transport.
2012-05-28 20:38:17 +02:00
share/openmpi/help-opal-shmem-mmap.txt
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
share/openmpi/help-opal-shmem-posix.txt
Update to OpenMPI 1.5.5 Changes in 1.5.5 ---------------- - Many, many portability configure/build fixes courtesy of Paul Hargrove. Thanks, Paul! - Fixed shared memory fault tolerance support compiler errors. - Removed not-production-quality rshd and tmd PLM launchers. - Minor updates to the Open MPI SRPM spec file. - Fixed mpirun's --bind-to-socket option. - A few MPI_THREAD_MULTIPLE fixes in the shared memory BTL. - Upgrade the GNU Autotools used to bootstrap the 1.5/1.6 series to all the latest versions at the time of this release. - Categorically state in the README that if you're having a problem with Open MPI with the Linux Intel 12.1 compilers, *upgrade your Intel Compiler Suite to the latest patch version*, and the problems will go away. :-) - Fix the --without-memory-manager configure option. - Fixes for Totalview/DDT MPI-capable debuggers. - Update rsh/ssh support to properly handle the Mac OS X library path (i.e., DYLD_LIBRARY_PATH). - Make warning about shared memory backing files on a networked file system be optional (i.e., can be disabled via MCA parameter). - Several fixes to processor and memory affinity. - Various shared memory infrastructure improvements. - Various checkpoint/restart fixes. - Fix MPI_IN_PLACE (and other MPI sentinel values) on OS X. Thanks to Dave Goodell for providing the magic OS X gcc linker flags necessary. - Various man page corrections and typo fixes. Thanks to Fujitsu for the patch. - Updated wrapper compiler man pages to list the various --showme options that are available. - Add PMI direct-launch support (e.g., "srun mpi_application" under SLURM). - Correctly compute the aligned address when packing the datatype description. Thanks to Fujitsu for the patch. - Fix MPI obscure corner case handling in packing MPI datatypes. Thanks to Fujitsu for providing the patch. - Workaround an Intel compiler v12.1.0 2011.6.233 vector optimization bug. - Output the MPI API in ompi_info output. - Major VT update to 5.12.1.4. - Rankfile 'P'hysical mapping is no longer available. - Upgrade embedded Hardware Locality (hwloc) v1.3.2, plus some post-1.3.2-release bug fixes. All processor and memory binding is now done through hwloc. Woo hoo! Note that this fixes core binding on AMD Opteron 6200 and 4200 series-based systems (sometimes known as Interlagos, Valencia, or other Bulldozer-based chips). - New MCA parameters to control process-wide memory binding policy: hwloc_base_mem_alloc_policy, hwloc_base_mem_bind_failure_action (see ompi_info --param hwloc base). - Removed direct support for libnuma. Libnuma support may now be picked up through hwloc. - Added MPI_IN_PLACE support to MPI_EXSCAN. - Various fixes for building on Windows, including MinGW support. - Removed support for the OpenFabrics IBCM connection manager. - Updated Chelsio T4 and Intel NE OpenFabrics default buffer settings. - Increased the default RDMA CM timeout to 30 seconds. - Issue a warning if both btl_tcp_if_include and btl_tcp_if_exclude are specified. - Many fixes to the Mellanox MXM transport.
2012-05-28 20:38:17 +02:00
share/openmpi/help-opal-shmem-sysv.txt
2017-02-06 05:19:12 +01:00
${PLIST.linux}share/openmpi/help-opal-timer-linux.txt
share/openmpi/help-opal-util.txt
share/openmpi/help-opal-wrapper.txt
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
share/openmpi/help-opal_info.txt
share/openmpi/help-orte-clean.txt
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
share/openmpi/help-orte-filem-raw.txt
share/openmpi/help-orte-info.txt
share/openmpi/help-orte-odls-base.txt
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
share/openmpi/help-orte-odls-default.txt
share/openmpi/help-orte-odls-pspawn.txt
share/openmpi/help-orte-rmaps-base.txt
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
share/openmpi/help-orte-rmaps-md.txt
share/openmpi/help-orte-rmaps-ppr.txt
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
share/openmpi/help-orte-rmaps-resilient.txt
share/openmpi/help-orte-rmaps-rr.txt
share/openmpi/help-orte-rmaps-seq.txt
share/openmpi/help-orte-rtc-base.txt
share/openmpi/help-orte-rtc-hwloc.txt
share/openmpi/help-orte-runtime.txt
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
share/openmpi/help-orte-server.txt
share/openmpi/help-orte-snapc-base.txt
share/openmpi/help-orted.txt
share/openmpi/help-orterun.txt
share/openmpi/help-osc-pt2pt.txt
share/openmpi/help-plm-base.txt
share/openmpi/help-plm-rsh.txt
share/openmpi/help-pmix-base.txt
share/openmpi/help-pmix-pmix3x.txt
share/openmpi/help-ras-base.txt
${PLIST.sge}share/openmpi/help-ras-gridengine.txt
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
share/openmpi/help-ras-simulator.txt
share/openmpi/help-rcache-base.txt
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
share/openmpi/help-regex.txt
share/openmpi/help-rmaps_rank_file.txt
share/openmpi/help-state-base.txt
share/openmpi/mpiCC-wrapper-data.txt
share/openmpi/mpic++-wrapper-data.txt
share/openmpi/mpicc-wrapper-data.txt
share/openmpi/mpicxx-wrapper-data.txt
share/openmpi/mpif77-wrapper-data.txt
share/openmpi/mpif90-wrapper-data.txt
Update to OpenMPI 1.10.1 Changes: 1.10.1 ------ - Workaround an optimization problem with gcc compilers >= 4.9.2 that causes problems with memory registration, and forced mpi_leave_pinned to default to 0 (i.e., off). Thanks to @oere for the fix. - Fix use of MPI_LB and MPI_UB in subarray and darray datatypes. Thanks to Gus Correa and Dimitar Pashov for pointing out the issue. - Minor updates to mpi_show_mpi_alloc_mem_leaks and ompi_debug_show_handle_leaks functionality. - Fix segv when invoking non-blocking reductions with a user-defined operation. Thanks to Rupert Nash and Georg Geiser for identifying the issue. - No longer probe for PCI topology on Solaris (unless running as root). - Fix for Intel Parallel Studio 2016 ifort partial support of the !GCC$ pragma. Thanks to Fabrice Roy for reporting the problem. - Bunches of Coverity / static analysis fixes. - Fixed ROMIO to look for lstat in <sys/stat.h>. Thanks to William Throwe for submitting the patch both upstream and to Open MPI. - Fixed minor memory leak when attempting to open plugins. - Fixed type in MPI_IBARRIER C prototype. Thanks to Harald Servat for reporting the issue. - Add missing man pages for MPI_WIN_CREATE_DYNAMIC, MPI_WIN_ATTACH, MPI_WIN_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED. - When mpirun-launching new applications, only close file descriptors that are actually open (resulting in a faster launch in some environments). - Fix "test ==" issues in Open MPI's configure script. Thank to Kevin Buckley for pointing out the issue. - Fix performance issue in usnic BTL: ensure progress thread is throttled back to not aggressively steal CPU cycles. - Fix cache line size detection on POWER architectures. - Add missing #include in a few places. Thanks to Orion Poplawski for supplying the patch. - When OpenSHMEM building is disabled, no longer install its header files, help files, or man pages. Add man pages for oshrun, oshcc, and oshfort. - Fix mpi_f08 implementations of MPI_COMM_SET_INFO, and profiling versions of MPI_BUFFER_DETACH, MPI_WIN_ALLOCATE, MPI_WIN_ALLOCATE_SHARED, MPI_WTICK, and MPI_WTIME. - Add orte_rmaps_dist_device MCA param, allowing users to map near a specific device. - Various updates/fixes to the openib BTL. - Add missing defaults for the Mellanox ConnectX 3 card to the openib BTL. - Minor bug fixes in the OFI MTL. - Various updates to Mellanox's MXM, hcoll, and FCA components. - Add OpenSHMEM man pages. Thanks to Tony Curtis for sharing the man pages files from openshmem.org. - Add missing "const" attributes to MPI_COMPARE_AND_SWAP, MPI_FETCH_AND_OP, MPI_RACCUMULATE, and MPI_WIN_DETACH prototypes. Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention. - Fix linking issues on some platforms (e.g., SLES 12). - Fix hang on some corner cases when MPI applications abort. - Add missing options to mpirun man page. Thanks to Daniel Letai for bringing this to our attention. - Add new --with-platform-patches-dir configure option - Adjust relative selection priorities to ensure that MTL support is favored over BTL support when both are available - Use CUDA IPC for all sized messages for performance 1.10.0 ------ ** NOTE: The v1.10.0 release marks the transition to Open MPI's new ** version numbering scheme. The v1.10.x release series is based on ** the v1.8.x series, but with a few new features. v2.x will be the ** next series after the v1.10.x series, and complete the transition ** to the new version numbering scheme. See README for more details ** on the new versioning scheme. ** ** NOTE: In accordance with OMPI version numbering, the v1.10 is *not* ** API compatible with the v1.8 release series. - Added libfabric support (see README for more details): - usNIC BTL updated to use libfabric. - Added OFI MTL (usable with PSM in libfabric v1.1.0). - Added Intel Omni-Path support via new PSM2 MTL. - Added "yalla" PML for faster MXM support. - Removed support for MX - Added persistent distributed virtual machine (pDVM) support for fast workflow executions. - Fixed typo in GCC inline assembly introduced in Open MPI v1.8.8. Thanks to Paul Hargrove for pointing out the issue. - Add missing man pages for MPI_Win_get|set_info(3). - Ensure that session directories are cleaned up at the end of a run. - Fixed linking issues on some OSs where symbols of dependent libraries are not automatically publicly available. - Improve hcoll and fca configury library detection. Thanks to David Shrader for helping track down the issue. - Removed the LAMA mapper (for use in setting affinity). Its functionality has been largely superseded by other mpirun CLI options. - CUDA: Made the asynchronous copy mode be the default. - Fix a malloc(0) warning in MPI_IREDUCE_SCATTER_BLOCK. Thanks to Lisandro Dalcin for reporting the issue. - Fix typo in MPI_Scatter(3) man page. Thanks to Akshay Venkatesh for noticing the mistake. - Add rudimentary protection from TCP port scanners. - Fix typo in Open MPI error handling. Thanks to ¥ke Sandgren for pointing out the error. - Increased the performance of the CM PML (i.e., the Portals, PSM, PSM2, MXM, and OFI transports). - Restored visibility of blocking send requests in message queue debuggers (e.g., TotalView, DDT). - Fixed obscure IPv6-related bug in the TCP BTL. - Add support for the "no_locks" MPI_Info key for one-sided functionality. - Fixed ibv_fork support for verbs-based networks. - Fixed a variety of small bugs in OpenSHMEM. - Fixed MXM configure with additional CPPFLAGS and LDFLAGS. Thanks to David Shrader for the patch. - Fixed incorrect memalign threshhold in the openib BTL. Thanks to Xavier Besseron for pointing out the issue. 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- ** NOTE: v1.8.7 technically breaks ABI with prior versions ** in the 1.8 series because it repairs two incorrect API ** signatures. However, users will only need to recompile ** if they were using those functions - which they couldn't ** have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. Thanks for Lisandro Dalcin for contributing a patch fixing some one-sided code paths. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. Thanks to Paul Hargrove for reporting the issues. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. Thanks to Robert McLay for the suggestion. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. Thanks to Bogdan Sataric for the bug report. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. Thanks to Gus Correa for pointing out the issue. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. Thanks to Orion Poplawski for identifying the issue. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. Thanks to Erick Schnetter for spotting the outdated text. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. Thanks to Alexander Pozdneev for citing the outdated text. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. Thanks to Harald Servat for noticing and sending a patch. - Updated configure paths in HACKING. Thanks to Maximilien Levesque for the fix. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. Thanks to Github user yafshar for raising the issue. - Fixed memory leak on Cygwin platforms. Thanks for Marco Atzeri for reporting the issue. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. Thanks to Lisandro Dalcin for reporting the issue. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. Thanks to Siegmar Gross for patiently identifying all the issues. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. Thanks to Takahiro Kawashima and Siegmar Gross for identifying the issue. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. - Fixed MPI_IALLGATHER problem with intercommunicators. Thanks for Takahiro Kawashima for the patch. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fix for that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output 1.8.1 ----- - Fix for critical bug: mpirun removed files (but not directories) from / when run as root. Thanks to Jay Fenlason and Orion Poplawski for bringing the issue to our attention and helping identify the fix. 1.8 --- - Commit upstream ROMIO fix for mixed NFS+local filesystem environments. - Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. - Add config support for the Mellanox ConnectX 4 card. - Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. Thanks to Lisandro Dalcin for pointing out the issue. - Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. - Fix some compiler warnings. - Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. Thanks to Artem Polyakov for identifying the problem and providing a patch 1.7.5 ----- ********************************************************************** * Open MPI is now fully MPI-3.0 compliant ********************************************************************** - Add Linux OpenSHMEM support built on top of Open MPI's MPI layer. Thanks to Mellanox for contributing this new feature. - Allow restricting ORTE daemons to specific cores using the orte_daemon_cores MCA param. - Ensure to properly set "locality" flags for processes launched via MPI dynamic functions such as MPI_COMM_SPAWN. - Fix MPI_GRAPH_CREATE when nnodes is smaller than the size of the old communicator. - usnic BTL now supports underlying UDP transport. - usnic BTL now checks for common connectivty errors at first send to a remote server. - Minor scalability improvements in the usnic BTL. - ompi_info now lists whether the Java MPI bindings are available or not. - MPI-3: mpi.h and the Fortran interfaces now report MPI_VERSION==3 and MPI_SUBVERSION==0. - MPI-3: Added support for new RMA functions and functionality. - Fix MPI_Info "const buglet. Thanks to Orion Poplawski for identifying the issue. - Multiple fixes to mapping/binding options. Thanks to Tetsuya Mishima for his assistance. - Multiple fixes for normal and abnormal process termination, including singleton MPI_Abort and ensuring to kill entire process groups when abnormally terminating a job. - Fix DESTDIR install for javadocs. Thanks to Orion Poplawski for pointing out the issue. - Various performance improvements for the MPI Java bindings. - OMPI now uses its own internal random number generator and will not perturb srand() and friends. - Some cleanups for Cygwin builds. Thanks to Marco Atzeri for the patches. - Add a new collective component (coll/ml) that provides substantially improved performance. It is still experimental, and requires setting coll_ml_priority > 0 to become active. - Add version check during startup to ensure you are using the same version of Open MPI on all nodes in a job. - Significantly improved the performance of MPI_DIMS_CREATE for large values. Thanks to Andreas Sch„fer for the contribution. - Removed ASYNCHRONOUS keyword from the "ignore TKR" mpi_f08 module. - Deprecated the following mpirun options: --bynode, --bycore, --byslot: replaced with --map-by node|core|slot. --npernode, --npersocket: replaced with --map-by ppr:N:node and --map-by ppr:N:socket, respectively - Pick NFS "infinitely stale" fix from ROMIO upstream. - Various PMI2 fixes and extension to support broader range of mappings. - Improve launch performance at large scale. - Add support for PBS/Torque environments that set environment variables to indicate the number of slots available on each nodes. Set the ras_tm_smp MCA parameter to "1" to enable this mode. - Add new, more scalable endpoint exchange (commonly called "modex") method that only exchanges endpoint data on a per-peer basis on first message. Not all transports have been updated to use this feature. Set the rte_orte_direct_modex parameter to "1" to enable this mode. 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. 1.7.3 ----- - Make CUDA-aware support dynamically load libcuda.so so CUDA-aware MPI library can run on systems without CUDA software. - Fix various issues with dynamic processes and intercommunicator operations under Torque. Thanks to Suraj Prabhakaran for reporting the problem. - Enable support for the Mellanox MXM2 library by default. - Improve support for Portals 4. - Various Solaris fixes. Many thanks to Siegmar Gross for his incredible patience in reporting all the issues. - MPI-2.2: Add reduction support for MPI_C_*COMPLEX and MPI::*COMPLEX. - Fixed internal accounting when openpty() fails. Thanks to Michal Peclo for reporting the issue and providing a patch. - Fixed too-large memory consumption in XRC mode of the openib BTL. Thanks to Alexey Ryzhikh for the patch. - Add bozo check for negative np values to mpirun to prevent a deadlock. Thanks to Upinder Malhi for identifying the issue. - Fixed MPI_IS_THREAD_MAIN behavior. Thanks to Lisandro Dalcin for pointing out the problem. - Various rankfile fixes. - Fix functionality over iWARP devices. - Various memory and performance optimizations and tweaks. - Fix MPI_Cancel issue identified by Fujitsu. - Add missing support for MPI_Get_address in the "use mpi" TKR implementation. Thanks to Hugo Gagnon for identifying the issue. - MPI-3: Add support for MPI_Count. - MPI-2.2: Add missing MPI_IN_PLACE support for MPI_ALLTOALL. - Added new usnic BTL to support the Cisco usNIC device. - Minor VampirTrace update to 5.14.4.4. - Removed support for ancient OS X systems (i.e., prior to 10.5). - Fixed obscure packing/unpacking datatype bug. Thanks to Takahiro Kawashima for identifying the issue. - Add run-time support for PMI2 environments. - Update openib BTL default parameters to include support for Mellanox ConnectX3-Pro devices. - Update libevent to v2.0.21. - "ompi_info --param TYPE PLUGIN" now only shows a small number of MCA parameters by default. Add "--level 9" or "--all" to see *all* MCA parameters. See README for more details. - Add support for asynchronous CUDA-aware copies. - Add support for Mellanox MPI collective operation offload via the "hcoll" library. - MPI-3: Add support for the MPI_T interface. Open MPI's MCA parameters are now accessible via the MPI_T control variable interface. Support has been added for a small number of MPI_T performance variables. - Add Gentoo memory hooks override. Thanks to Justin Bronder for the patch. - Added new "mindist" process mapper, allowing placement of processes via PCI locality information reported by the BIOS. - MPI-2.2: Add support for MPI_Dist_graph functionality. - Enable generic, client-side support for PMI2 implementations. Can be leveraged by any resource manager that implements PMI2; e.g. SLURM, versions 2.6 and higher. 1.7.2 ----- - Major VampirTrace update to 5.14.4.2. (** also appeared: 1.6.5) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also appeared: 1.6.5) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also appeared: 1.6.5) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also appeared: 1.6.5) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also appeared: 1.6.5) - Fix possible data corruption in the MXM MTL component. (** also appeared: 1.6.5) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also appeared: 1.6.5) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also appeared: 1.6.5) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also appeared: 1.6.5) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also appeared: 1.6.5) - Add INI information for Chelsio T5 device. (** also appeared: 1.6.5) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also appeared: 1.6.5) - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also appeared: 1.6.5) - Add a distance-based mapping component to find the socket "closest" to the PCI bus. - Fix an error that caused epoll to automatically be disabled in libevent. - Upgrade hwloc to 1.5.2. - *Really* fixed XRC compile issue in Open Fabrics support. - Fix MXM connection establishment flow. - Fixed parallel debugger ability to attach to MPI jobs. - Fixed some minor memory leaks. - Fixed datatype corruption issue when combining datatypes of specific formats. - Added Location Aware Mapping Algorithm (LAMA) mapping component. - Fixes for MPI_STATUS handling in corner cases. - Add a distance-based mapping component to find the socket "closest" to the PCI bus. 1.7.1 ----- - Fixed compile error when --without-memory-manager was specified on Linux - Fixed XRC compile issue in Open Fabrics support. 1.7 --- - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. 1.6.5 ----- - Updated default SRQ parameters for the openib BTL. (** also to appear: 1.7.2) - Major VampirTrace update to 5.14.4.2. (** also to appear: 1.7.2) - Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. (** also to appear: 1.7.2) - Set the Intel Phi device to be ignored by default by the openib BTL. (** also to appear: 1.7.2) - Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. (** also to appear: 1.7.2) - Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. (** also to appear: 1.7.2) - Fix possible data corruption in the MXM MTL component. (** also to appear: 1.7.2) - Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. (** also to appear: 1.7.2) - Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. (** also to appear: 1.7.2) - Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. (** also to appear: 1.7.2) - Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. (** also to appear: 1.7.2) - Add INI information for Chelsio T5 device. (** also to appear: 1.7.2) - Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. (** also to appear: 1.7.2) - Improved alignment for OpenFabrics buffers. - Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. (** also to appear: 1.7.2)
2015-12-12 23:41:19 +01:00
share/openmpi/mpifort-wrapper-data.txt
share/openmpi/openmpi-valgrind.supp
Update to OpenMPI 1.5.1 Changes in 1.5.1 - Fixes for the Oracle Studio 12.2 Fortran compiler. - Fix SPARC and SPARCv9 atomics. Thanks to Nicola Stange for the initial patch. - Fix Libtool issues with the IBM XL compiler in 64-bit mode. - Restore the reset of the libevent progress counter to avoid over-sampling the event library. - Update memory barrier support. - Use memmove (instead of memcpy) when necessary (e.g., source and destination overlap). - Fixed ompi-top crash. - Fix to handle Autoconf --program-transforms properly and other m4/configury updates. Thanks to the GASNet project for the --program transforms fix. - Allow hostfiles to specify usernames on a per-host basis. - Update wrapper compiler scripts to search for perl during configure, per request from the BSD maintainers. - Minor man page fixes. - Added --with-libltdl option to allow building Open MPI with an external installation of libltdl. - Fixed various issues with -D_FORTIFY_SOURCE=2. - Various VT fixes and updates. Notable changes in 1.5 - Added "knem" support: direct process-to-process copying for shared memory message passing. See http://runtime.bordeaux.inria.fr/knem/ and the README file for more details. - Updated shared library versioning scheme and linking style of MPI applications. The MPI application ABI has been broken from the v1.3/v1.4 series. MPI applications compiled against any prior version of Open MPI will need to, at a minimum, re-link. See the README file for more details. - Added "fca" collective component, enabling MPI collective offload support for Voltaire switches. - Fixed MPI one-sided operations with large target displacements. Thanks to Brian Price and Jed Brown for reporting the issue. - Fixed MPI_GET_COUNT when used with large counts. Thanks to Jed Brown for reporting the issue. - Made the openib BTL safer if extremely low SRQ settings are used. - Fixed handling of the array_of_argv parameter in the Fortran binding of MPI_COMM_SPAWN_MULTIPLE (** also to appear: 1.4.3). - Fixed malloc(0) warnings in some collectives. - Fixed a problem with the Fortran binding for MPI_FILE_CREATE_ERRHANDLER. Thanks to Secretan Yves for identifying the issue (** also to appear: 1.4.3). - Updates to the LSF PLM to ensure that the path is correctly passed. Thanks to Teng Lin for the patch (** also to appear: 1.4.3). - Fixes for the F90 MPI_COMM_SET_ERRHANDLER and MPI_WIN_SET_ERRHANDLER bindings. Thanks to Paul Kapinos for pointing out the issue (** also to appear: 1.4.3). - Fixed extra_state parameter types in F90 prototypes for MPI_COMM_CREATE_KEYVAL, MPI_GREQUEST_START, MPI_REGISTER_DATAREP, MPI_TYPE_CREATE_KEYVAL, and MPI_WIN_CREATE_KEYVAL. - Fixes for Solaris oversubscription detection. - If the PML determines it can't reach a peer process, print a slightly more helpful message. Thanks to Nick Edmonds for the suggestion. - Make btl_openib_if_include/exclude function the same way btl_tcp_if_include/exclude works (i.e., supplying an _include list overrides supplying an _exclude list). - Apply more scalable reachability algorithm on platforms with more than 8 TCP interfaces. - Various assembly code updates for more modern platforms / compilers. - Relax restrictions on using certain kinds of MPI datatypes with one-sided operations. Users beware; not all MPI datatypes are valid for use with one-sided operations! - Improve behavior of MPI_COMM_SPAWN with regards to --bynode. - Various threading fixes in the openib BTL and other core pieces of Open MPI. - Various help file and man pages updates. - Various FreeBSD and NetBSD updates and fixes. Thanks to Kevin Buckley and Aleksej Saushev for their work. - Fix case where freeing communicators in MPI_FINALIZE could cause process failures. - Print warnings if shared memory state files are opened on what look like networked filesystems. - Update libevent to v1.4.13. - Allow propagating signals to processes that call fork(). - Fix bug where MPI_GATHER was sometimes incorrectly examining the datatype on non-root processes. Thanks to Michael Hofmann for investigating the issue. - Various Microsoft Windows fixes. - Various Catamount fixes. - Various checkpoint / restart fixes. - Xgrid support has been removed until it can be fixed (patches would be welcome). - Added simplistic "libompitrace" contrib package. Using the MPI profiling interface, it essentially prints out to stderr when select MPI functions are invoked. - Update bundled VampirTrace to v5.8.2. - Add pkg-config(1) configuration files for ompi, ompi-c, ompi-cxx, ompi-f77, ompi-f90. See the README for more details. - Removed the libopenmpi_malloc library (added in the v1.3 series) since it is no longer necessary - Add several notifier plugins (generally used when Open MPI detects system/network administrator-worthy problems); each have their own MCA parameters to govern their usage. See "ompi_info --param notifier <name>" for more details. - command to execute arbitrary commands (e.g., run a script). - file to send output to a file. - ftb to send output to the Fault Tolerant Backplane (see http://wiki.mcs.anl.gov/cifts/index.php/CIFTS) - hnp to send the output to mpirun. - smtp (requires libesmtp) to send an email.
2010-12-16 22:00:53 +01:00
share/openmpi/ortecc-wrapper-data.txt
share/pmix/help-pmix-mca-base.txt
share/pmix/help-pmix-mca-var.txt
share/pmix/help-pmix-plog.txt
share/pmix/help-pmix-psensor-file.txt
share/pmix/help-pmix-psensor-heartbeat.txt
share/pmix/help-pmix-runtime.txt
share/pmix/help-pmix-server.txt
share/pmix/pmix-valgrind.supp