Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ADIOS2 2.6.0+ #754

Merged
merged 5 commits into from
Jul 30, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,10 +41,10 @@ A clear and concise description of what you expected to happen.
- installed openPMD-api via: [conda-forge, spack, pip, from source, module system, ...]
- operating system: [name and version]
- machine: [Are you running on a public cluster? It's likely we compute on it as well!]
- name and version of Python implementation: [e.g. CPython 3.7]
- version of HDF5: [e.g. 1.10.1]
- name and version of Python implementation: [e.g. CPython 3.8]
- version of HDF5: [e.g. 1.12.0]
- version of ADIOS1: [e.g. 1.13.1]
- version of ADIOS2: [e.g. 2.5.0]
- version of ADIOS2: [e.g. 2.6.0]
- name and version of MPI: [e.g. OpenMPI 3.1.5]

**Additional context**
Expand Down
8 changes: 6 additions & 2 deletions .github/ci/spack/packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,12 @@ packages:
adios:
variants: ~zfp ~sz ~lz4 ~blosc
adios2:
version: [2.5.0]
variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc
variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2
# ~shared is a work-around macOS dylib rpath issue for ADIOS2
# https://github.com/ornladios/ADIOS2/issues/2316
# https://spack.readthedocs.io/en/latest/config_yaml.html
# ~bzip2
# Library not loaded: @rpath/libbz2.1.dylib
python:
version: [3.5.5, 3.6.3, 3.7.1, 3.7.2, 3.8.0]
paths:
Expand Down
10 changes: 7 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ env:
- SPACK_ROOT: $HOME/.cache/spack
- PATH: $PATH:$HOME/.cache/spack/bin
- BUILD_TYPE: "Debug"
- [email protected]
- [email protected]
- USE_SHARED: ON

Expand Down Expand Up @@ -196,14 +197,17 @@ jobs:
$EXTRA_CMAKE_FLAGS
-DCMAKE_INSTALL_PREFIX=$HOME/openPMD-test-install
$TRAVIS_BUILD_DIR
- make -j 2
- make VERBOSE=ON
# run tests
# pybind11: work-around for missing symbols with sanitizers
# /usr/local/clang-7.0.0/lib/clang/7.0.0/lib/linux/libclang_rt.asan-x86_64.so
# /usr/local/clang-7.0.0/lib/clang/7.0.0/lib/linux/libclang_rt.ubsan_minimal-x86_64.so
- if [ "$USE_PYTHON" == "ON" ] && [ ! -z ${ASAN_OPTIONS+x} ]; then
export LD_PRELOAD=/usr/local/clang-7.0.0/lib/clang/7.0.0/lib/linux/libclang_rt.asan-x86_64.so;
fi
- if [ "${TRAVIS_OS_NAME}" = "osx" ]; then
otool -l /Users/travis/build/bin/openpmd-ls;
fi
- CTEST_OUTPUT_ON_FAILURE=1 travis_wait make test
- if [ ! -z ${LD_PRELOAD+x} ]; then
unset LD_PRELOAD;
Expand Down Expand Up @@ -399,12 +403,12 @@ jobs:
script: *script-cpp-unit
# GCC 9.3.0
- <<: *test-cpp-unit
name: [email protected] -MPI -PY +H5 +ADIOS1 +ADIOS2@2.5.0
name: [email protected] -MPI -PY +H5 +ADIOS1 +ADIOS2@2.6.0
dist: bionic
language: python
python: "3.8"
env:
- CXXSPEC="%[email protected]" USE_MPI=OFF USE_PYTHON=OFF USE_HDF5=ON USE_ADIOS1=ON USE_ADIOS2=ON ADIOS2_VERSION=@2.5.0 USE_SAMPLES=ON
- CXXSPEC="%[email protected]" USE_MPI=OFF USE_PYTHON=OFF USE_HDF5=ON USE_ADIOS1=ON USE_ADIOS2=ON ADIOS2_VERSION=@2.6.0 USE_SAMPLES=ON
compiler: gcc
addons:
apt:
Expand Down
1 change: 1 addition & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ Other
"""""

- CMake: require version 3.12.0+ #755
- ADIOS2: require version 2.6.0+ #754
- separate header for export macros #704
- rename ``AccessType``/``Access_Type`` to ``Access`` #740 #743 #744
- CI:
Expand Down
10 changes: 7 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -232,14 +232,14 @@ endif()

# external library: ADIOS2 (optional)
if(openPMD_USE_ADIOS2 STREQUAL AUTO)
find_package(ADIOS2 2.5.0 CONFIG)
find_package(ADIOS2 2.6.0 CONFIG)
if(ADIOS2_FOUND)
set(openPMD_HAVE_ADIOS2 TRUE)
else()
set(openPMD_HAVE_ADIOS2 FALSE)
endif()
elseif(openPMD_USE_ADIOS2)
find_package(ADIOS2 2.5.0 REQUIRED CONFIG)
find_package(ADIOS2 2.6.0 REQUIRED CONFIG)
set(openPMD_HAVE_ADIOS2 TRUE)
else()
set(openPMD_HAVE_ADIOS2 FALSE)
Expand Down Expand Up @@ -516,7 +516,11 @@ endif()

# ADIOS2 Backend
if(openPMD_HAVE_ADIOS2)
target_link_libraries(openPMD PUBLIC adios2::adios2)
if(openPMD_HAVE_MPI)
target_link_libraries(openPMD PUBLIC adios2::cxx11_mpi)
else()
target_link_libraries(openPMD PUBLIC adios2::cxx11)
endif()
endif()

# Runtime parameter and API status checks ("asserts")
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ RUN curl -sLo adios-1.13.1.tar.gz http://users.nccs.gov/~pnorbert/adios-1
&& make \
&& make install

RUN curl -sLo adios2-2.5.0.tar.gz https://github.com/ornladios/ADIOS2/archive/v2.5.0.tar.gz \
RUN curl -sLo adios2-2.6.0.tar.gz https://github.com/ornladios/ADIOS2/archive/v2.6.0.tar.gz \
&& file adios2*.tar.gz \
&& tar -xzf adios2*.tar.gz \
&& rm adios2*.tar.gz \
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ I/O backends:
* [JSON](https://en.wikipedia.org/wiki/JSON)
* [HDF5](https://support.hdfgroup.org/HDF5) 1.8.13+ (optional)
* [ADIOS1](https://www.olcf.ornl.gov/center-projects/adios) 1.13.1+ (optional)
* [ADIOS2](https://github.com/ornladios/ADIOS2) 2.5.0+ (optional)
* [ADIOS2](https://github.com/ornladios/ADIOS2) 2.6.0+ (optional)

while those can be built either with or without:
* MPI 2.1+, e.g. OpenMPI 1.6.5+ or MPICH2
Expand Down
2 changes: 1 addition & 1 deletion docs/source/dev/dependencies.rst
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Optional: I/O backends
* `JSON <https://en.wikipedia.org/wiki/JSON>`_
* `HDF5 <https://support.hdfgroup.org/HDF5>`_ 1.8.13+
* `ADIOS1 <https://www.olcf.ornl.gov/center-projects/adios>`_ 1.13.1+
* `ADIOS2 <https://github.com/ornladios/ADIOS2>`_ 2.5.0+
* `ADIOS2 <https://github.com/ornladios/ADIOS2>`_ 2.6.0+

while those can be build either with or without:

Expand Down