A RaspberryPi super computer in a briefcase
Python
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
LICENSE
README.md
chop.py
discovery.py
helloworld.py
netdisco_discovery.py
osx_notes.md
registration.py
requirements_py3.txt
sciabc.service
to_compute.py
zeroconf_find_services.py
zeroconf_listener.py

README.md

Supercomputer in a Briefcase

Introduction

Clearly it is impossible to fit a supercomputer in a briefcase. But it is a great label for the idea of being able to construct ad hoc dynamic clusters of computers with a view to using them to play with parallelism.

Russel Winder gave a presentation at PyCon UK 2016 introducing the idea of the "Supercomputer in a Briefcase". The video of the presentation is on YouTube here

Purpose

This repository is for software to control and manage an ad hoc, dynamic cluster of computers.

Service discovery

  • avahi configured to advertise service sciabc.service
  • zeroconf listener zeroconf_listener.py writes IP adddress to nodes.txt
  • diagnostic tool: zeroconf_find_services.py

Initialising Supercomputer

  • Todo: automate installation of configuration and required packages
    • copy over sciabc.service
    • copy manager's ssh public key to authorized keys file
    • install MPI

Supercomputer manager setup

  • install on manager: sudo apt-get install python3-mpi4py
  • mpirun -v --hostfile nodes.txt

Issues

  • how to specify the ssh user of each node?
  • create a new user, or ask administrator?

Licence

All the software here is licenced under GPLv3.

Some of the bits of code we have imported here from elsewhere have MIT or LGPL licences on the originals or they are in the public domain. In the rush at the sprint at PyCon UK 2016, we were not quite as vigilant about licences as perhaps we should have been. We will properly retrofit the correct licence statements to the imported code as needed corrections are found. If you spot an infelicity of ours that needs correction, please let us know via the issues and the corrections will be made.