Skip to content

Commit 040447c

Browse files
authored
openPMD-api: 0.16.1+ (#5375)
Update to the latest stable release of openPMD-api, version 0.16.1.
1 parent f13c05a commit 040447c

File tree

12 files changed

+20
-20
lines changed

12 files changed

+20
-20
lines changed

.github/workflows/clang_tidy.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
dim: [1, 2, RZ, 3]
2121
name: clang-tidy-${{ matrix.dim }}D
2222
runs-on: ubuntu-22.04
23-
timeout-minutes: 180
23+
timeout-minutes: 220
2424
if: github.event.pull_request.draft == false
2525
steps:
2626
- uses: actions/checkout@v4

.github/workflows/cuda.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ jobs:
5656
which nvcc || echo "nvcc not in PATH!"
5757
5858
cmake-easyinstall --prefix=/usr/local \
59-
git+https://github.com/openPMD/openPMD-api.git@0.15.1 \
59+
git+https://github.com/openPMD/openPMD-api.git@0.16.1 \
6060
-DopenPMD_USE_PYTHON=OFF \
6161
-DBUILD_TESTING=OFF \
6262
-DBUILD_EXAMPLES=OFF \

.github/workflows/dependencies/icc.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ export CEI_TMP="/tmp/cei"
5858
CXX=$(which icpc) CC=$(which icc) \
5959
cmake-easyinstall \
6060
--prefix=/usr/local \
61-
git+https://github.com/openPMD/openPMD-api.git@0.15.2 \
61+
git+https://github.com/openPMD/openPMD-api.git@0.16.1 \
6262
-DopenPMD_USE_PYTHON=OFF \
6363
-DBUILD_TESTING=OFF \
6464
-DBUILD_EXAMPLES=OFF \

Docs/source/developers/gnumake/openpmd.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ therefore we recommend to use `spack <https://
99
spack.io>`__ in order to facilitate the installation.
1010

1111
More specifically, we recommend that you try installing the
12-
`openPMD-api library 0.15.1 or newer <https://openpmd-api.readthedocs.io/en/0.15.1/>`__
12+
`openPMD-api library 0.16.1 or newer <https://openpmd-api.readthedocs.io/en/0.16.1/>`__
1313
using spack (first section below). If this fails, a back-up solution
1414
is to install parallel HDF5 with spack, and then install the openPMD-api
1515
library from source.

Docs/source/install/cmake.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ CMake Option Default & Values Des
128128
``WarpX_amrex_internal`` **ON**/OFF Needs a pre-installed AMReX library if set to ``OFF``
129129
``WarpX_openpmd_src`` *None* Path to openPMD-api source directory (preferred if set)
130130
``WarpX_openpmd_repo`` ``https://github.com/openPMD/openPMD-api.git`` Repository URI to pull and build openPMD-api from
131-
``WarpX_openpmd_branch`` ``0.15.2`` Repository branch for ``WarpX_openpmd_repo``
131+
``WarpX_openpmd_branch`` ``0.16.1`` Repository branch for ``WarpX_openpmd_repo``
132132
``WarpX_openpmd_internal`` **ON**/OFF Needs a pre-installed openPMD-api library if set to ``OFF``
133133
``WarpX_picsar_src`` *None* Path to PICSAR source directory (preferred if set)
134134
``WarpX_picsar_repo`` ``https://github.com/ECP-WarpX/picsar.git`` Repository URI to pull and build PICSAR from

Docs/source/install/dependencies.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ Optional dependencies include:
3030
- also needs the ``pkg-config`` tool on Unix
3131
- `BLAS++ <https://github.com/icl-utk-edu/blaspp>`__ and `LAPACK++ <https://github.com/icl-utk-edu/lapackpp>`__: for spectral solver (PSATD) support in RZ geometry
3232
- `Boost 1.66.0+ <https://www.boost.org/>`__: for QED lookup tables generation support
33-
- `openPMD-api 0.15.1+ <https://github.com/openPMD/openPMD-api>`__: we automatically download and compile a copy of openPMD-api for openPMD I/O support
33+
- `openPMD-api 0.16.1+ <https://github.com/openPMD/openPMD-api>`__: we automatically download and compile a copy of openPMD-api for openPMD I/O support
3434

3535
- see `optional I/O backends <https://github.com/openPMD/openPMD-api#dependencies>`__, i.e., ADIOS2 and/or HDF5
3636
- `Ascent 0.8.0+ <https://ascent.readthedocs.io>`__: for in situ 3D visualization

Docs/source/usage/parameters.rst

+7-7
Original file line numberDiff line numberDiff line change
@@ -2780,18 +2780,18 @@ In-situ capabilities can be used by turning on Sensei or Ascent (provided they a
27802780
When WarpX is compiled with openPMD support, the first available backend in the order given above is taken.
27812781

27822782
* ``<diag_name>.openpmd_encoding`` (optional, ``v`` (variable based), ``f`` (file based) or ``g`` (group based) ) only read if ``<diag_name>.format = openpmd``.
2783-
openPMD `file output encoding <https://openpmd-api.readthedocs.io/en/0.15.2/usage/concepts.html#iteration-and-series>`__.
2783+
openPMD `file output encoding <https://openpmd-api.readthedocs.io/en/0.16.1/usage/concepts.html#iteration-and-series>`__.
27842784
File based: one file per timestep (slower), group/variable based: one file for all steps (faster)).
2785-
``variable based`` is an `experimental feature with ADIOS2 <https://openpmd-api.readthedocs.io/en/0.15.2/backends/adios2.html#experimental-new-adios2-schema>`__ and not supported for back-transformed diagnostics.
2785+
``variable based`` is an `experimental feature with ADIOS2 <https://openpmd-api.readthedocs.io/en/0.16.1/backends/adios2.html#experimental-new-adios2-schema>`__ and not supported for back-transformed diagnostics.
27862786
Default: ``f`` (full diagnostics)
27872787

27882788
* ``<diag_name>.adios2_operator.type`` (``zfp``, ``blosc``) optional,
2789-
`ADIOS2 I/O operator type <https://openpmd-api.readthedocs.io/en/0.15.2/details/backendconfig.html#adios2>`__ for `openPMD <https://www.openPMD.org>`_ data dumps.
2789+
`ADIOS2 I/O operator type <https://openpmd-api.readthedocs.io/en/0.16.1/details/backendconfig.html#adios2>`__ for `openPMD <https://www.openPMD.org>`_ data dumps.
27902790

27912791
* ``<diag_name>.adios2_operator.parameters.*`` optional,
2792-
`ADIOS2 I/O operator parameters <https://openpmd-api.readthedocs.io/en/0.15.2/details/backendconfig.html#adios2>`__ for `openPMD <https://www.openPMD.org>`_ data dumps.
2792+
`ADIOS2 I/O operator parameters <https://openpmd-api.readthedocs.io/en/0.16.1/details/backendconfig.html#adios2>`__ for `openPMD <https://www.openPMD.org>`_ data dumps.
27932793

2794-
A typical example for `ADIOS2 output using lossless compression <https://openpmd-api.readthedocs.io/en/0.15.2/details/backendconfig.html#adios2>`__ with ``blosc`` using the ``zstd`` compressor and 6 CPU treads per MPI Rank (e.g. for a `GPU run with spare CPU resources <https://arxiv.org/abs/1706.00522>`__):
2794+
A typical example for `ADIOS2 output using lossless compression <https://openpmd-api.readthedocs.io/en/0.16.1/details/backendconfig.html#adios2>`__ with ``blosc`` using the ``zstd`` compressor and 6 CPU treads per MPI Rank (e.g. for a `GPU run with spare CPU resources <https://arxiv.org/abs/1706.00522>`__):
27952795

27962796
.. code-block:: text
27972797
@@ -2810,11 +2810,11 @@ In-situ capabilities can be used by turning on Sensei or Ascent (provided they a
28102810
<diag_name>.adios2_operator.parameters.precision = 3
28112811
28122812
* ``<diag_name>.adios2_engine.type`` (``bp4``, ``sst``, ``ssc``, ``dataman``) optional,
2813-
`ADIOS2 Engine type <https://openpmd-api.readthedocs.io/en/0.15.2/details/backendconfig.html#adios2>`__ for `openPMD <https://www.openPMD.org>`_ data dumps.
2813+
`ADIOS2 Engine type <https://openpmd-api.readthedocs.io/en/0.16.1/details/backendconfig.html#adios2>`__ for `openPMD <https://www.openPMD.org>`_ data dumps.
28142814
See full list of engines at `ADIOS2 readthedocs <https://adios2.readthedocs.io/en/latest/engines/engines.html>`__
28152815

28162816
* ``<diag_name>.adios2_engine.parameters.*`` optional,
2817-
`ADIOS2 Engine parameters <https://openpmd-api.readthedocs.io/en/0.15.2/details/backendconfig.html#adios2>`__ for `openPMD <https://www.openPMD.org>`_ data dumps.
2817+
`ADIOS2 Engine parameters <https://openpmd-api.readthedocs.io/en/0.16.1/details/backendconfig.html#adios2>`__ for `openPMD <https://www.openPMD.org>`_ data dumps.
28182818

28192819
An example for parameters for the BP engine are setting the number of writers (``NumAggregators``), transparently redirecting data to burst buffers etc.
28202820
A detailed list of engine-specific parameters are available at the official `ADIOS2 documentation <https://adios2.readthedocs.io/en/latest/engines/engines.html>`__

Source/Diagnostics/requirements.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@
55
# License: BSD-3-Clause-LBNL
66

77
# keep this entry for GitHub's dependency graph
8-
openPMD-api>=0.15.1
8+
openPMD-api>=0.16.1

Source/Make.WarpX

+1-1
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ endif
151151

152152
ifeq ($(USE_OPENPMD), TRUE)
153153
# try pkg-config query
154-
ifeq (0, $(shell pkg-config "openPMD >= 0.15.1"; echo $$?))
154+
ifeq (0, $(shell pkg-config "openPMD >= 0.16.1"; echo $$?))
155155
CXXFLAGS += $(shell pkg-config --cflags openPMD)
156156
LIBRARY_LOCATIONS += $(shell pkg-config --variable=libdir openPMD)
157157
libraries += $(shell pkg-config --libs-only-l openPMD)

Tools/machines/karolina-it4i/spack-karolina-cuda.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ spack:
2020
- py-cython
2121
- py-mpi4py
2222
- py-numpy@1.24.2
23-
- openpmd-api@0.15.2 +python
23+
- openpmd-api@0.16.1 +python
2424
- py-periodictable@1.5.0
2525
- py-h5py
2626
# optional

cmake/dependencies/openPMD.cmake

+3-3
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ function(find_openpmd)
1313
if(WarpX_openpmd_internal OR WarpX_openpmd_src)
1414
set(CMAKE_POLICY_DEFAULT_CMP0077 NEW)
1515

16-
# see https://openpmd-api.readthedocs.io/en/0.15.2/dev/buildoptions.html
16+
# see https://openpmd-api.readthedocs.io/en/0.16.1/dev/buildoptions.html
1717
set(openPMD_USE_ADIOS1 OFF CACHE INTERNAL "")
1818
set(openPMD_USE_MPI ${WarpX_MPI} CACHE INTERNAL "")
1919
set(openPMD_USE_PYTHON OFF CACHE INTERNAL "")
@@ -71,7 +71,7 @@ function(find_openpmd)
7171
else()
7272
set(COMPONENT_WMPI NOMPI)
7373
endif()
74-
find_package(openPMD 0.15.1 CONFIG REQUIRED COMPONENTS ${COMPONENT_WMPI})
74+
find_package(openPMD 0.16.1 CONFIG REQUIRED COMPONENTS ${COMPONENT_WMPI})
7575
message(STATUS "openPMD-api: Found version '${openPMD_VERSION}'")
7676
endif()
7777
endfunction()
@@ -87,7 +87,7 @@ if(WarpX_OPENPMD)
8787
set(WarpX_openpmd_repo "https://github.com/openPMD/openPMD-api.git"
8888
CACHE STRING
8989
"Repository URI to pull and build openPMD-api from if(WarpX_openpmd_internal)")
90-
set(WarpX_openpmd_branch "0.15.2"
90+
set(WarpX_openpmd_branch "0.16.1"
9191
CACHE STRING
9292
"Repository branch for WarpX_openpmd_repo if(WarpX_openpmd_internal)")
9393

setup.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -318,7 +318,7 @@ def build_extension(self, ext):
318318
# },
319319
extras_require={
320320
"all": [
321-
"openPMD-api~=0.15.1",
321+
"openPMD-api>=0.16.1",
322322
"openPMD-viewer~=1.1",
323323
"yt>=4.1.0",
324324
"matplotlib",

0 commit comments

Comments
 (0)