Skip to content

Commit

Permalink
prepare 5.0
Browse files Browse the repository at this point in the history
  • Loading branch information
Frederic Perez committed Nov 6, 2023
1 parent f742eeb commit df2bb7a
Show file tree
Hide file tree
Showing 6 changed files with 36 additions and 32 deletions.
15 changes: 0 additions & 15 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ install:
stage: install
only:
- develop
- tentative_merge

script:
# Force workdir cleaning in case of retried
Expand All @@ -34,7 +33,6 @@ compile_default:
stage: compile_default
only:
- develop
- tentative_merge

script:
# Move in test dir
Expand All @@ -46,7 +44,6 @@ runQuick:
stage: run_quick
only:
- develop
- tentative_merge

script:
# Move in test dir
Expand All @@ -58,7 +55,6 @@ run1D:
stage: run_default
only:
- develop
- tentative_merge

script:
# Move in test dir
Expand All @@ -71,7 +67,6 @@ run2D:
stage: run_default
only:
- develop
- tentative_merge

script:
# Move in test dir
Expand All @@ -86,7 +81,6 @@ run3D:
stage: run_default
only:
- develop
- tentative_merge

script:
# Move in test dir
Expand All @@ -102,7 +96,6 @@ runAM:
stage: run_default
only:
- develop
- tentative_merge

script:
# Move in test dir
Expand All @@ -115,7 +108,6 @@ runCollisions:
stage: run_default
only:
- develop
- tentative_merge

script:
# Move in test dir
Expand All @@ -127,7 +119,6 @@ compile_picsar:
stage: compile_picsar
only:
- develop
- tentative_merge

script:
- cd /sps3/gitlab-runner/$CI_PIPELINE_ID/smilei
Expand All @@ -138,7 +129,6 @@ run_picsar:
stage: run_picsar
only:
- develop
- tentative_merge

script:
- cd /sps3/gitlab-runner/$CI_PIPELINE_ID/smilei/validation
Expand All @@ -148,7 +138,6 @@ compile_debug:
stage: compile_debug
only:
- develop
- tentative_merge

script:
- cd /sps3/gitlab-runner/$CI_PIPELINE_ID/smilei
Expand All @@ -159,7 +148,6 @@ compile_no_mpi_threadmultiple:
stage: compile_no_mpi_threadmultiple
only:
- develop
- tentative_merge

script:
- cd /sps3/gitlab-runner/$CI_PIPELINE_ID/smilei
Expand All @@ -170,7 +158,6 @@ compile_no_openmp:
stage: compile_no_openmp
only:
- develop
- tentative_merge

script:
- cd /sps3/gitlab-runner/$CI_PIPELINE_ID/smilei
Expand All @@ -181,7 +168,6 @@ compile_omptasks:
stage: compile_omptasks
only:
- develop
- tentative_merge

script:
- cd /sps3/gitlab-runner/$CI_PIPELINE_ID/smilei
Expand All @@ -192,7 +178,6 @@ run_omptasks:
stage: run_omptasks
only:
- develop
- tentative_merge

script:
- cd /sps3/gitlab-runner/$CI_PIPELINE_ID/smilei/validation
Expand Down
2 changes: 2 additions & 0 deletions doc/Sphinx/Overview/highlights.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ SMILEI can bes tested on recent supercomputers such as Adastra where it shows gr
:width: 12cm
:align: center

----

Mitigation of numerical artifacts with relativistic particles
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The staggering in space and time of the electromagnetic fields and the numerical dispersion of electromagnetic solvers
Expand Down
13 changes: 12 additions & 1 deletion doc/Sphinx/Overview/releases.rst
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,22 @@ Projects

* In preparation:

* GPU support
* Spectral solvers


----

Release 5.0
^^^^^^^^^^^^^^^^^^^^^

* **GPU support** (not all features are supported at the moment)

