, Volume 8, Issue 3, pp 183–196

Code Generation: A Strategy for Neural Network Simulators


DOI: 10.1007/s12021-010-9082-x

Cite this article as:
Goodman, D.F.M. Neuroinform (2010) 8: 183. doi:10.1007/s12021-010-9082-x


We demonstrate a technique for the design of neural network simulation software, runtime code generation. This technique can be used to give the user complete flexibility in specifying the mathematical model for their simulation in a high level way, along with the speed of code written in a low level language such as C+ +. It can also be used to write code only once but target different hardware platforms, including inexpensive high performance graphics processing units (GPUs). Code generation can be naturally combined with computer algebra systems to provide further simplification and optimisation of the generated code. The technique is quite general and could be applied to any simulation package. We demonstrate it with the ‘Brian’ simulator (


Code generation Spiking neural networks Simulation Graphics processing units Computer algebra systems Numerical integration Python C+ + 

Copyright information

© Springer Science+Business Media, LLC 2010

Authors and Affiliations

  1. 1.Laboratoire Psychologie de la Perception, CNRSUniversité Paris DescartesParisFrance
  2. 2.Département d’Etudes CognitivesEcole Normale SupérieureParisFrance

Personalised recommendations