OCNS / SoftwareWG

The primary housekeeping repository for the INCF/OCNS Software Working Group, and the sources for the web site.
https://ocns.github.io/SoftwareWG/
11 stars 3 forks source link

Software highlight: PymoNNto and PymoNNtorch #139

Open sanjayankur31 opened 7 months ago

sanjayankur31 commented 7 months ago

Just saw this:

Frontiers | Accelerating spiking neural network simulations with PymoNNto and PymoNNtorch

Would this be interesting as a software wg session?

sanjayankur31 commented 7 months ago

Abstract:

Spiking neural network simulations are a central tool in Computational Neuroscience, Artificial Intelligence, and Neuromorphic Engineering research. A broad range of simulators and software frameworks for such simulations exist with different target application areas. Among these, PymoNNto is a recent Python-based toolbox for spiking neural network simulations that emphasizes the embedding of custom code in a modular and flexible way. While PymoNNto already supports GPU implementations, its backend relies on NumPy operations. Here we introduce PymoNNtorch, which is natively implemented with PyTorch while retaining PymoNNto's modular design. Furthermore, we demonstrate how changes to the implementations of common network operations in combination with PymoNNtorch's native GPU support can offer speed-up over conventional simulators like NEST, ANNarchy, and Brian 2 in certain situations. Overall, we show how PymoNNto's modular and flexible design in combination with PymoNNtorch's GPU acceleration and optimized indexing operations facilitate research and development of spiking neural networks in the Python programming language.

lab-catrina commented 7 months ago

It looks interesting!

On Thu, Feb 22, 2024 at 4:55 AM Ankur Sinha @.***> wrote:

Abstract:

Spiking neural network simulations are a central tool in Computational Neuroscience, Artificial Intelligence, and Neuromorphic Engineering research. A broad range of simulators and software frameworks for such simulations exist with different target application areas. Among these, PymoNNto is a recent Python-based toolbox for spiking neural network simulations that emphasizes the embedding of custom code in a modular and flexible way. While PymoNNto already supports GPU implementations, its backend relies on NumPy operations. Here we introduce PymoNNtorch, which is natively implemented with PyTorch while retaining PymoNNto's modular design. Furthermore, we demonstrate how changes to the implementations of common network operations in combination with PymoNNtorch's native GPU support can offer speed-up over conventional simulators like NEST, ANNarchy, and Brian 2 in certain situations. Overall, we show how PymoNNto's modular and flexible design in combination with PymoNNtorch's GPU acceleration and optimized indexing operations facilitate research and development of spiking neural networks in the Python programming language.

— Reply to this email directly, view it on GitHub https://github.com/OCNS/SoftwareWG/issues/139#issuecomment-1959193364, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB62JESLRG7EPJVVWJ3R6KDYU4PZDAVCNFSM6AAAAABDUWRMHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNJZGE4TGMZWGQ . You are receiving this because you are subscribed to this thread.Message ID: @.***>

sanjayankur31 commented 5 months ago

https://github.com/cnrl/PymoNNtorch