Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Tools for simulating neural models generated using Nengo on the SpiNNaker platform

Project Description

nengo_spinnaker is a SpiNNaker-based simulator for models built using Nengo. It allows real-time simulation of large-scale models.

Quick Start

Install using pip:

$ pip install nengo_spinnaker

Configure nengo_spinnaker to use your local SpiNNaker system:

$ nengo_spinnaker_setup

Using nengo_spinnaker

To use SpiNNaker to simulate your Nengo model first construct the model as normal. Then use nengo_spinnaker.Simulator to simulate your model.:

import nengo_spinnaker

# Build model as normal

sim = nengo_spinnaker.Simulator(network)
sim.run(10.0)

# When done
sim.close()

After running your model you must call close to leave the SpiNNaker machine in a clean state. Alternatively a with block may be used to ensure the simulator is closed after use:

with sim:
    sim.run(10.0)

Some specific configuration options are available for SpiNNaker. To use these:

# Modify config to use SpiNNaker parameters
nengo_spinnaker.add_spinnaker_params(network.config)

Current settings are:

  • function_of_time - Mark a Node as being a function of time only.
  • function_of_time_period - Provide the period of the Node.

For example:

with model:
    signal = nengo.Node(lambda t: np.sin(t))

nengo_spinnaker.add_spinnaker_params(model.config)
model.config[signal].function_of_time = True

Configuring your connection

First, you’ll need to configure your network settings to be able to connect to the board. Go into your network manager and configure your ethernet connection. Set the IPv4 to use an IP address of 192.168.0.250, the subnet mask to be 255.255.0.0, and the gateway to be empty. Because the subnet mask has the first two bytes set, this means your SpiNNaker board must have its IP address set to 192.168.x.x. Most boards will fall into this range, so the above address should be safe in most cases. It is important that your IP address does not collide with that of the board; again, the above address is chosen so that will be rare.

Settings File

In order to know which SpiNNaker system to use, nengo_spinnaker uses a config file called nengo_spinnaker.conf file in either the directory you will be running your code from or, more usefully, a centralised location. The centralised location varies based on your operating system:

  • Windows: %userprofile%\.nengo\nengo_spinnaker.conf
  • Other: ~/.config/nengo/nengo_spinnaker.conf

A utility called nengo_spinnaker_setup installed with nengo_spinnaker can be used to create this file. By default, the config file is created centrally but adding the --project option will create a config file in the current directory (which applies only when running models in that directory).

An annotated example config file is provided for users who wish to create their config file by hand.

Developers

See DEVELOP.md for information on how to get involved in nengo_spinnaker development and how to install and build the latest copy of nengo_spinnaker.

Release History

Release History

This version
History Node

0.4.0

History Node

0.3.0

History Node

0.2.5

History Node

0.2.4

History Node

0.2.3

History Node

0.2.2

History Node

0.2.1

History Node

0.2.0

History Node

0.1a0

Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
nengo_spinnaker-0.4.0.tar.gz (104.4 kB) Copy SHA256 Checksum SHA256 Source Jun 27, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting