#
Efficient numerical simulation of neuron models with spatial structure on graphics processing units

^{
1}
The University of Electro-Communications, Japan
^{
2}
Tokyo Medical and Dental University, Japan
^{
3}
RIKEN Brain Science Institute, Neuroinformatics Japan Center, Japan

Integrate-and-fire model and Hodgkin-Huxley model are known as basic mathematical models that describe the change of membrane potential. In these models, the structure of neurons is neglected; neurons are regarded as material points. On the other hand, spatial neuron models consider morphological structure such as soma, dendrites and axons. Spatial neurons are composed of equipotential segments called “compartments” connected with axial resistances. Change of membrane potential in each compartment is described by a partial differential equation (PDE) called a cable equation. In general, a cable equation is descretized both in time (implicit) and space. Then, linear simultaneous equations are obtained and we solve them to calculate membrane potential for each compartment and time step [1].
Because writing a program to solve the equations is difficult, dedicated simulation software such as NEURON and GENESIS are used. However, they have two issues. First, they do not support modern computing accelerators such as graphics processing units (GPUs). They employ a data structure called array of structure, which typically compromises the parallel computing capability of accelerators. Second, they use basic numerical method called Gaussian elimination to solve linear simultaneous equations. Gaussian elimination is known that having computational complexity O(N^3) in the case of N th-order dense matrices. Thus, calculation amount is too increasing as the coefficient matrix is huge. On the other hand, there is a numerical method called a conjugate gradient method (CG method) to solve linear simultaneous equations. A CG method is a series of dot products and matrix-vector products. Also, the coefficient matrix does not change during calculation by a CG method. By these reasons, CG methods are known much faster and more efficient than Gaussian elimination, when the coefficient matrix is huge and sparse.
High-performance computing (HPC) technology is important for efficient numerical simulation. In particular, recent advances of general-purpose computing on graphics processing units (GPGPU) are tremendeous. GPGPU is the technology in which GPUs are used as parallel computing hardware owing to the many core architecture that is originally intended for computer graphics. In GPGPU, it is important to divide a large amount of calculation into a number of independent small calculations. Because spatial models tend to have compartments having the same dynamics among themselves, it is easy to calculate in parallel on GPUs.
The purpose of this study is to develop our own software for numerical simulation of spatial models on GPUs. We used programming library called CUDA C which is a kind of GPGPU technology and based on C language [2]. First, we implemented the CG method considering that the coefficient matrix obtained by descretizing a cable equation is sparse and symmetrical positive definite. A CG method was implemented by using a modern CUDA technology called “Dynamic Parallelism” that a kernel code can invoke other kernel code. In this way, the entire algorithm of the CG method was implemented in a kernel code, which means that there is no need to return to the host code for each iteration. In the CG method, because zero elements in a coefficient matrix are not necessary, the sparse matrix was represented by the compressed row storage (CRS) format. A Dot product implemented on one thread and shared memories. Matrix-vector product was implemented by using one thread per one row. Second, we implemented parallel calculation of ion channels and gate variables on a GPU. They were calculated by using one thread per one compartment. Third, we implemented parallel calculation of multiple cells by using CUDA technology called “Stream” that manage many tasks on a GPU. They were calculated by using one stream per one cell.
As a result, our software succeeded to carry out a simulation of a spatial model of Purkinje cells developed by De Schutter and Bower (1994) [3], which is composed of 1,600 compartments having 10 ion channels and 13 gate variables for each compartments (Figure1). Specifically, we conducted the following three experiments. First, a simulation using the CG method realized 100 times faster calculation than that using Gaussian elimination for one Purkinje cell on a CPU with temporal resolution of 20 microseconds for 5,000 iteration. Second, the GPU (using Tesla K40c) version realized 3 times faster calculation than that a single-threaded CPU version for 15 Purkinje cells. Third, we compared the performance of the CG method we implemented with these implemented using CUSPARSE and CUBLAS libraries developed by NVIDIA (Figure2).
Summarizing, spatial model simulation using our software with the aid of GPGPU was faster than that on NEURON and GENESIS. We will improve out software to simulate spatial neuron models faster and more accurate.

##
References

[1] Koch C et al. (1998) Methods in Neuronal Modeling

[2] NVIDIA, CUDA C PROGRAMMING GUIDE (PG-02829-001_v7.5) (2015)

http://docs.nvidia.com/cuda/pdf/CUDA_C_Programming_Guide.pdf

[3] De Schutter E, Bower JM (1994) J Neurophysiol 71:375-400

Keywords:
simulator,
spatial model,
Conjugate gradient method,
Graphics processing units,
CUDA

Conference:
Neuroinformatics 2016, Reading, United Kingdom, 3 Sep - 4 Sep, 2016.

Presentation Type:
Poster

Topic:
Computational neuroscience

Citation:
Tsuyuki
T,
Yamamoto
Y and
Yamazaki
T
(2016). Efficient numerical simulation of neuron models with spatial structure on graphics processing units.
Front. Neuroinform.
Conference Abstract:
Neuroinformatics 2016.
doi: 10.3389/conf.fninf.2016.20.00030

Copyright:
The abstracts in this collection have not been subject to any Frontiers peer review or checks, and are not endorsed by Frontiers.
They are made available through the Frontiers publishing platform as a service to conference organizers and presenters.

The copyright in the individual abstracts is owned by the author of each abstract or his/her employer unless otherwise stated.

Each abstract, as well as the collection of abstracts, are published under a Creative Commons CC-BY 4.0 (attribution) licence (https://creativecommons.org/licenses/by/4.0/) and may thus be reproduced, translated, adapted and be the subject of derivative works provided the authors and Frontiers are attributed.

For Frontiers’ terms and conditions please see https://www.frontiersin.org/legal/terms-and-conditions.

Received:
28 Apr 2016;
Published Online:
18 Jul 2016.

*
Correspondence:
Mr. Tsukasa Tsuyuki, The University of Electro-Communications, Chofu, Tokyo, Japan, tb.tsuyu0328@gmail.com