CoreNEURON : An Optimized Compute Engine for the NEURON Simulator
The NEURON simulator has been developed over the past three decades and is widely used by neuroscientists to model the electrical activity of neuronal networks. Large network simulation projects using NEURON have supercomputer allocations that individually measure in the millions of core hours. Supe...
Main Authors: | , , , , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
Frontiers Media S.A.
2019-09-01
|
Series: | Frontiers in Neuroinformatics |
Subjects: | |
Online Access: | https://www.frontiersin.org/article/10.3389/fninf.2019.00063/full |
id |
doaj-98ec45ccc4d74e37a387fecc37dbbf56 |
---|---|
record_format |
Article |
spelling |
doaj-98ec45ccc4d74e37a387fecc37dbbf562020-11-25T02:35:13ZengFrontiers Media S.A.Frontiers in Neuroinformatics1662-51962019-09-011310.3389/fninf.2019.00063476073CoreNEURON : An Optimized Compute Engine for the NEURON SimulatorPramod Kumbhar0Michael Hines1Jeremy Fouriaux2Aleksandr Ovcharenko3James King4Fabien Delalondre5Felix Schürmann6Blue Brain Project, École Polytechnique Fédérale de Lausanne (EPFL), Geneva, SwitzerlandDepartment of Neuroscience, Yale University, New Haven, CT, United StatesBlue Brain Project, École Polytechnique Fédérale de Lausanne (EPFL), Geneva, SwitzerlandBlue Brain Project, École Polytechnique Fédérale de Lausanne (EPFL), Geneva, SwitzerlandBlue Brain Project, École Polytechnique Fédérale de Lausanne (EPFL), Geneva, SwitzerlandBlue Brain Project, École Polytechnique Fédérale de Lausanne (EPFL), Geneva, SwitzerlandBlue Brain Project, École Polytechnique Fédérale de Lausanne (EPFL), Geneva, SwitzerlandThe NEURON simulator has been developed over the past three decades and is widely used by neuroscientists to model the electrical activity of neuronal networks. Large network simulation projects using NEURON have supercomputer allocations that individually measure in the millions of core hours. Supercomputer centers are transitioning to next generation architectures and the work accomplished per core hour for these simulations could be improved by an order of magnitude if NEURON was able to better utilize those new hardware capabilities. In order to adapt NEURON to evolving computer architectures, the compute engine of the NEURON simulator has been extracted and has been optimized as a library called CoreNEURON. This paper presents the design, implementation, and optimizations of CoreNEURON. We describe how CoreNEURON can be used as a library with NEURON and then compare performance of different network models on multiple architectures including IBM BlueGene/Q, Intel Skylake, Intel MIC and NVIDIA GPU. We show how CoreNEURON can simulate existing NEURON network models with 4–7x less memory usage and 2–7x less execution time while maintaining binary result compatibility with NEURON.https://www.frontiersin.org/article/10.3389/fninf.2019.00063/fullNEURONsimulationneuronal networkssupercomputingperformance optimization |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Pramod Kumbhar Michael Hines Jeremy Fouriaux Aleksandr Ovcharenko James King Fabien Delalondre Felix Schürmann |
spellingShingle |
Pramod Kumbhar Michael Hines Jeremy Fouriaux Aleksandr Ovcharenko James King Fabien Delalondre Felix Schürmann CoreNEURON : An Optimized Compute Engine for the NEURON Simulator Frontiers in Neuroinformatics NEURON simulation neuronal networks supercomputing performance optimization |
author_facet |
Pramod Kumbhar Michael Hines Jeremy Fouriaux Aleksandr Ovcharenko James King Fabien Delalondre Felix Schürmann |
author_sort |
Pramod Kumbhar |
title |
CoreNEURON : An Optimized Compute Engine for the NEURON Simulator |
title_short |
CoreNEURON : An Optimized Compute Engine for the NEURON Simulator |
title_full |
CoreNEURON : An Optimized Compute Engine for the NEURON Simulator |
title_fullStr |
CoreNEURON : An Optimized Compute Engine for the NEURON Simulator |
title_full_unstemmed |
CoreNEURON : An Optimized Compute Engine for the NEURON Simulator |
title_sort |
coreneuron : an optimized compute engine for the neuron simulator |
publisher |
Frontiers Media S.A. |
series |
Frontiers in Neuroinformatics |
issn |
1662-5196 |
publishDate |
2019-09-01 |
description |
The NEURON simulator has been developed over the past three decades and is widely used by neuroscientists to model the electrical activity of neuronal networks. Large network simulation projects using NEURON have supercomputer allocations that individually measure in the millions of core hours. Supercomputer centers are transitioning to next generation architectures and the work accomplished per core hour for these simulations could be improved by an order of magnitude if NEURON was able to better utilize those new hardware capabilities. In order to adapt NEURON to evolving computer architectures, the compute engine of the NEURON simulator has been extracted and has been optimized as a library called CoreNEURON. This paper presents the design, implementation, and optimizations of CoreNEURON. We describe how CoreNEURON can be used as a library with NEURON and then compare performance of different network models on multiple architectures including IBM BlueGene/Q, Intel Skylake, Intel MIC and NVIDIA GPU. We show how CoreNEURON can simulate existing NEURON network models with 4–7x less memory usage and 2–7x less execution time while maintaining binary result compatibility with NEURON. |
topic |
NEURON simulation neuronal networks supercomputing performance optimization |
url |
https://www.frontiersin.org/article/10.3389/fninf.2019.00063/full |
work_keys_str_mv |
AT pramodkumbhar coreneuronanoptimizedcomputeenginefortheneuronsimulator AT michaelhines coreneuronanoptimizedcomputeenginefortheneuronsimulator AT jeremyfouriaux coreneuronanoptimizedcomputeenginefortheneuronsimulator AT aleksandrovcharenko coreneuronanoptimizedcomputeenginefortheneuronsimulator AT jamesking coreneuronanoptimizedcomputeenginefortheneuronsimulator AT fabiendelalondre coreneuronanoptimizedcomputeenginefortheneuronsimulator AT felixschurmann coreneuronanoptimizedcomputeenginefortheneuronsimulator |
_version_ |
1724804622243069952 |