Skip to content

Commit

Permalink
Merge pull request #3244 from jessica-mitchell/add-benchmark-docs
Browse files Browse the repository at this point in the history
Add benchmark results to docs
  • Loading branch information
jessica-mitchell authored Jul 22, 2024
2 parents 0fe66e6 + 33be2dc commit 0d0b0a8
Show file tree
Hide file tree
Showing 7 changed files with 119 additions and 2 deletions.
106 changes: 106 additions & 0 deletions doc/htmldoc/benchmark_results.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
.. _nest_benchmark_results:

NEST performance benchmarks
===========================


NEST performance is continuously monitored and improved across various network sizes.
Here we show benchmarking results for NEST version 3.8 on Jureca-DC.


Strong scaling experiment of the Microcircuit model [1]_
---------------------------------------------------------

.. grid:: 1 1 1 1

.. grid-item::
:columns: 10
:class: sd-align-major-center

.. image:: /static/img/mc_benchmark.png

.. grid:: 1 1 1 1

.. grid-item::
:columns: 10
:class: sd-align-minor-center


* The model has ~80 000 neurons and ~300 million synapses
* Increasing number of computing resources decrease simulation time
* The model runs faster than real time




Strong scaling experiment of the Multi-area-model [2]_
-------------------------------------------------------

.. grid:: 1 1 1 1

.. grid-item::
:class: sd-align-major-center
:columns: 10

.. image:: /static/img/mam_benchmark.png


.. grid:: 1 1 1 1

.. grid-item::
:columns: 10
:class: sd-align-minor-center

* The model has ~4.1 million neurons and ~24 billion synapses
* Steady decrease of run time with additional compute resources




Weak scaling experiment of the HPC benchmark model [3]_
--------------------------------------------------------

.. grid:: 1 1 1 1

.. grid-item::
:columns: 10
:class: sd-align-major-center

.. image:: /static/img/hpc_benchmark.png


.. grid:: 1 1 1 1

.. grid-item::
:columns: 10
:class: sd-align-minor-center


* The size of network scales proportionally with the computational resources used
* Largest network size in this diagram: ~5.8 million neurons and ~65 billion synapses
* The figure shows that NEST can handle massive networks and simulate them efficiently


.. seealso::

Example networks:

* :doc:`/auto_examples/Potjans_2014/index`
* `Multi-area model <https://inm-6.github.io/multi-area-model/>`_
* :doc:`/auto_examples/hpc_benchmark`

References
----------

.. [1] Potjans TC. and Diesmann M. 2014. The cell-type specific cortical
microcircuit: relating structure and activity in a full-scale spiking
network model. Cerebral Cortex. 24(3):785–806. DOI: `10.1093/cercor/bhs358 <https://doi.org/10.1093/cercor/bhs358>`__.
.. [2] Schmidt M, Bakker R, Hilgetag CC, Diesmann M and van Albada SJ. 2018. Multi-scale
account of the network structure of macaque visual cortex. Brain Structure
and Function. 223: 1409 https://doi.org/10.1007/s00429-017-1554-4
.. [3] Jordan J, Ippen T, Helias M, Kitayama I, Sato M, Igarashi J, Diesmann M, Kunkel S. 2018.
Extremely scalable spiking neuronal network simulation code: From laptops to exacale computers.
Frontiers in Neuroinformatics. 12. https://www.frontiersin.org/journals/neuroinformatics/articles/10.3389/fninf.2018.00002
6 changes: 6 additions & 0 deletions doc/htmldoc/hpc/benchmarking.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@ Benchmarking NEST

When compiling NEST to perform benchmarks, see :ref:`our cmake options <performance_cmake>` for improved performance and energy saving.

NEST performance
~~~~~~~~~~~~~~~~

We regulary test NEST performance at various network sizes.
For results of these experiments see our :ref:`nest_benchmark_results` page.

beNNch
~~~~~~

Expand Down
8 changes: 6 additions & 2 deletions doc/htmldoc/hpc/optimizing_nest.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ hardware and software of the HPC system you are using for improving the overall
performance.


Although there will be some variation between scripts and HPC systems, in general, we recommend that
Although there will be some variation between scripts and HPC systems, in general, we recommend that

* resources are fully utilized (e.g., all available cores are used).
* one thread pinned to one core (no simultaneous multithreading)
Expand Down Expand Up @@ -59,7 +59,11 @@ Although there will be some variation between scripts and HPC systems, in genera

.. seealso::

See our other guides on
See our other guides on

* :ref:`parallel_computing`
* :ref:`benchmark`

or see our performance results:

* :ref:`nest_benchmark_results`
1 change: 1 addition & 0 deletions doc/htmldoc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,7 @@ How NEST works --- The Big Picture
Models <models/index>
Python API <ref_material/pynest_api/index>
ref_material/glossary
benchmark_results
Cite NEST <citing-nest>
License <license>

Expand Down
Binary file added doc/htmldoc/static/img/hpc_benchmark.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/htmldoc/static/img/mam_benchmark.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/htmldoc/static/img/mc_benchmark.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 0d0b0a8

Please sign in to comment.