Skip to main content

A GPU-based multi-agent simulation framework for neuromorphic computing.

Project description

SuperNeuroABM

SuperNeuroABM is a GPU-based multi-agent simulation framework for neuromorphic computing. Built on top of SAGESim, it enables fast and scalable simulation of spiking neural networks on both NVIDIA and AMD GPUs.

Key Features

  • GPU Acceleration: Leverages CUDA (NVIDIA) or ROCm (AMD) for high-performance simulation
  • Scalable: From single GPU to multi-GPU HPC clusters via MPI
  • Flexible Neuron Models: Support for various soma and synapse step functions
  • STDP Support: Built-in spike-timing-dependent plasticity mechanisms
  • Network I/O: Import/export neural network topologies

Requirements

  • Python 3.11+
  • NVIDIA GPU with CUDA drivers or AMD GPU with ROCm 5.7.1+
  • MPI implementation (OpenMPI, MPICH, etc.) for multi-GPU execution

Installation

Your system might require specific steps to install mpi4py and/or cupy depending on your hardware. In that case, use your system's recommended instructions to install these dependencies first.

pip install superneuroabm

Quick Start

from superneuroabm.model import SuperNeuroModel

# Create model
model = SuperNeuroModel()

# Create neurons
n1 = model.create_neuron()
n2 = model.create_neuron()

# Connect with synapse
model.create_synapse(n1, n2, weight=1.0)

# Setup and run
model.setup(use_gpu=True)
model.simulate(ticks=100)

Unit Tests

To run unit tests:

python -m unittest tests.test_synapse_and_soma_models

Publications

Date, Prasanna, Chathika Gunaratne, Shruti R. Kulkarni, Robert Patton, Mark Coletti, and Thomas Potok. "SuperNeuro: A fast and scalable simulator for neuromorphic computing." In Proceedings of the 2023 International Conference on Neuromorphic Systems, pp. 1-4. 2023.

License

BSD-3-Clause License - Oak Ridge National Laboratory

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

superneuroabm-1.0.1.tar.gz (50.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

superneuroabm-1.0.1-py3-none-any.whl (44.6 kB view details)

Uploaded Python 3

File details

Details for the file superneuroabm-1.0.1.tar.gz.

File metadata

  • Download URL: superneuroabm-1.0.1.tar.gz
  • Upload date:
  • Size: 50.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for superneuroabm-1.0.1.tar.gz
Algorithm Hash digest
SHA256 907cfc5ddad521009d07e51579fd63176ab996d21ee601bbc2920083aa268f59
MD5 ef4001e9f3e693807289d4e39b7b89d6
BLAKE2b-256 4454bb5052e638226c474b89746955c8b816eb4824d022f9f5bfb33fa3fa0e17

See more details on using hashes here.

File details

Details for the file superneuroabm-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: superneuroabm-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 44.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for superneuroabm-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 325ad213456a2c98770b0db1f44efb18d3cbfc10514e3b5d7482180f27851454
MD5 503887c388c133fae2fdd279c8e5310b
BLAKE2b-256 b80e7f472bbf6d3b4b97be2ded5bb90690515b9929fe9ba65b09da87eeb27a15

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page