SpiNNer is a collection of tools for assisting with all stages of the process of wiring up large SpiNNaker machines, from design to installation verification.
SpiNNer has the following external dependencies (aside from Python 2.7+ or 3.4+):
Dependency | Ubuntu Package | Fedora Package(s) | Arch Package |
---|---|---|---|
Cairo | libcairo2-dev | cairo-devel | cairo |
libffi | libffi-dev | libffi-devel | libffi |
Tkinter | python-tk, python-imaging-tk | tkinter, python-imaging-tk | tk |
Espeak | espeak | espeak | espeak |
NB: the python-imaging-tk
package only appeared in more recent Fedora
releases; for older releases this package is not needed.
The easiest way to install the latest release of SpiNNer (along with other Python packages it uses) to use use pip:
# pip install spinnaker_spinner
You can read the latest version of SpiNNer's documentation on ReadTheDocs.
Producing a wiring diagram for a 15-board machine:
$ spinner-wiring-diagram -n 15 out.png
Producing a map from chip-position to physical location for a 24-board machine:
$ spiner-machine-map -n 24 out.png
Guiding manual installation of wires for a 24-board machine:
$ spinner-wiring-guide -n 24 -l 0.15 0.30 --bmp 0 0 192.168.4.0
Finally, for a timelapse video of (an early version of) SpiNNer being used to wire up a 120-board machine head over to YouTube.
The SpiNNer code base is the work of Jonathan Heathcote although the wiring techniques used are based nearly in their entirety on extensive discussions with Steve Furber, Jim Garside, Simon Davidson, Steve Temple and Luis Plana.
The default physical machine measurements used by SpiNNer were contributed by Steve Temple.