Skip to main content

A Just-In-Time Compilation Approach for Neural Dynamics Simulation

  • Conference paper
  • First Online:
Neural Information Processing (ICONIP 2021)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 13110))

Included in the following conference series:

Abstract

As the bridge between brain science and brain-inspired computation, computational neuroscience has been attracting more and more attention from researchers in different disciplines. However, the current neural simulators based on low-level language programming or pseudo-programming using high-level descriptive language can not full fill users’ basic requirements, including easy-to-learn-and-use, high flexibility, good transparency, and high-speed performance. Here, we introduce a Just-In-Time (JIT) compilation approach for neural dynamics simulation. The core idea behind the JIT approach is that any dynamical model coded with a high-level language can be just-in-time compiled into efficient machine codes running on a device of CPU or GPU. Based on the JIT approach, we develop a neural dynamics simulator in the Python framework called BrainPy, which is available publicly at https://github.com/PKU-NIP-Lab/BrainPy. BrainPy provides a friendly and highly flexible interface for users to define an arbitrary dynamical system, and the JIT compilation enables the defined model to run efficiently. We hope that BrainPy can serve as a general software for both research and education in computational neuroscience.

Y. Jiang and X. Liu—Equal contribution.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Abadi, M., et al.: Tensorflow: large-scale machine learning on heterogeneous distributed systems (2016). arXiv preprint arXiv:1603.04467

  2. Blundell, I., et al.: Code generation in computational neuroscience: a review of tools and techniques. Front. Neuroinf. 12, 68 (2018)

    Article  Google Scholar 

  3. Bower, J.M., Beeman, D.: The Book of GENESIS: Exploring Realistic Neural Models with the GEneral NEural SImulation System. Springer, Heidelberg (2012). https://doi.org/10.1007/978-1-4612-1634-6

    Book  MATH  Google Scholar 

  4. Brette, R., et al.: Simulation of networks of spiking neurons: a review of tools and strategies. J. Comput. Neurosci. 23(3), 349–398 (2007)

    Article  MathSciNet  Google Scholar 

  5. Cannon, R.C., et al.: Lems: a language for expressing complex biological models in concise and hierarchical form and its use in underpinning neuroml 2. Front. Neuroinf. 8, 79 (2014)

    Article  Google Scholar 

  6. Carnevale, N.T., Hines, M.L.: The NEURON Book. Cambridge University Press, Cambridge (2006)

    Book  Google Scholar 

  7. Chou, T.S., et al.: Carlsim 4: an open source library for large scale, biologically detailed spiking neural network simulation using heterogeneous clusters. In: 2018 International Joint Conference on Neural Networks (IJCNN), pp. 1–8. IEEE (2018)

    Google Scholar 

  8. Dai, K., et al.: Brain modeling toolkit: an open source software suite for multiscale modeling of brain circuits. PLOS Comput. Biol. 16(11), e1008386 (2020)

    Article  Google Scholar 

  9. Gewaltig, M.O., Diesmann, M.: Nest (neural simulation tool). Scholarpedia 2(4), 1430 (2007)

    Article  Google Scholar 

  10. Gleeson, P., et al.: Neuroml: a language for describing data driven models of neurons and networks with a high degree of biological detail. PLoS Comput. Biol. 6(6), e1000815 (2010)

    Article  MathSciNet  Google Scholar 

  11. Harris, C.R., et al.: Array programming with numpy. Nature 585(7825), 357–362 (2020)

    Article  Google Scholar 

  12. Lam, S.K., Pitrou, A., Seibert, S.: Numba: a llvm-based python jit compiler. In: Proceedings of the Second Workshop on the LLVM Compiler Infrastructure in HPC, pp. 1–6 (2015)

    Google Scholar 

  13. Modzelewski, K., Wachtler, M., Galindo, P.: Pyston (2021). https://github.com/pyston/pyston

  14. Øksendal, B.: Stochastic Differential Equations: An Introduction with Applications. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-642-14394-6

    Book  MATH  Google Scholar 

  15. Paszke, A., et al.: Pytorch: an imperative style, high-performance deep learning library. In: Wallach, H., Larochelle, H., Beygelzimer, A., d’Alché-Buc, F., Fox, E., Garnett, R. (eds.) Advances in Neural Information Processing Systems 32, pp. 8024–8035. Curran Associates, Inc. (2019). https://www.pytorch.org/

  16. Plotnikov, D., Rumpe, B., Blundell, I., Ippen, T., Eppler, J.M., Morrison, A.: Nestml: a modeling language for spiking neurons (2016). arXiv preprint arXiv:1606.02882

  17. Raikov, I., et al.: Nineml: the network interchange for ne uroscience modeling language. BMC Neurosci. 12(1), 1–2 (2011)

    Google Scholar 

  18. Stimberg, M., Brette, R., Goodman, D.F.: Brian 2, an intuitive and efficient neural simulator. Elife 8, e47314 (2019)

    Article  Google Scholar 

  19. Stimberg, M., Goodman, D.F., Benichoux, V., Brette, R.: Equation-oriented specification of neural models for simulations. Front. Neuroinf 8, 6 (2014)

    Article  Google Scholar 

  20. Team, T.P.: (2019). https://www.pypy.org/

  21. Tikidji-Hamburyan, R.A., Narayana, V., Bozkus, Z., El-Ghazawi, T.A.: Software for brain network simulations: a comparative study. Front. Neuroinf. 11, 46 (2017)

    Article  Google Scholar 

  22. Vitay, J., Dinkelbach, H.Ü., Hamker, F.H.: Annarchy: a code generation approach to neural simulations on parallel hardware. Front. Neuroinf. 9, 19 (2015)

    Article  Google Scholar 

  23. Yavuz, E., Turner, J., Nowotny, T.: Genn: a code generation framework for accelerated brain simulations. Sci. Rep. 6(1), 1–14 (2016)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Si Wu .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2021 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Wang, C. et al. (2021). A Just-In-Time Compilation Approach for Neural Dynamics Simulation. In: Mantoro, T., Lee, M., Ayu, M.A., Wong, K.W., Hidayanto, A.N. (eds) Neural Information Processing. ICONIP 2021. Lecture Notes in Computer Science(), vol 13110. Springer, Cham. https://doi.org/10.1007/978-3-030-92238-2_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-92238-2_2

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-92237-5

  • Online ISBN: 978-3-030-92238-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics