This package provides a PyNN implementation for SpiNNaker.
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.
Execute the following to install both gtk and pygtk:
sudo apt-get install python-numpy
Execute the following to install both gtk and pygtk:
sudo yum install numpy
Download and install http://spinnaker.cs.manchester.ac.uk/.../numpy-MKL-1.8.1.win-amd64-py2.7.exe
Download and install http://spinnaker.cs.manchester.ac.uk/.../numpy-MKL-1.8.1.win32-py2.7.exe
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):
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
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
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
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
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
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.
sPyNNaker python documentation