* Both AMD and Nvidia GPUs
* Cartesian geometry in 2D and in 3D
* Moving Window
* Diagnostics: Field, Probes, Scalar, ParticleBinning, TrackParticles

----

Release 4.8
^^^^^^^^^^^^^^^^^^^^^
Expand Down Expand Up @@ -104,6 +114,7 @@ Release 4.8
* **For developers**: new table management for Monte-Carlo physical processes (transparent to users)

----

Release 4.7
^^^^^^^^^^^^^^^^^^^^^
Expand Down
24 changes: 13 additions & 11 deletions doc/Sphinx/Understand/GPU_offloading.rst
Original file line number Diff line number Diff line change
@@ -1,23 +1,25 @@
GPU offloading
----------------------

In order to be able to be used on most recent supercomputers :program:`Smilei` has been ported on GPUs.
Although a few key features remain to be implemented such as AM geometry, ionization and PML, the fundamentals of the code are currently accelerated on GPUs
if GPUs are available.

Initially built to handle complex graphical output and related to rendering and video games, GPUs appeared only relatively recently in the HPC ecosystem.
To support recent supercomputers, :program:`Smilei` has been ported on GPU (graphical processing units).
Initially built to handle complex graphical output and related to rendering and video games,
GPUs appeared only relatively recently in the HPC ecosystem.
Unlike CPUs, GPUs can do much smaller sets of tasks with massive data throughput.

Currently 7 of the 10 most powerful supercomputers are based on GPU acceleration and everything points to that trend of adding accelerators to continue: The announced exaflopic supercomputers will include GPUs.

Currently 7 of the 10 most powerful supercomputers are based on GPU acceleration and
the trend seems confirmed at least in the near future:
the announced exaflopic supercomputers will include GPUs.

* Guideline using GPU: in general it is better to use one patch per GPU to obtain the best performance out of the GPU
* Guideline: in general it is recommended to use one patch per GPU
to obtain the best performance. However, for better memory management,
testing a few patches per GPU is encouraged.

* Current supported features:
* Currently supported features:

* Both AMD's GPUs and Nvidia's GPUs are supported
* Cartesian geometry in 2D and in 3D
* Diagnostics: field, probe, scalar, bin, particle tracking
* Diagnostics: Field, Probes, Scalar, ParticleBinning, TrackParticles
* Moving Window.

* Notable features currently missing: AM geometry, ionization, PML, envelop
* A few key features remain to be implemented (AM geometry, ionization, PML, envelope,
additional physics), but the fundamentals of the code are ported.
2 changes: 1 addition & 1 deletion doc/Sphinx/Understand/performances.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,4 @@ provide important advantages.
parallelization
SDMD
vectorization

GPU_offloading
12 changes: 8 additions & 4 deletions doc/Sphinx/Use/run.rst
Original file line number Diff line number Diff line change
Expand Up @@ -133,13 +133,17 @@ Running on GPU-equiped nodes
On a supercomputer equipped with GPUs it is necessary to use a binding script.
Here are two examples:

With Nvidia GPUs: srun bind_gpu.sh ./smilei input.py
With Nvidia GPUs:
``srun bind_gpu.sh ./smilei input.py``

With AMD GPUs using cray on Adastra: srun --cpu-bind=none --mem-bind=none --mpi=cray_shasta --kill-on-bad-exit=1 -- ./bind ./smilei input.py
With AMD GPUs using cray on Adastra:
``srun --cpu-bind=none --mem-bind=none --mpi=cray_shasta --kill-on-bad-exit=1 -- ./bind ./smilei input.py``

For the binding scripts themselves, as it depends completely on the node architecture, please contact you admin support team.
For the binding scripts themselves, as it depends completely on the node
architecture, please contact your admin support team.

Be aware that GPU support is in development and not all features are currently available. Please refer to the list of current supported features.
Be aware that GPU support is in development and not all features are currently available.
Please refer to the list of current supported features.

----

Expand Down

0 comments on commit df2bb7a

Please sign in to comment.