spinnaker_graph_front_end.utilities package

Submodules

spinnaker_graph_front_end.utilities.data_utils module

spinnaker_graph_front_end.utilities.data_utils.generate_steps_system_data_region(spec: DataSpecificationGenerator, region_id: int, machine_vertex: SimulatorVertex)[source]

Generate a system data region for step-based simulations.

Parameters:
  • spec (data_specification.DataSpecificationGenerator) – The data specification to write to

  • region_id (int) – The region to write to

  • machine_vertex (MachineVertex) – The machine vertex to write for

spinnaker_graph_front_end.utilities.data_utils.generate_system_data_region(spec: DataSpecificationGenerator, region_id: int, machine_vertex: SimulatorVertex)[source]

Generate a system data region for time-based simulations.

Parameters:
  • spec (DataSpecificationGenerator) – The data specification to write to

  • region_id (int) – The region to write to

  • machine_vertex (MachineVertex) – The machine vertex to write for

Module contents

class spinnaker_graph_front_end.utilities.SimulatorVertex(label, binary_name: str, vertex_slice=None)

Bases: MachineVertex, AbstractHasAssociatedBinary

A machine vertex that is implemented by a binary APLX that supports the spin1_api simulation control protocol.

Parameters:
  • label (str) – The label for the vertex.

  • binary_name (str) – The name of the APLX implementing the vertex.

  • vertex_slice (Slice or None) – The slice of the application vertex that this machine vertex implements.

property front_end

The main front end that is handling this simulator vertex.

Return type:

ModuleType

generate_recording_region(spec, region_id, channel_sizes)[source]

Generate the recording region for the data specification.

Parameters:
  • spec (DataSpecificationGenerator) – The data specification being built

  • region_id (int) – Which region is the recording region.

  • sizes (list(int)) – The sizes of each of the recording channels. The length of the list is the number of recording channels.

generate_system_region(spec, region_id=0)[source]

Generate the system region for the data specification. Assumes that the vertex uses the system timestep and time scale factor.

Note

Do not use this with untimed vertices.

Parameters:
  • spec (DataSpecificationGenerator) – The data specification being built

  • region_id (int) – Which region is the system region. Defaults to 0 because it is almost always the first one.

get_binary_file_name() str[source]

Get the binary name to be run for this vertex.

Return type:

str

get_binary_start_type() ExecutableType[source]

Get the start type of the binary to be run.

Return type:

ExecutableType

get_recording_channel_data(recording_id)[source]

Get the data from a recording channel. The simulation must have spinnaker_graph_front_end.run() before this will work, and the vertex must set up the recording region beforehand.

Parameters:

recording_id (int) – Which recording channel to fetch

Returns:

the data, and whether any data was lost

Return type:

tuple(bytes, bool)

property placement

Get the placement of this vertex.

Note

Only valid after the simulation has run!

Return type:

Placement

abstract property sdram_required: AbstractSDRAM

The SDRAM space required by the vertex.

Return type:

AbstractSDRAM