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

2021 
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.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    0
    References
    0
    Citations
    NaN
    KQI
    []