Skip to content

The SpiNNaker implementation of the PyNN neural networking language

Notifications You must be signed in to change notification settings

gtrensch/sPyNNaker

 
 

Repository files navigation

Build Status

This package provides a PyNN implementation for SpiNNaker.

Requirements

In addition to a standard Python installation, this package depends on:

  • six
  • enum34
  • DataSpecification
  • PACMAN
  • SpiNNMan
  • SpiNNFrontEndCommon
  • SpiNNMachine
  • PyNN
  • numpy

You can also optionally install:

  • Visualiser (for live visualisation support)

These dependencies, excluding numpy, can be installed using pip:

pip install six
pip install enum34
pip install DataSpecification
pip install PACMAN
pip install SpiNNMan
pip install PyNN
pip install SpiNNFrontEndCommon
pip install SpiNNMachine

To install the Visualiser, please see the Visualiser README, as this contains details of how to install GTK.

Details of the installation of numpy on various operating systems are shown below.

If you are using virtualenv, please also follow the instructions below to install numpy. Further instructions for adding this global package to your virutalenv are detailed in the "User Installation" and "Developer Installation" sections below.

Ubuntu Linux

Execute the following to install both gtk and pygtk:

sudo apt-get install python-numpy

Fedora Linux

Execute the following to install both gtk and pygtk:

sudo yum install numpy

Windows 7/8 64-bit

Download and install http://spinnaker.cs.manchester.ac.uk/.../numpy-MKL-1.8.1.win-amd64-py2.7.exe

Windows 7/8 32-bit

Download and install http://spinnaker.cs.manchester.ac.uk/.../numpy-MKL-1.8.1.win32-py2.7.exe

User Installation

If you want to install for all users, run:

sudo pip install sPyNNaker

If you want to install only for yourself, run:

pip install sPyNNaker --user

To install in a virtualenv, it is easier if numpy is installed outside of the virtualenv first. This is done by creating a link to the system numpy in the virtual env (with the virtualenv activated):

32-bit Fedora Linux

ln -s /usr/lib/python2.7/site-packages/numpy $VIRTUAL_ENV/lib/python2.7/site-packages/numpy
ln -s /usr/lib/python2.7/site-packages/numpy-1.8.0-py2.7.egg-info $VIRTUAL_ENV/lib/python2.7/site-packages/numpy-1.8.0-py2.7.egg-info

64-bit Fedora Linux

ln -s /usr/lib64/python2.7/site-packages/numpy $VIRTUAL_ENV/lib/python2.7/site-packages/numpy
ln -s /usr/lib64/python2.7/site-packages/numpy-1.8.0-py2.7.egg-info $VIRTUAL_ENV/lib/python2.7/site-packages/numpy-1.8.0-py2.7.egg-info

Ubuntu

ln -s /usr/lib/python2.7/dist-packages/numpy $VIRTUAL_ENV/lib/python2.7/site-packages/numpy
ln -s /usr/lib/python2.7/dist-packages/numpy-1.8.0-py2.7.egg-info $VIRTUAL_ENV/lib/python2.7/site-packages/numpy-1.8.0-py2.7.egg-info

Windows 7/8 (As Administrator)

mklink /D %VIRTUAL_ENV%\Lib\site-packages\numpy C:\Python27\Lib\site-packages\numpy
mklink /D %VIRTUAL_ENV%\Lib\site-packages\numpy-1.8.0-py2.7.egg-info C:\Python27\Lib\site-packages\numpy-1.8.0-py2.7.egg-info

Then, with the virtualenv enabled, run:

pip install sPyNNaker

pyNN.spiNNaker support

If you want to be able to use sPyNNaker like the other PyNN simulators, e.g. calling "import pyNN.spiNNaker as p" at the top of your pyNN scripts, you will need to do one of the following, depending on how you have installed pyNN.

pyNN installed for all users:

sudo pip install pyNN-spiNNaker

pyNN installed for only yourself:

pip install pyNN-spiNNaker --user

pyNN installed in a virtualenv:

pip install pyNN-spiNNaker

Developer Installation

If you want to be able to edit the source code, but still have it referenced from other Python modules, you can set the install to be a developer install. In this case, download the source code, and extract it locally, or else clone the git repository:

git clone http://github.com/SpiNNakerManchester/sPyNNaker.git

To install as a development version which all users will then be able to use, run the following where the code has been extracted:

sudo python setup.py develop

To install as a development version for only yourself, run:

python setup.py develop --user

If you also want pyNN.spiNNaker support, please install this as described above.

Documentation

sPyNNaker python documentation

Combined PyNN7 python documentation

Combined PyNN8 python documentation

About

The SpiNNaker implementation of the PyNN neural networking language

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 70.3%
  • C 28.7%
  • Other 1.0%