Skip to content

Commit

Permalink
Merge pull request #3 from ComputationalRadiationPhysics/dev
Browse files Browse the repository at this point in the history
Dev
  • Loading branch information
Anton-Le authored Feb 9, 2021
2 parents 8407532 + d2cfb8f commit d0399b8
Show file tree
Hide file tree
Showing 1,433 changed files with 6,408 additions and 1,930 deletions.
2 changes: 1 addition & 1 deletion .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ pull-request-validation:
# "examples/KelvinHelmholtz" compile all cases within one gitlab job
generate-reduced-matrix:
variables:
PIC_INPUTS: "examples tests"
PIC_INPUTS: "examples tests benchmarks"
TEST_TUPLE_NUM_ELEM: 1
extends: ".base_generate-reduced-matrix"

Expand Down
2 changes: 1 addition & 1 deletion INSTALL.rst
Original file line number Diff line number Diff line change
Expand Up @@ -328,7 +328,7 @@ ADIOS

openPMD API
"""""""""""
- 0.12.0+ (yet to be released, requires *MPI*)
- 0.12.0+ (bare minimum) / 0.13.0+ (for streaming IO)
- *Spack*: ``spack install openpmd-api``
- *from source:*

Expand Down
9 changes: 8 additions & 1 deletion USAGE.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,14 @@

.. seealso::

You need to have an :ref:`environment loaded <install-profile>` (``source $HOME/picongpu.profile``) that provides all :ref:`PIConGPU dependencies <install-dependencies>` to complete this chapter.
You need to have an :ref:`environment loaded <install-profile>` (``source $HOME/picongpu.profile`` when installing from source or ``spack load picongpu`` when using spack) that provides all :ref:`PIConGPU dependencies <install-dependencies>` to complete this chapter.

.. warning::

PIConGPU source code is portable and can be compiled on all major operating systems.
However, helper tools like ``pic-create`` and ``pic-build`` described in this section rely on Linux utilities and thus are not expected to work on other platforms out-of-the-box.
Note that building and using PIConGPU on other operating systems is still possible but has to be done manually or with custom tools.
This case is not covered in the documentation, but we can assist users with it when needed.

Basics
======
Expand Down
2 changes: 1 addition & 1 deletion bin/cuda_memtest.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Rene Widera
# Copyright 2013-2021 Rene Widera
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion bin/egetopt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2014-2020 Rene Widera
# Copyright 2014-2021 Rene Widera
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion bin/pic-build
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2017-2020 Axel Huebl
# Copyright 2017-2021 Axel Huebl
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion bin/pic-compile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl, Rene Widera
# Copyright 2013-2021 Axel Huebl, Rene Widera
#
# This file is part of PIConGPU.
#
Expand Down
10 changes: 5 additions & 5 deletions bin/pic-configure
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl, Rene Widera
# Copyright 2013-2021 Axel Huebl, Rene Widera
#
# This file is part of PIConGPU.
#
Expand Down Expand Up @@ -64,22 +64,22 @@ get_backend_flags()
result+=" -DALPAKA_CUDA_ARCH=\"${backend_cfg[1]}\""
fi
elif [ "${backend_cfg[0]}" == "omp2b" ] ; then
result+=" -DALPAKA_ACC_CPU_B_OMP2_T_SEQ_ENABLE=ON"
result+=" -DALPAKA_ACC_CPU_B_OMP2_T_SEQ_ENABLE=ON -DCUPLA_STREAM_ASYNC_ENABLE=OFF"
if [ $num_options -eq 2 ] ; then
result+=" -DPMACC_CPU_ARCH=\"${backend_cfg[1]}\""
fi
elif [ "${backend_cfg[0]}" == "serial" ] ; then
result+=" -DALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLE=ON"
result+=" -DALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLE=ON -DCUPLA_STREAM_ASYNC_ENABLE=OFF"
if [ $num_options -eq 2 ] ; then
result+=" -DPMACC_CPU_ARCH=\"${backend_cfg[1]}\""
fi
elif [ "${backend_cfg[0]}" == "tbb" ] ; then
result+=" -DALPAKA_ACC_CPU_B_TBB_T_SEQ_ENABLE=ON"
result+=" -DALPAKA_ACC_CPU_B_TBB_T_SEQ_ENABLE=ON -DCUPLA_STREAM_ASYNC_ENABLE=OFF"
if [ $num_options -eq 2 ] ; then
result+=" -DPMACC_CPU_ARCH=\"${backend_cfg[1]}\""
fi
elif [ "${backend_cfg[0]}" == "threads" ] ; then
result+=" -DALPAKA_ACC_CPU_B_SEQ_T_THREADS_ENABLE=ON"
result+=" -DALPAKA_ACC_CPU_B_SEQ_T_THREADS_ENABLE=ON -DCUPLA_STREAM_ASYNC_ENABLE=OFF"
if [ $num_options -eq 2 ] ; then
result+=" -DPMACC_CPU_ARCH=\"${backend_cfg[1]}\""
fi
Expand Down
2 changes: 1 addition & 1 deletion bin/pic-create
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl, Rene Widera
# Copyright 2013-2021 Axel Huebl, Rene Widera
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion bin/pic-edit
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2017-2020 Axel Huebl
# Copyright 2017-2021 Axel Huebl
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion bin/tbg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl, Rene Widera, Richard Pausch
# Copyright 2013-2021 Axel Huebl, Rene Widera, Richard Pausch
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion buildsystem/CompileSuite/autoTests/config.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl
# Copyright 2013-2021 Axel Huebl
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion buildsystem/CompileSuite/autoTests/get_work.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl
# Copyright 2013-2021 Axel Huebl
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion buildsystem/CompileSuite/autoTests/new_commits.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl
# Copyright 2013-2021 Axel Huebl
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion buildsystem/CompileSuite/autoTests/report.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl
# Copyright 2013-2021 Axel Huebl
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion buildsystem/CompileSuite/color.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl, Rene Widera
# Copyright 2013-2021 Axel Huebl, Rene Widera
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion buildsystem/CompileSuite/compileSet.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl
# Copyright 2013-2021 Axel Huebl
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion buildsystem/CompileSuite/exec_helper.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl
# Copyright 2013-2021 Axel Huebl
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion buildsystem/CompileSuite/help.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl
# Copyright 2013-2021 Axel Huebl
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion buildsystem/CompileSuite/options.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl
# Copyright 2013-2021 Axel Huebl
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion buildsystem/CompileSuite/path.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2013-2020 Axel Huebl
# Copyright 2013-2021 Axel Huebl
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion docs/TBG_macros.cfg
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright 2014-2020 Felix Schmitt, Axel Huebl, Richard Pausch, Heiko Burau,
# Copyright 2014-2021 Felix Schmitt, Axel Huebl, Richard Pausch, Heiko Burau,
# Franz Poeschel
#
# This file is part of PIConGPU.
Expand Down
2 changes: 1 addition & 1 deletion docs/propose_changelog.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python
#
# Copyright 2017-2020 Axel Huebl
# Copyright 2017-2021 Axel Huebl
#
# License: GPLv3+
#
Expand Down
6 changes: 3 additions & 3 deletions docs/source/dev/picongpu.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ Important PIConGPU Classes

This is very, very small selection of classes of interest to get you started.

MySimulation
------------
Simulation
----------

.. doxygenclass:: picongpu::MySimulation
.. doxygenclass:: picongpu::Simulation
:project: PIConGPU
:members:
:undoc-members:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
"""Ionization prediction module and example.
This file is part of the PIConGPU.
Copyright 2019-2020 PIConGPU contributors
Copyright 2019-2021 PIConGPU contributors
Authors: Marco Garten
License: GPLv3+
"""
Expand Down
10 changes: 7 additions & 3 deletions docs/source/usage/plugins/openPMD.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ External Dependencies
^^^^^^^^^^^^^^^^^^^^^

The plugin is available as soon as the :ref:`openPMD API <install-dependencies>` is compiled in.
If the openPMD API is found in version 0.13.0 or greater, PIConGPU will support streaming IO via openPMD.

.param file
^^^^^^^^^^^
Expand Down Expand Up @@ -40,15 +41,18 @@ The openPMD API will parse the file name to decide the chosen backend and iterat
In order to set defaults for these value, two further options control the filename:

* ``--openPMD.ext`` sets the filename extension.
Possible extensions include ``.bp`` for the ADIOS backends (default).
Possible extensions include ``bp`` for the ADIOS backends (default), ``h5`` for HDF5 and ``sst`` for Streaming via ADIOS2/SST.
If the openPMD API has been built with support for the ADIOS1 and ADIOS2 backends, ADIOS2 will take precedence over ADIOS1.
This behavior can be overridden by setting the environment variable ``OPENPMD_BP_BACKEND=ADIOS1``.
The extension for the HDF5 backend is ``.h5``.
(The version of ADIOS will depend on the compile-time configuration of the openPMD API.)
* ``--openPMD.infix`` sets the filename pattern that controls the iteration layout, default is "_06T" for a six-digit number specifying the iteration.
Leave empty to pick group-based iteration layout.
Since passing an empty string may be tricky in some workflows, specifying ``--openPMD.infix=NULL`` is also possible.

Note that streaming IO requires group-based iteration layout in openPMD, i.e. ``--openPMD.infix=NULL`` is mandatory.
If PIConGPU detects a streaming backend (e.g. by ``--openPMD.ext=sst``), it will automatically set ``--openPMD.infix=NULL``, overriding the user's choice.
Note however that the ADIOS2 backend can also be selected via ``--openPMD.json`` and via environment variables which PIConGPU does not check.
It is hence recommended to set ``--openPMD.infix=NULL`` explicitly.

For example, ``--openPMD.period 128 --openPMD.file simData --openPMD.source 'species_all'`` will write only the particle species data to files of the form ``simData_000000.bp``, ``simData_000128.bp`` in the default simulation output directory every 128 steps.
Note that this plugin will only be available if the openPMD API is found during compile configuration.

Expand Down
2 changes: 1 addition & 1 deletion docs/source/usage/workflows/memoryPerDevice.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"""
This file is part of PIConGPU.
Copyright 2018-2020 PIConGPU contributors
Copyright 2018-2021 PIConGPU contributors
Authors: Marco Garten, Pawel Ordyna
License: GPLv3+
"""
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/aris-grnet/gpu.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Richard Pausch, Rene Widera, Sergei Bastrakov,
# Copyright 2013-2021 Axel Huebl, Richard Pausch, Rene Widera, Sergei Bastrakov,
# Jian Fuh Ong
#
# This file is part of PIConGPU.
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/bash/mpiexec.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Anton Helm, Rene Widera
# Copyright 2013-2021 Axel Huebl, Anton Helm, Rene Widera
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/bash/mpirun.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Anton Helm, Rene Widera
# Copyright 2013-2021 Axel Huebl, Anton Helm, Rene Widera
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/cori-nersc/knl.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Richard Pausch, Alexander Matthes
# Copyright 2013-2021 Axel Huebl, Richard Pausch, Alexander Matthes
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/cpuNumaStarter.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2017-2020 Rene Widera, Alexander Matthes
# Copyright 2017-2021 Rene Widera, Alexander Matthes
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/davide-cineca/gpu.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Richard Pausch, Rene Widera
# Copyright 2013-2021 Axel Huebl, Richard Pausch, Rene Widera
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/davinci-rice/picongpu.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Rene Widera, Richard Pausch
# Copyright 2013-2021 Axel Huebl, Rene Widera, Richard Pausch
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/draco-mpcdf/general.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Richard Pausch, Rene Widera
# Copyright 2013-2021 Axel Huebl, Richard Pausch, Rene Widera
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/hemera-hzdr/defq.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Richard Pausch, Rene Widera
# Copyright 2013-2021 Axel Huebl, Richard Pausch, Rene Widera
#
# This file is part of PIConGPU.
#
Expand Down
1 change: 0 additions & 1 deletion etc/picongpu/hemera-hzdr/defq_picongpu.profile.example
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ module load adios/1.13.1
module load hdf5-parallel/1.8.20
module load libsplash/1.7.0
module load python/3.6.5
module load openpmd/0.11.1

module load libpng/1.6.35
module load pngwriter/0.7.0
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/hemera-hzdr/fwkt_v100.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Richard Pausch, Rene Widera,
# Copyright 2013-2021 Axel Huebl, Richard Pausch, Rene Widera,
# Marco Garten, Alexander Debus
#
# This file is part of PIConGPU.
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/hemera-hzdr/gpu.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Richard Pausch, Rene Widera, Marco Garten
# Copyright 2013-2021 Axel Huebl, Richard Pausch, Rene Widera, Marco Garten
#
# This file is part of PIConGPU.
#
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/hemera-hzdr/k20.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Anton Helm, Richard Pausch, Rene Widera,
# Copyright 2013-2021 Axel Huebl, Anton Helm, Richard Pausch, Rene Widera,
# Marco Garten
#
# This file is part of PIConGPU.
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/hemera-hzdr/k20_restart.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Anton Helm, Rene Widera, Richard Pausch,
# Copyright 2013-2021 Axel Huebl, Anton Helm, Rene Widera, Richard Pausch,
# Bifeng Lei, Marco Garten
#
# This file is part of PIConGPU.
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/hemera-hzdr/k80.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Anton Helm, Richard Pausch, Rene Widera,
# Copyright 2013-2021 Axel Huebl, Anton Helm, Richard Pausch, Rene Widera,
# Marco Garten
#
# This file is part of PIConGPU.
Expand Down
2 changes: 1 addition & 1 deletion etc/picongpu/hemera-hzdr/k80_restart.tpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Copyright 2013-2020 Axel Huebl, Anton Helm, Rene Widera, Richard Pausch,
# Copyright 2013-2021 Axel Huebl, Anton Helm, Rene Widera, Richard Pausch,
# Bifeng Lei, Marco Garten
#
# This file is part of PIConGPU.
Expand Down
Loading

0 comments on commit d0399b8

Please sign in to comment.