EDEN: A high-performance, general-purpose, NeuroML-based neural simulator
Sotirios Panagiotou, Harry Sidiropoulos, Mario Negrello, Dimitrios, Soudris, Christos Strydis

TL;DR
EDEN is a NeuroML-based neural simulator that combines high flexibility with exceptional computational performance, enabling efficient large-scale neural network simulations without requiring users to learn new languages.
Contribution
The paper introduces EDEN, a novel neural simulator that achieves high performance and flexibility by integrating model analysis and code-generation techniques, directly supporting NeuroML v2.
Findings
EDEN runs NeuroML models directly, eliminating the need for additional languages.
EDEN achieves up to 100 times faster performance than NEURON on standard hardware.
EDEN scales seamlessly over multiple CPUs and clusters without extra user effort.
Abstract
Modern neuroscience employs in silico experimentation on ever-increasing and more detailed neural networks. The high modelling detail goes hand in hand with the need for high model reproducibility, reusability and transparency. Besides, the size of the models and the long timescales under study mandate the use of a simulation system with high computational performance, so as to provide an acceptable time to result. In this work, we present EDEN (Extensible Dynamics Engine for Networks), a new general-purpose, NeuroML-based neural simulator that achieves both high model flexibility and high computational performance, through an innovative model-analysis and code-generation technique. The simulator runs NeuroML v2 models directly, eliminating the need for users to learn yet another simulator-specific, model-specification language. EDEN's functional correctness and computational…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
