- add some missing APIs
- change signature od shmem_finalize to comply with SGI spec
fixed by Roman, reviewed by Igor/Miked
Refs trac:4520
This commit was SVN r31413.
The following Trac tickets were found above:
Ticket 4520 --> https://svn.open-mpi.org/trac/ompi/ticket/4520
This man page contains the prototype and descriptions for both
MPI_TYPE_INDEXED and MPI_TYPE_CREATE_HINDEXED. Bastian Beischer
noticed that the type of the array_of_displacements argument in the
MPI_TYPE_CREATE_HINDEXED was wrong.
Also, a minor update to MPI_Type_hindexed.3in: indicate that the C
type is MPI_Aint and the Fortran type is INTEGER (which is why this
function was deprecated and then deleted by the MPI Forum!).
cmr=v1.8.1:reviewer=dgoodell
This commit was SVN r31411.
The rationale for this name switch is as follows:
0. These two files will be automatically kept up-to-date with
svn:ignore properties in the tree via a cron script. Meaning: if a
developer makes changes to svn:ignore properties, those changes
will automatically be reflected in .gitignore_global /
.hgignore_global within a fixed time period (at the moment,
nightly).
1. Developers who make pure clones of git/hg OMPI repos can copy the
relevant .*ignore_global file to .*ignore. This gives them a good
starting point for a fully-populated ignore file. However, since
the upstream _global file may change over time, developers will
likely want to keep them in sync with their local .*ignore file.
Here's two possibilities:
1a. Maintain a single .*ignore file and manually merge in changes
from the _global file upstream.
1b. Maintain their local ignores in a .*ignore_local file, and
periodically "cat .*ignore_global .*ignore_local > *.ignore"
(e.g., whenever the upstream _global file changes).
2. Developers who make svn+clone checkouts can do similar things as
listed in 1, with the added feature that they cannot make the
mistake of committing their locally-modified .*ignore file back to
SVN (presumably containing references to files that do not exist in
SVN), since the .*ignore file is not in SVN.
Point #2 is probably the stronger of these two reasons -- prevent
mistakes of developers accidentally committing locally-modified
.*ignore files back to SVN.
This commit was SVN r31408.
Add some getopt options for both build-gitignore.pl and
build-hgignore.pl:
-v: be a little verbose
-h: show a quick help message
-o: specify the output file to write
build-hgignore.pl defaults to writing .hgignore, and
build-gitignore.pl defaults to writing .gitignore. But you can use -o
to specify writing a different filename.
This commit was SVN r31397.
Nothing is generated in this file; this commit essentially just
renames ompi_config.h.in -> ompi_config.h.
cmr=v1.8.1:reviewer=dgoodell
This commit was SVN r31395.
Sort the output from reading directory contents so that the generated
.gitignore and .hgignore files will be much more consistent (and
friendly to change from subsequent runs, especially when they are
committed to SVN/git/hg repos).
This commit was SVN r31394.
It's a singular filename because there's only 1 interface in the
file. Also, r31375 missed updating the name in a few places, and
broke the build for compilers that supported the mpi_f08 interface.
This commit was SVN r31389.
The following SVN revision numbers were found above:
r31375 --> open-mpi/ompi@fe1935de14
Two things to note:
- This change will allow us to expand the BTL interface without
having to worry about modifying BTLs that will not support the new
interfaces. More on this will come later this year as part of the
1.9 series.
- C99 guarantees that uninitialed members of structs declared outside
of functions (DATA binary section) will be initialized with
0's. This allows us to drop stuff like .btl_flags = 0, or .btl_get
= NULL.
This commit was SVN r31388.
completed. As we need to have the right displacement at the beginning
of the next call, we should save the position relative to the beginning
of the buffer and not to the last loop.
This commit was SVN r31387.
Use only contig allocator if shared_mr() is not supported
Fixes ibv_exp_reg_mr() parameters passing.
Fixes incorrect handling of sshmem_verbs_hca_name option.
fixed by AlexM, reviewed by Mike
cmr=v1.8.1:reviewer=ompi-rm1.8
This commit was SVN r31379.
When sending PUT_LONG, the data is sent before headers, and sometimes
the header is not flushed immediately. This creates a lot of unexpected
receives in the peer, since it would posts a receive only when gets the
header, which makes it run out of receive buffers. When the sender
eventually flushes the window, the receiver already has no buffers to
receive the header, which causes a deadlock.
The fix is to always flush the headers when doing put_long.
cmr=v1.8.1:reviewer=hjelmn
This commit was SVN r31378.
Since we only builds the "small" size of the "mpi" module any more, it
does not take a long time to compile. So remove the warning that is
emitted.
Also remove a vestage of Windows support that was leftover in the
Fortran area (i.e., building mpi.obj).
This commit was SVN r31374.
Differentiate the pre-defined attribute and conversion interfaces into
those with INTEGER handles and those with TYPE(MPI_*) handles.
Refs trac:4157
cmr=v1.8.1:ticket=trac:4512
This commit was SVN r31372.
The following Trac tickets were found above:
Ticket 4157 --> https://svn.open-mpi.org/trac/ompi/ticket/4157
Ticket 4512 --> https://svn.open-mpi.org/trac/ompi/ticket/4512
Use type(c_funptr) to "cast" the fortran function pointers to
arbitrary C pointers. In C, we then pick up the appropriate function
pointer type.
Tested with ifort 14.0.2 and gfortran 4.9 snapshot (which is what
identified that the previous method of passing function pointers was
not Fortran'08-compliant).
Refs trac:4157
This commit was SVN r31371.
The following Trac tickets were found above:
Ticket 4157 --> https://svn.open-mpi.org/trac/ompi/ticket/4157
Junchao Zhang pointed out to me that we had the wrong parameter name
and string length specification for the "version" parameter. This
matters because Fortran allows passing by parameter name
(vs. parameter ordering). Specifically, we had the interface as:
{{{
subroutine MPI_Get_library_version_f08(name,resultlen,ierror)
character(len=MPI_MAX_PROCESSOR_NAME), intent(out) :: name
...etc.
}}}
but it should be:
{{{
subroutine MPI_Get_library_version_f08(version,resultlen,ierror)
character(len=MPI_MAX_LIBRARY_VERSION_STRING), intent(out) :: version
...etc.
}}}
Thankfully, MPI_MAX_PROCESSOR_NAME and MPI_MAX_LIBRARY_VERSION_STRING
are both 255 in OMPI, so there's no ABI issue caused by changing the
length from MMPN --> MMLVS.
The ABI is also unaffected by the parameter name change: if you
compile/link an MPI application calling MPI_GET_LIBRARY_VERSION with
1.8, it'll still run-time link with this change.
However, if an MPI program compiled using parameter name passing with
the old/incorrect parameter name ("name"), it won't be able to compile
with the new/correct parameter name ("version"). But this will only
happen for an incorrect MPI application (because the MPI-3 mandated
parameter name is "version", not "name"), so they deserve what they
get.
cmr=v1.8.1:reviewer=dgoodell
This commit was SVN r31365.
(i.e., the script that fires via cron every 15 mins to "git pull" from
the github ompi-www repo).
This commit moves the mercurial mirroring script to the
"infrastructure" directory.
This commit was SVN r31360.
really "nightly" scripting.
Also, the crontab files were already moved to the infrastructure
directory; forgot to commit their removals from the "nightly"
directory.
This commit was SVN r31359.
While testing one-sided on LANL systems I found a couple more OSC
bugs that were not caught during the initial testing:
- In the passive target code we read the read lock count as a
char instead of the intended uint32_t. This causes lock to
lockup when using shared locks after 127 iterations.
- The post code used the wrong group when trying to increment post
counters. This causes a segmentation fault.
- Both the post and wait code used the wrong check in the inner
loop leading to an infinite loop.
cmr=v1.8.1:reviewer=jsquyres
This commit was SVN r31354.
There was a typo in the ompi_osc_gacc_long_start that was causing a
segmentation fault when executing long get accumulate operations.
cmr=v1.8.1:reviewer=jsquyres
This commit was SVN r31353.
newer
This commit adds a workaround for messages printed by the Cray PMI library
when launching using mpirun. We are still talking with Cray to find a
better fix but this will silence the warnings for now.
cmr=v1.8.1:reviewer=manjugv
This commit was SVN r31352.