CARLsim
6.1.0
CARLsim: a GPU-accelerated SNN simulator
|
CARLsim is an efficient, easy-to-use, GPU-accelerated library for simulating large-scale spiking neural network (SNN) models with a high degree of biological detail. CARLsim allows execution of networks of Izhikevich spiking neurons with realistic synaptic dynamics on both generic x86 CPUs and standard off-the-shelf GPUs. The simulator provides a PyNN-like programming interface (C/C++), which allows for details and parameters to be specified at the synapse, neuron, and network level.
The present release, CARLsim 6, builds on the efficiency and scalability of releases 4 and 5. The functionality of the simulator has been greatly expanded by the addition of a number of features that enable and simplify the creation, tuning, and simulation of complex networks with spatial structure.
New features include:
All software is available on GitHub. The project is managed by CARL, the Cognitive Anteater Robotics Laboratory of the departments Cognitive Sciences and Computer Science, University of California, Irvine.
The simulator was first introduced in 2009 (now referred to as CARLsim_v1.0), where it demonstrated near real-time performance for 100,000 spiking neurons on a single NVIDIA GTX 280 (Nageswaran et al., 2009). CARLsim_v2.0 added basic support for synaptic conductances, spike-timing dependent plasticity (STDP), and short-term plasticity (STP) (Richert et al., 2011). CARLsim_v3.1 supported CUDA 7, 9-parameter Izhikevich, Runge-Kutta integration method (Beyeler et. al., 2014) and intergrated ECJ from George Mason University. CARLsim_v4.0 allowed to run SNNs on multiple GPU cards and/or multiple CPU cores (Chou, Kashyap, et. al, 2018). CARLsim_v5.0 integrateed PyCARL from Drexel University (Balaji et. al., 2020).
CARLsim was originally written by Jayram Moorkanikara Nageswaran and Micah Richert. The code is now being maintained and extended by Lars Niedermeier, Jinwei Xing and Kexin Chen. For a full list of contributors, see file AUTHORS.
The best place to get started is Chapter 1: Getting Started of the User Guide, which will walk you through the installation procedure. Chapter 2: Basic Concepts will explain the basic concepts of CARLsim.
For a more example-driven approach, please refer to our Tutorials (e.g., Tutorial 1: Basic Concepts).
For the most up-to-date information, software packages, and announcements, please refer to the CARL Website or join the CARLsim Release Info mailing list.
The simulator—along with its various releases, computational studies, and sample code—has previously been published in the following studies: