- 01 Apr, 2014 11 commits
-
-
Pavan Balaji authored
Create symlinks for libmpich and friends, for applications that might still be relying on those names. Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
Pavan Balaji authored
Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
Pavan Balaji authored
No reviewer.
-
Pavan Balaji authored
Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
Pavan Balaji authored
When the conditions are right, we use libtool's interlibrary dependencies to only link the application with the minimum set of libraries required. Those libraries will pull in the other required libraries on demand. That way, the application library dependencies would be minimal, allowing us to add/remove extra libraries in the future. The "conditions are not right" when one of the following is true: 1. MPICH shared library builds are disabled. 2. libtool doesn't support interlibrary dependencies on this platform. 3. The user passed -static or -mpich-alllibs to the command line. 4. Interlibrary dependency tracking is explicitly disabled at configure time. Fixes #2040. Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
We moved the symbols around in libmpi and libpmpi. pkg-config should match this. Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
Maintain a list of files that go into each library. If a particular binding is not enabled, the list variable still exists, but will just be empty. This simplifies the management of which files/symbols go into which library. Move all MPI_ symbols to the libmpi library and all other symbols to the libpmpi library. All Fortran 77 symbols go into libmpif77.so, while C symbols go into libmpi.so. There are some exceptions, such as status_f2c, which are handled by the Fortran code but used in C. Our Fortran 90 build only creates a few symbols and uses the f77 symbols for everything else. These few symbols go into libmpifort.so. Also update compiler wrappers to link to correct libraries. mpif77 should now link with libmpif77. mpif90 links with both libmpifort and libmpif77, since our F90 build still keeps the core Fortran library symbols in libf77. We completely ignored the F77 library earlier. This was OK because all of the Fortran symbols were ending up in libmpi. Now that we have separated out the symbols to the right library, we now need to link to libmpif77 as well. Also added inter-library dependencies. libmpi has a dependency on several internal libraries: libmpl, libopa. libmpicxx did not have a dependency on libmpi, added. libmpif77 did not have a dependency on libmpi, added. libmpifort did not have a dependency on libmpi, added. This dependency model is sufficient for C and F77, but not for C++ and F90. The C and F77 libraries contain all the symbols the application relies on, but the F90 and C++ libraries don't. In the case of F90, symbols such as mpi_bcast are missing and are borrowed from the F77 library. In the case of C++, mpicxx.h contains calls directly to C functions (such as MPI_Reduce_local), which get embedded into the application. Fixes #2023. Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
Rename BUILD_CXX_LIB to BUILD_CXX_BINDING. Rename BUILD_F90_LIB to BUILD_FC_BINDING. Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
The following library names are used to make the naming consistent across the ABI compatibility group: C libraries: libmpi.* and libpmpi.* C++ library: libmpicxx.* F77 libraries: libmpif77.* F90+ library: libmpifort.* This patch also gets rid of the FWRAPNAME variable, which is a duplicate of MPIFLIBNAME. Similarly, FCWRAPNAME is removed and a new variable MPIFCLIBNAME is added, so it's consistent with the other names. PMPIFLIBNAME, which was unused, is no longer present. Fixes #2039. Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
This symbol should go into libmpich, not libpmpich. Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
- 28 Mar, 2014 2 commits
-
-
Rob Latham authored
No Reviewer
-
Pavan Balaji authored
No reviewer.
-
- 27 Mar, 2014 5 commits
-
-
Michael Blocksome authored
-
Michael Blocksome authored
-
Rob Latham authored
No Reviewer
-
Rob Latham authored
-
Rob Latham authored
-
- 26 Mar, 2014 22 commits
-
-
ADIOI_incorporate_system_hints need to initialize flag or hints from ROMIO_HINTS file with NULL MPI_Info could be ignored in some situations Signed-off-by:
Rob Latham <robl@mcs.anl.gov>
-
Rob Latham authored
missing prototypes, shadowed declarations, format string conversions, and mismatched datatypes all flagged by clang Signed-off-by: none
-
Rob Latham authored
MPI3 const-ification has propigated into ROMIO a bit. Declare most write buffers const, but cast it away when calling the not-const pvfs2 system interface Signed-off-by: none
-
Rob Latham authored
I was taking the size of a pointer, not the size of the actual object. Thanks, clang! Signed-off-by: none
-
Rob Latham authored
-
Rob Latham authored
we introduced some bluegene code to common code, which introduced some variable not used in common case. also, lseek no longer exists now that we use pread/pwrite.
-
Rob Latham authored
as with lustre, pread/pwrtie need a feature level newer than --enable-strict requests. autoconf already checked for the function at configure time, so we know it's there. TODO: more robust autoconf checks and provide a "my_pwrite" that wraps lseek/write for a fallback.
-
Rob Latham authored
P2Pcontig needed a prototype and clang complaiend about several shadowed declarations.
-
Rob Latham authored
-
Rob Latham authored
until we figure out what's up with aio routines on blue gene, let's just disable it. the romio aio tests would just hang in aio_suspend
-
-
-
remove gpfs-specific shared fp call further lockless removal documentation fixups
-
-
-
-
reconfiguration changes from bg to gpfs with platformspec; removal of lockless
-
-
-
Rob Latham authored
astonishigly, the blue gene L(!) condition lacked a closing 'fi' but we never noticed since async I/O never worked on blue gene. Use the AS_IF macro to make this less likely to recur in the future.
-
Rob Latham authored
In order to accomodate deferred open, we can't do *any* collective operations in ad_bg_open. Any collectives have to happen one level up at ADIOI_GEN_Opencoll. We already promoted fs blksize in a prior patch, and simplified "scalable sync" in another patch, so when we remove the collective call (bcast of blocksize and fs type), we can also remove the "is it ok to scalalbe sync"? (because it will always be ok) and the "are we an fsync-aggregator" logic becuase now only the first io aggregator will be such an aggregator.
-
Rob Latham authored
If deferred open is enabled, the logic that says if we should do a scalable flush and which processes should do the flush won't propagate to the non-aggregator processes. Replace old way of doing things with a simpler stat-from-first-aggregator approach.
-