Interface SpiNNakerControl
public interface SpiNNakerControl
How to tell a SpiNNaker BMP (specifically one that manages a frame) to turn
on boards, turn them off, and to turn off links on the perimeter of an
allocation.
Implementations of this are expected to be prototype beans that have
a constructor that takes two arguments:
TheCls(
SpallocAPI.Machine
machine,
BMPCoords
bmp)
Note that SpiNNaker-2 will have a different concrete implementation of this, and functionality implemented by this might eventually move into the transceiver.
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
SpiNNakerControl.Factory
A guide for how to make a BMP controller. -
Method Summary
Modifier and Type Method Description void
ping(List<BMPBoard> boards)
Ping the given boards.void
powerOff(List<BMPBoard> boards)
Turn off boards managed by a BMP.void
powerOnAndCheck(List<BMPBoard> boards)
Switch on a collection of boards managed by a BMP on a machine and check that they've come up correctly.Blacklist
readBlacklist(BMPBoard board)
Read a blacklist from the given board.String
readSerial(BMPBoard board)
Read a BMP serial number from the given board.ADCInfo
readTemp(BMPBoard board)
Read the temperature data from the given board.void
setLinkOff(Link link)
Turns a link off.void
writeBlacklist(BMPBoard board, Blacklist blacklist)
Write a blacklist to the given board.
-
Method Details
-
powerOnAndCheck
void powerOnAndCheck(List<BMPBoard> boards) throws ProcessException, InterruptedException, IOExceptionSwitch on a collection of boards managed by a BMP on a machine and check that they've come up correctly.Note that this operation can take some time.
- Parameters:
boards
- The local-relative boards to switch on.- Throws:
ProcessException
- If a BMP sends a failure message.IOException
- If network I/O fails or we reach the limit on retries.InterruptedException
- If we're interrupted.
-
setLinkOff
Turns a link off. (We never need to explicitly switch a link on; that's implicit in switching on its board.)- Parameters:
link
- The link to turn off.- Throws:
ProcessException
- If a BMP rejects a message.IOException
- If network I/O fails.InterruptedException
- If the communications were interrupted.
-
powerOff
Turn off boards managed by a BMP. Turning off a board also turns off its links.- Parameters:
boards
- The local-relative ids of the boards to turn off.- Throws:
ProcessException
- If a BMP sends a failure message.IOException
- If network I/O fails or we reach the limit on retries.InterruptedException
- If we're interrupted.
-
readSerial
Read a BMP serial number from the given board.- Parameters:
board
- The board to read from.- Returns:
- The serial number.
- Throws:
ProcessException
- If a BMP sends a failure message.IOException
- If network I/O fails or we reach the limit on retries.InterruptedException
- If we're interrupted.
-
readTemp
Read the temperature data from the given board.- Parameters:
board
- The board to read from.- Returns:
- The temperature (and fan speed and voltage) data.
- Throws:
ProcessException
- If a BMP sends a failure message.IOException
- If network I/O fails or we reach the limit on retries.InterruptedException
- If we're interrupted.
-
readBlacklist
Read a blacklist from the given board.- Parameters:
board
- The board to read the blacklist from.- Returns:
- The blacklist.
- Throws:
ProcessException
- If a BMP sends a failure message.IOException
- If network I/O fails or we reach the limit on retries.InterruptedException
- If we're interrupted.
-
writeBlacklist
void writeBlacklist(BMPBoard board, Blacklist blacklist) throws ProcessException, InterruptedException, IOExceptionWrite a blacklist to the given board.- Parameters:
board
- The board to write the blacklist to.blacklist
- The blacklist to write.- Throws:
ProcessException
- If a BMP sends a failure message.IOException
- If network I/O fails or we reach the limit on retries.InterruptedException
- If we're interrupted.
-
ping
Ping the given boards.- Parameters:
boards
- The boards to ping.
-