From laptops to supercomputers: a single highly scalable code base for spiking neuronal network simulations
© Kunkel et al; licensee BioMed Central Ltd. 2013
Published: 8 July 2013
Over the last couple of years, supercomputers such as the Blue Gene/Q system JUQUEEN in Jülich and the K computer in Kobe have become available for neuroscience research. These massively parallel systems open the field for a new class of scientific questions as they provide the resources to represent and simulate brain-scale networks, but they also confront the developers of simulation software with a new class of problems. Initial tests with our neuronal network simulator NEST  on JUGENE (the predecessor of JUQUEEN) revealed that in order to exploit the memory capacities of such machines, we needed to improve the parallelization of the fundamental data structures. To address this, we developed an analytical framework , which serves as a guideline for a systematic and iterative restructuring of the simulation kernel. In December 2012, the 3rd generation technology was released with NEST 2.2, which enables simulations of 108 neurons and 10,000 synapses per neuron on the K computer .
Even though the redesign of the fundamental data structures of NEST is driven by the demand for simulations of interacting brain areas, we do not aim at solutions tailored to a specific brain-scale model or computing architecture. Our goal is to maintain a single highly scalable code base that meets the requirements of such simulations whilst still performing well on modestly dimensioned lab clusters and even laptops.
Here, we introduce the 4th generation simulation kernel and describe the development workflow that yielded the following three major improvements: the self-collapsing connection infrastructure, which takes up significantly less memory in the case of few local targets, the compacted node infrastructure, which causes only negligible constant serial memory overhead, and the reduced memory usage of synapse objects, which does not affect the precision of synaptic state variables. The improved code does not compromise on the general usability of NEST and will be merged into the common code base to be released with NEST 2.4. We show that with the 4g technology it will be possible to simulate networks of 109 neurons and 10,000 synapses per neuron on the K computer.
Partly supported by the early access to the K computer at the RIKEN Advanced Institute for Computational Science, by the VSR computation time grant JINB33 on the JUGENE and JUQUEEN supercomputers in Jülich, the Alliance on Systems Biology, Initiative and Networking Fund and Portfolio theme SMHB of the Helmholtz Association, the Jülich-Aachen Research Alliance (JARA), the Next-Generation Supercomputer Project of MEXT, EU Grant 269921 (BrainScaleS), Research Council of Norway Grant 178892/V30 (eNeuro) and access to NOTUR supercomputing facilities. All network simulations carried out with NEST (http://www.nest-initiative.org).
- Gewaltig MO, Diesmann M: NEST (NEural Simulation Tool). Scholarpedia. 2007, 2 (4): 1430-10.4249/scholarpedia.1430.View ArticleGoogle Scholar
- Kunkel S, Potjans TC, Eppler JE, Plesser HE, Morrison A, Diesmann M: Meeting the memory challenges of brain-scale simulation. Front Neuroinform. 2012, 5: 35-PubMed CentralView ArticlePubMedGoogle Scholar
- Helias M, Kunkel S, Masumoto G, Igarashi J, Eppler JE, Ishii S, Fukai T, Morrison A, Diesmann M: Supercomputers ready for use as discovery machines for neuroscience. Front Neuroinform. 2012, 6: 26-PubMed CentralView ArticlePubMedGoogle Scholar
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.