Neurospaces:Towards automated model partitioning for parallel computers
Introduction
It is well known that the simulation of biologically accurate neuronal models requires an enormous amount of computing power. With the recent technological advancements, nowadays CPUs have sufficient performance to meet the requirements of some single cell neuronal modeling and simulation. Nevertheless these single cell models must be put in the context of large scale neuronal networks to get realistic biological behavior [18]. As a result, to get adequate performance, the model must be run on parallel computers. Since some neurons are more complicated than others, biologically realistic neuronal network models have an intrinsic nature of heterogeneity. Hence, parallelizing a large and complicated neuronal network model becomes a difficult programming process and the need for automatic partitioning algorithms arises. Until today, no one has ever published a general automatic partitioning algorithm for biological accurate neuronal models. This work embodies the first necessary steps for such an algorithm.
Section snippets
The problem of defining models
Building complex and large neuronal models is a tedious process. Many biological components and physical parameters are involved and the relationships between them must be defined by the modeler. The number of, as well as the relationships between the biological components are the guiding entities for partitioning a large model over a parallel computer [22].
Neuron and Genesis share the idea that models covering various levels of complexity, are best described with a dedicated language for each
Essentials of the neurospaces data model
Neurospaces is a modeling environment, designed with a focus on large and complicated models [7]. By leaving the simulation to a simulator, Neurospaces can be optimized for efficient memory handling, interaction with modelers and interaction with user interfaces [8]. As an identification service for neuronal simulators, Neurospaces is currently a unique middle-ware software component, comparable to a naming service for large software projects (e.g. JNDI [17]).
Neurospaces uses an abstract linked
Partitioning for parallel simulations
The implementation of the partitioning algorithm in Neurospaces consists of a single application callback that inspects the data stream generated by a traversal. The callback performs several operations on the data:
- •
The types of the modeling components are checked and candidate partitioning elements are tagged (the candidate partitioning types are currently fibers and cells, yet this is configurable). The candidate partitioning elements cluster the individual model pieces into candidate
An example
The granular layer of the cerebellar cortex contains granule cells and Golgi cells [21]. The first example we discuss contains 25 granule cells and two Golgi cells in a 2D grid layout. An outline picture using an abstract linked tree is shown in Fig. 1.
The granule cell and Golgi cell models are taken from [19]. Both models consist of a single compartment with a number of Hodgkin–Huxley alike channels and an exponentially decaying calcium pool. The granule cell population specification is shown
Workload computation
Hsolve is a compartmental solver that uses byte codes to encode the equations in a compartmental model [6]. Based on the experience obtained with these byte codes, each compartment in the model stored by Neurospaces can be assigned a load of 4 points, each channel a load of 6 points and a calcium pool a load of 3 points. A spike generating element as well as a synapse have a workload of 1 point. The total workload for a single granule cell model comes to 72 and for a single Golgi cell model to
Compiling the model to a parallel simulation
Embedding Neurospaces in parallel Genesis [13] will allow to partition large models with Neurospaces and simulate them with parallel Genesis. Translating a large model described with Neurospaces into a parallel simulation involves two separate steps:
- 1.
Apply the partitioning algorithm to compute the partitions and assign the partitions to the nodes of the parallel computer. In Neurospaces, the partitioning algorithm can be activated from a low-level command line interface or a high-level GUI (Fig.
Related work
Partitioning of neuronal models is becoming increasingly popular. The following projects are closely related to this work or to Neurospaces as a software component:
- •
Neosim2 is a parallel discrete event simulator [16] and is based on the first Neosim project [12]. Neosim2 does not address the problem of heterogeneous models, but implicitly assumes homogeneous cell models. It therefore does not incorporate sophisticated partitioning algorithms as explained here.
- •
Other simulators like Topographica
Conclusion and future work
Neurospaces automatically assembles all descriptive parameters of neuronal models. This allows to compute the CPU load of a simulation and to partition a model such that it is ready for parallel simulations.
The single compartment granule and Golgi cells are only moderately asymmetric. Introducing computationally more intensive Purkinje cell models (e.g. [9]) in the network will result in huge asymmetries in the network model. A logical next step is to evaluate and improve the algorithm
References (22)
- et al.
Neurospaces: Separating modeling and simulation
Neurocomputing
(2003) - et al.
Neurospaces parameter handling
Neurocomputing
(2004) - et al.
Neosim: portable plug and play neuronal modelling
Neurocomputing
(2001) - et al.
Linking computational neuroscience simulation tools: a pragmatic approach to component-based development
Neurocomputing
(2003) - et al.
A large-scale network model of the cerebellar cortex using pgenesis
Neurocomputing
(2000) - J.A. Bednar, Y. Choe, J. De Paula, R. Miikkulainen, J. Provost, T. Tversky, Modeling cortical maps with Topographica,...
- J.M. Bower, D. Beeman, (Eds.), The Book of GENESIS, second ed. Springer, Berlin,...
- et al.
From biophysics to behavior: catacomb2 and the design of biologically plausible models for spatial navigation
Neuroinformatics 1
(2003) - H. Cornelis, The interference between modeling space and simulation space, fundamental techniques for efficiency in...
- H. Cornelis, E. De Schutter, Treespaces, Technical report, UIA, University of Antwerp, Universiteitsplein 1, Wilrijk,...
Cited by (4)
A New Approach to Improve the Cluster-based Parallel Processing Efficiency of High-Resolution Remotely Sensed Image
2012, Journal of the Indian Society of Remote SensingReal Life Applications of Soft Computing
2010, Real Life Applications of Soft Computing