SpikeFun - Biological neural network simulator
SpikeFun is a large-scale, biologically-realistic, neural network simulator that runs on a standard Windows PC. It can simulate around 32 thousand neurons and 1.8 million synapses at 0.25x real-time on a normal home computer. On a high-end PC with 350 GB of RAM, a simulation of 16.7 million neurons and 3.52 billion synapses has been achieved, although this was at 0.001x real-time.
The simulation uses neuronal models and algorithms developed by Eugene Izhekevic (Brain Corporation) and Henry Markram (Blue Brain Project). It simulates various types of spiking neurons including cortical pyramidal, spiny stellate, basket, and thalamic neurons. It models AMPA, NMDA, and GABA receptors, myelinated and non-myelinated axons, as well as synaptic plasticity (STDP).
SpikeFun a one-man independent project by Ivan Dimkovic in Stuttgart, Germany. Development started around March 2011 and the latest version was released in December 2012. The effort is not currently funded but is being developed as a hobby during spare time. The simulator is publicly available for free download. The source code is written from scratch in C/C++ and OpenGL. The source is not publicly available but might be released in the future, once it's been tidied up.
Latest news / current status
- Version 0.90 released December 27, 2012
- Video showing 16.7 million neurons and 3.52 billion synapses, published December 27, 2012.
- Version 0.88 released November 25, 2012.
- Version 0.84 released October 22, 2012.
- Version 0.81 released September 16, 2012.
- Version 0.79 released August 6, 2012.
- Version 0.75 released July 1, 2012.
- Video showing 8 million neurons and 1.45 billion synapses, published May 30, 2012.
- First public release, version 0.24, on September 25, 2011.
- Development started around March 2011.
Simulation details
SpikeFun is actually the name of the software front-end only. The simulation engine itself is called DigiCortex. This engine models neurons at the level of action potentials and synaptic receptors. It uses the phenomenological spiking model developed by Eugene Izhikevich. The multi-compartmental models currently have 30 compartments per neuron. Simulations of up to 16 million neurons and 4 billion synapses are theoretically possible, although this largest possible simulation would require 768 GB of RAM.
The implementation is currently optimized for the Intel Sandy Bridge family of processors. An implementation for GPUs is planned using the parallel computing architectures CUDA and/or OpenCL. This will hopefully bring significant performance improvements. Also planned is a client/server model to enable cluster processing, and an API for connecting the simulation to sensors.
The video right shows a simulation of the mammalian thalamocortical system with 8 million neurons and 1.45 billion synapses. View it at full screen and full resolution to see all the detail. The 100-second video shows just over three seconds of simulated time. Note the emergence of a 1 hertz delta wave which is characteristic of humans during deep sleep.
If the network is left to run for more than 15 minutes of simulated time, STDP will significantly alter the neuronal firing patterns. If a permanent stimulus is suddenly turned off after that time a shadow will persist because the simulated neurons are accustomed to the constant presence of the stimulus, just like real neurons.
Around 130 GB of memory were required by the simulation engine, and another 20 GB for the visualisation. The simulation runs at about 0.001x real time on a dual-processor Intel Xeon E5-2687W machine. Each processor has 8 cores, so that's 16 cores in total.
Many more videos are available via Ivan's 321psyq channel on YouTube.
Future developments
Full brain simulation
Source code
Ivan said in April 2012 that he'll give consideration to open sourcing the code. Currently, however, he doesn't consider it tidy enough to release.
About Ivan Dimkovic
Ivan Dimkovic, born 1981, is a software developer currently living in Stuttgart, Germany. In the late 1990s, while living in then Yugoslavia, he became well known for having developed the PsyTEL AAC Encoder - an encoding scheme for digital audio files. The stereo mode of this format had the best quality available in its day.
In 2002 the PsyTEL codec was aquired by Ahead Software AG and Ivan moved to southern Germany to continue development on this and related multimedia projects. In 2006 Ahead changed their name to Nero AG. In 2009 the founders of Nero started a new company called Cinemo GmbH and Ivan moved with them to lead development on embedded multimedia software (in-vehicle infotainment, media phones, etc.).
Ivan's online profiles at LinkedIn and EliteSecurity.
Weblinks
- Homepage: dimkovic.com
- Discussion: SpikeFun - Artificial Nervous System Demo (in Serbian)

