An Improved GPU Simulator for Spiking Neural P Systems

Spiking Neural P (SNP) systems, variants of Psystems (under Membrane and Natural computing), are computing models that acquire abstraction and inspiration from the way neurons 'compute' or process information. Similar to other P system variants, SNP systems are Turing complete models that by nature compute non-deterministically and in a maximally parallel manner. P systems usually trade (often exponential) space for (polynomial to constant) time. Due to this nature, P system variants are currently limited to parallel simulations, and several variants have already been simulated in parallel devices. In this paper we present an improved SNP system simulator based on graphics processing units (GPUs). Among other reasons, current GPUs are architectured for massively parallel computations, thus making GPUs very suitable for SNP system simulation. The computing model, hardware/software considerations, and simulation algorithm are presented, as well as the comparisons of the CPU only and CPU-GPU based simulators.

[1]  Nicolas Pinto,et al.  PyCUDA: GPU Run-Time Code Generation for High-Performance Computing , 2009, ArXiv.

[2]  Pat Hanrahan,et al.  Understanding the efficiency of GPU algorithms for matrix-matrix multiplication , 2004, Graphics Hardware.

[3]  Mark J. Harris Mapping computational concepts to GPUs , 2005, SIGGRAPH Courses.

[4]  Mitsunori Ogihara,et al.  Molecular Computation , 2006, Recent Advances in Formal Languages and Applications.

[5]  Henry N. Adorna,et al.  Simulating Spiking Neural P Systems Without Delays Using GPUs , 2011, Int. J. Nat. Comput. Res..

[6]  Van Nguyen,et al.  A Region-Oriented Hardware Implementation for Membrane Computing Applications , 2009, Workshop on Membrane Computing.

[7]  James Demmel,et al.  Benchmarking GPUs to tune dense linear algebra , 2008, 2008 SC - International Conference for High Performance Computing, Networking, Storage and Analysis.

[8]  Gabriel Ciobanu,et al.  P Systems Running on a Cluster of Computers , 2003, Workshop on Membrane Computing.

[9]  Gheorghe Paun,et al.  Applications of Membrane Computing (Natural Computing Series) , 2005 .

[10]  Gheorghe Paun,et al.  The Oxford Handbook of Membrane Computing , 2010 .

[11]  José M. García,et al.  Simulating a P system based efficient solution to SAT by using GPUs , 2010, J. Log. Algebraic Methods Program..

[12]  Florent Jacquemard,et al.  An Analysis of a Public Key Protocol with Membranes , 2005 .

[13]  Haiming Chen,et al.  Spiking neural P systems with extended rules: universality and languages , 2006, Natural Computing.

[14]  Jie Cheng,et al.  Programming Massively Parallel Processors. A Hands-on Approach , 2010, Scalable Comput. Pract. Exp..

[15]  José M. García,et al.  Simulation of P Systems with Active Membranes on CUDA , 2010, 2009 International Workshop on High Performance Computational Systems Biology.

[16]  Oscar H. Ibarra,et al.  On spiking neural P systems , 2006, Natural Computing.

[17]  Xiangxiang Zeng,et al.  Matrix Representation of Spiking Neural P Systems , 2010, Int. Conf. on Membrane Computing.