- configure: VPATH building: Moved adding of -I$top_srcdir to CPPFLAGS to the end of configure to prevent using this flags for configure checks
- VT libs: Fixed potential segmentation fault (infinite recursion) when writing intermediate statistics (VT_STAT_INTV != 0)
- vtunify: Fixed header include to disable OpenMP in the library version of vtunify (libvt-mpi-unify)
- fixed several Coverity warnings
This commit was SVN r28187.
* Don't call PMPI_* anything from our module code; that's terribly
bad form (and disallowed!). Instead, do the proper back-end stuff
to reset the error handler on the file handle.
* If we've already started to MPI_Finalize, then just give up and
don't actually perform all the file closing actions (because
ROMIO's file close calls MPI_Barrier, which will obviously fail if
MPI_Finalize has already been invoked). Bad user behavior should
be punished (by leaking resources, not closing the file properly,
etc.).
This commit was SVN r28177.
library to multiple libraries that are implicitly sucked into the executable
as a dependency of libmpi. The initialize hook isn't visible to libc on some
linux distributions when it's in libopal and libopal isn't explicity linked
into the executable. The fix is to have a duplicate initialize hook in
libmpi as well as libopal. *sigh*.
This commit was SVN r28164.
- general:
- incremented version number to 1.12.3
- updated copyright information (2012->2013)
- fixed compiler warnings occurred when NDEBUG is defined (--with-platform=optimized)
- otfprofile, LaTeX output:
- swapped x & y axis of the Message Data Rate Matrix
- adapted labels to Vampir
Changes to VT:
- general:
- incremented version number to 5.14.3
- updated copyright information (2012->2013)
- fixed compiler warnings occurred when NDEBUG is defined (--with-platform=optimized)
- configure / build system:
- do not search for the MPI lib. when an MPI compiler wrapper was found (prevents double linkage of the MPI lib. when building vtunify-mpi and vtfilter-mpi)
- prepend cross-prefix to the compiler wrappers *only* if '--with-cross-prefix[=PREFIX]' is given
- removed unnecessary sources from libvt-java
- VT libs:
- extended inoffical API for manual region tracing: allow specifying a group name
- plugin counters: Merge a set of post-mortem counters and write them under a single async key. This speeds up the unification.
- Java tracing:
- removed multiple asking for the current thread id when recording method enter/leave events
- replaced hash function (id % prime) by Jenking's recommended one ( id & (hash_table_size-1) )
- vtdyn: Do not instrument regions where inserting instrumentation would requires using a trap
- vtsetup: Fixed availability state of the exec tracing feature
This commit was SVN r28162.
1. remove the "die if not dual repo" and automatic "git add" for the .gitignore as we might want to run this script outside of a dual repo.
2. put the results in a single .gitignore file at the top so it mimics the mercurial script and is easier to copy to a git repo
3. don't prefix the entries with "./" as git doesn't recognize the entry if you do
This commit was SVN r28148.
A few changes were required to support this move:
1. the PMI component used to identify rte-related data (e.g., host name, bind level) and package them as a unit to reduce the number of PMI keys. This code was moved up to the ORTE layer as the OPAL layer has no understanding of these concepts. In addition, the component locally stored data based on process jobid/vpid - this could no longer be supported (see below for the solution).
2. the hash component was updated to use the new opal_identifier_t instead of orte_process_name_t as its index for storing data in the hash tables. Previously, we did a hash on the vpid and stored the data in a 32-bit hash table. In the revised system, we don't see a separate "vpid" field - we only have a 64-bit opaque value. The orte_process_name_t hash turned out to do nothing useful, so we now store the data in a 64-bit hash table. Preliminary tests didn't show any identifiable change in behavior or performance, but we'll have to see if a move back to the 32-bit table is required at some later time.
3. the db framework was a "select one" system. However, since the PMI component could no longer use its internal storage system, the framework has now been changed to a "select many" mode of operation. This allows the hash component to handle all internal storage, while the PMI component only handles pushing/pulling things from the PMI system. This was something we had planned for some time - when fetching data, we first check internal storage to see if we already have it, and then automatically go to the global system to look for it if we don't. Accordingly, the framework was provided with a custom query function used during "select" that lets you seperately specify the "store" and "fetch" ordering.
4. the ORTE grpcomm and ess/pmi components, and the nidmap code, were updated to work with the new db framework and to specify internal/global storage options.
No changes were made to the MPI layer, except for modifying the ORTE component of the OMPI/rte framework to support the new db framework.
This commit was SVN r28112.
configure test to ensure that the Fortran compiler supports BIND(C)
with LOGICAL parameters (per
http://lists.mpi-forum.org/mpi-comments/2013/02/0076.php).
This may become moot shortly -- Pathscale tells me that they intend
upgrade their compiler to support BIND(C) with default LOGICAL in the
very near term (this week?). But we still want this configure test so
that Open MPI won't even try to build the F08 bindings with older
versions of the Pathscale compilers (or any compiler that doesn't
support BIND(C) and LOGICAL parameters).
This commit was SVN r28110.
The following Trac tickets were found above:
Ticket 3523 --> https://svn.open-mpi.org/trac/ompi/ticket/3523