spinn_front_end_common.interface.interface_functions package

Submodules

spinn_front_end_common.interface.interface_functions.application_finisher module

class spinn_front_end_common.interface.interface_functions.application_finisher.ApplicationFinisher[source]

Bases: object

spinn_front_end_common.interface.interface_functions.application_runner module

class spinn_front_end_common.interface.interface_functions.application_runner.ApplicationRunner[source]

Bases: object

Ensures all cores are initialised correctly, ran, and completed successfully.

run_application(buffer_manager, notifier, executable_targets, executable_types, app_id, txrx, runtime, time_scale_factor, no_sync_changes, time_threshold, run_until_complete)[source]

spinn_front_end_common.interface.interface_functions.buffer_extractor module

class spinn_front_end_common.interface.interface_functions.buffer_extractor.BufferExtractor[source]

Bases: object

Extracts data in between runs

spinn_front_end_common.interface.interface_functions.buffer_manager_creator module

class spinn_front_end_common.interface.interface_functions.buffer_manager_creator.BufferManagerCreator[source]

Bases: object

spinn_front_end_common.interface.interface_functions.chip_iobuf_clearer module

class spinn_front_end_common.interface.interface_functions.chip_iobuf_clearer.ChipIOBufClearer[source]

Bases: object

Updates the runtime of an application running on a spinnaker machine

spinn_front_end_common.interface.interface_functions.chip_iobuf_extractor module

class spinn_front_end_common.interface.interface_functions.chip_iobuf_extractor.ChipIOBufExtractor[source]

Bases: object

Extract iobuf buffers from the machine, and separates lines based on their prefix

spinn_front_end_common.interface.interface_functions.chip_provenance_updater module

class spinn_front_end_common.interface.interface_functions.chip_provenance_updater.ChipProvenanceUpdater[source]

Bases: object

Forces all cores to generate provenance data, and then exit

spinn_front_end_common.interface.interface_functions.chip_runtime_updater module

class spinn_front_end_common.interface.interface_functions.chip_runtime_updater.ChipRuntimeUpdater[source]

Bases: object

Updates the runtime of an application running on a spinnaker machine

spinn_front_end_common.interface.interface_functions.database_interface module

class spinn_front_end_common.interface.interface_functions.database_interface.DatabaseInterface[source]

Bases: object

Writes a database of the graph(s) and other information

database_file_path
needs_database

spinn_front_end_common.interface.interface_functions.dsg_region_reloader module

class spinn_front_end_common.interface.interface_functions.dsg_region_reloader.DSGRegionReloader[source]

Bases: object

Regenerates Data Specifications

spinn_front_end_common.interface.interface_functions.edge_to_n_keys_mapper module

class spinn_front_end_common.interface.interface_functions.edge_to_n_keys_mapper.EdgeToNKeysMapper[source]

Bases: object

Works out the number of keys needed for each edge

spinn_front_end_common.interface.interface_functions.graph_binary_gatherer module

class spinn_front_end_common.interface.interface_functions.graph_binary_gatherer.GraphBinaryGatherer[source]

Bases: object

Extracts binaries to be executed

spinn_front_end_common.interface.interface_functions.graph_data_specification_writer module

class spinn_front_end_common.interface.interface_functions.graph_data_specification_writer.GraphDataSpecificationWriter[source]

Bases: object

Executes data specification generation

spinn_front_end_common.interface.interface_functions.graph_measurer module

class spinn_front_end_common.interface.interface_functions.graph_measurer.GraphMeasurer[source]

Bases: object

Works out how many chips a machine graph needs

spinn_front_end_common.interface.interface_functions.graph_provenance_gatherer module

class spinn_front_end_common.interface.interface_functions.graph_provenance_gatherer.GraphProvenanceGatherer[source]

Bases: object

spinn_front_end_common.interface.interface_functions.hbp_allocator module

class spinn_front_end_common.interface.interface_functions.hbp_allocator.HBPAllocator[source]

Bases: object

Request a machine from the HBP remote access server that will fit a number of chips

spinn_front_end_common.interface.interface_functions.hbp_max_machine_generator module

class spinn_front_end_common.interface.interface_functions.hbp_max_machine_generator.HBPMaxMachineGenerator[source]

Bases: object

Generates the width and height of the maximum machine a given HBP server can generate

spinn_front_end_common.interface.interface_functions.host_execute_data_specification module

class spinn_front_end_common.interface.interface_functions.host_execute_data_specification.HostExecuteDataSpecification[source]

Bases: object

Executes the host based data specification

spinn_front_end_common.interface.interface_functions.insert_chip_power_monitors_to_graphs module

class spinn_front_end_common.interface.interface_functions.insert_chip_power_monitors_to_graphs.InsertChipPowerMonitorsToGraphs[source]

Bases: object

function to add chip power monitors into a given graph

spinn_front_end_common.interface.interface_functions.insert_edges_to_live_packet_gatherers module

class spinn_front_end_common.interface.interface_functions.insert_edges_to_live_packet_gatherers.InsertEdgesToLivePacketGatherers[source]

Bases: object

Add edges from the recorded vertices to the local Live PacketGatherers

spinn_front_end_common.interface.interface_functions.insert_extra_monitor_vertices_to_graphs module

class spinn_front_end_common.interface.interface_functions.insert_extra_monitor_vertices_to_graphs.InsertExtraMonitorVerticesToGraphs[source]

Bases: object

inserts the extra monitor vertices into the graph.

spinn_front_end_common.interface.interface_functions.insert_live_packet_gatherers_to_graphs module

class spinn_front_end_common.interface.interface_functions.insert_live_packet_gatherers_to_graphs.InsertLivePacketGatherersToGraphs[source]

Bases: object

function to add LPG’s as required into a given graph

spinn_front_end_common.interface.interface_functions.load_executable_images module

class spinn_front_end_common.interface.interface_functions.load_executable_images.LoadExecutableImages[source]

Bases: object

spinn_front_end_common.interface.interface_functions.load_fixed_routes module

class spinn_front_end_common.interface.interface_functions.load_fixed_routes.LoadFixedRoutes[source]

Bases: object

spinn_front_end_common.interface.interface_functions.locate_executable_start_type module

class spinn_front_end_common.interface.interface_functions.locate_executable_start_type.LocateExecutableStartType[source]

Bases: object

spinn_front_end_common.interface.interface_functions.machine_execute_data_specification module

class spinn_front_end_common.interface.interface_functions.machine_execute_data_specification.MachineExecuteDataSpecification[source]

Bases: object

Executes the machine based data specification

spinnaker_based_data_specification_execution(write_memory_map_report, dsg_targets, transceiver, app_id)[source]
Parameters:
  • write_memory_map_report
  • dsg_targets
  • transceiver
  • app_id
Returns:

True

Return type:

bool

spinn_front_end_common.interface.interface_functions.machine_generator module

class spinn_front_end_common.interface.interface_functions.machine_generator.MachineGenerator[source]

Bases: object

Interface to make a transceiver and a spinn_machine object

spinn_front_end_common.interface.interface_functions.notification_protocol module

class spinn_front_end_common.interface.interface_functions.notification_protocol.NotificationProtocol[source]

Bases: object

The notification protocol for external device interaction

send_read_notification(database_directory)[source]

Send the read notifications via the notification protocol

Parameters:database_directory – the path to the database
Return type:None:
send_start_resume_notification()[source]

Send the start notifications via the notification protocol

Return type:None:
send_stop_pause_notification()[source]

Send the stop or pause notifications via the notification protocol

Return type:None:
stop()[source]

Ends the notification protocol

Return type:None:
wait_for_confirmation()[source]

Waits for devices to confirm they have read the database via the notification protocol

Return type:None:

spinn_front_end_common.interface.interface_functions.placements_provenance_gatherer module

class spinn_front_end_common.interface.interface_functions.placements_provenance_gatherer.PlacementsProvenanceGatherer[source]

Bases: object

spinn_front_end_common.interface.interface_functions.pre_allocate_resources_for_chip_power_monitor module

class spinn_front_end_common.interface.interface_functions.pre_allocate_resources_for_chip_power_monitor.PreAllocateResourcesForChipPowerMonitor[source]

Bases: object

Adds chip power monitor resources as required for a machine

spinn_front_end_common.interface.interface_functions.pre_allocate_resources_for_live_packet_gatherers module

class spinn_front_end_common.interface.interface_functions.pre_allocate_resources_for_live_packet_gatherers.PreAllocateResourcesForLivePacketGatherers[source]

Bases: object

Adds Live Packet Gatherer resources as required for a machine

spinn_front_end_common.interface.interface_functions.preallocate_resources_for_extra_monitor_support module

class spinn_front_end_common.interface.interface_functions.preallocate_resources_for_extra_monitor_support.PreAllocateResourcesForExtraMonitorSupport[source]

Bases: object

allocate resources needed for the extra monitor support

spinn_front_end_common.interface.interface_functions.profile_data_gatherer module

class spinn_front_end_common.interface.interface_functions.profile_data_gatherer.ProfileDataGatherer[source]

Bases: object

spinn_front_end_common.interface.interface_functions.provenance_json_writer module

class spinn_front_end_common.interface.interface_functions.provenance_json_writer.ProvenanceJSONWriter[source]

Bases: object

Write provenance data into JSON

VALID_CHARS = frozenset([' ', ')', '(', '-', '.', '1', '0', '3', '2', '5', '4', '7', '6', '9', '8', 'A', 'C', 'B', 'E', 'D', 'G', 'F', 'I', 'H', 'K', 'J', 'M', 'L', 'O', 'N', 'Q', 'P', 'S', 'R', 'U', 'T', 'W', 'V', 'Y', 'X', 'Z', '_', 'a', 'c', 'b', 'e', 'd', 'g', 'f', 'i', 'h', 'k', 'j', 'm', 'l', 'o', 'n', 'q', 'p', 's', 'r', 'u', 't', 'w', 'v', 'y', 'x', 'z'])

spinn_front_end_common.interface.interface_functions.provenance_xml_writer module

class spinn_front_end_common.interface.interface_functions.provenance_xml_writer.ProvenanceXMLWriter[source]

Bases: object

Write provenance data into XML

VALID_CHARS = frozenset([' ', ')', '(', '-', '.', '1', '0', '3', '2', '5', '4', '7', '6', '9', '8', 'A', 'C', 'B', 'E', 'D', 'G', 'F', 'I', 'H', 'K', 'J', 'M', 'L', 'O', 'N', 'Q', 'P', 'S', 'R', 'U', 'T', 'W', 'V', 'Y', 'X', 'Z', '_', 'a', 'c', 'b', 'e', 'd', 'g', 'f', 'i', 'h', 'k', 'j', 'm', 'l', 'o', 'n', 'q', 'p', 's', 'r', 'u', 't', 'w', 'v', 'y', 'x', 'z'])

spinn_front_end_common.interface.interface_functions.router_provenance_gatherer module

class spinn_front_end_common.interface.interface_functions.router_provenance_gatherer.RouterProvenanceGatherer[source]

Bases: object

RouterProvenanceGatherer: gathers diagnostics from the routers.

spinn_front_end_common.interface.interface_functions.routing_setup module

class spinn_front_end_common.interface.interface_functions.routing_setup.RoutingSetup[source]

Bases: object

spinn_front_end_common.interface.interface_functions.routing_table_loader module

class spinn_front_end_common.interface.interface_functions.routing_table_loader.RoutingTableLoader[source]

Bases: object

spinn_front_end_common.interface.interface_functions.spalloc_allocator module

class spinn_front_end_common.interface.interface_functions.spalloc_allocator.SpallocAllocator[source]

Bases: object

Request a machine from a SPALLOC server that will fit the given number of chips

spinn_front_end_common.interface.interface_functions.spalloc_max_machine_generator module

class spinn_front_end_common.interface.interface_functions.spalloc_max_machine_generator.SpallocMaxMachineGenerator[source]

Bases: object

Generates the width and height of the maximum machine a given allocation server can generate

spinn_front_end_common.interface.interface_functions.tags_loader module

class spinn_front_end_common.interface.interface_functions.tags_loader.TagsLoader[source]

Bases: object

Loads tags onto the machine

static load_iptags(iptags, transceiver, progress_bar)[source]

Loads all the iptags individually.

Parameters:
  • iptags – the iptags to be loaded.
  • transceiver – the transceiver object
Return type:

None

static load_reverse_iptags(reverse_ip_tags, transceiver, progress_bar)[source]

Loads all the reverse iptags individually.

Parameters:
  • reverse_ip_tags – the reverse iptags to be loaded
  • transceiver – the transceiver object
Return type:

None

spinn_front_end_common.interface.interface_functions.tdma_agenda_builder module

class spinn_front_end_common.interface.interface_functions.tdma_agenda_builder.TDMAAgendaBuilder[source]

Bases: object

algorithm that builds an agenda for transmissions. It uses a TDMA (Time division multiple access) system and graph colouring to deduce the agenda set up. Ensures parallel transmissions so that the destination should never be overloaded

spinn_front_end_common.interface.interface_functions.virtual_machine_generator module

class spinn_front_end_common.interface.interface_functions.virtual_machine_generator.VirtualMachineGenerator[source]

Bases: object

Module contents

class spinn_front_end_common.interface.interface_functions.ApplicationFinisher[source]

Bases: object

class spinn_front_end_common.interface.interface_functions.ApplicationRunner[source]

Bases: object

Ensures all cores are initialised correctly, ran, and completed successfully.

run_application(buffer_manager, notifier, executable_targets, executable_types, app_id, txrx, runtime, time_scale_factor, no_sync_changes, time_threshold, run_until_complete)[source]
class spinn_front_end_common.interface.interface_functions.BufferExtractor[source]

Bases: object

Extracts data in between runs

class spinn_front_end_common.interface.interface_functions.BufferManagerCreator[source]

Bases: object

class spinn_front_end_common.interface.interface_functions.ChipIOBufClearer[source]

Bases: object

Updates the runtime of an application running on a spinnaker machine

class spinn_front_end_common.interface.interface_functions.ChipIOBufExtractor[source]

Bases: object

Extract iobuf buffers from the machine, and separates lines based on their prefix

class spinn_front_end_common.interface.interface_functions.ChipProvenanceUpdater[source]

Bases: object

Forces all cores to generate provenance data, and then exit

class spinn_front_end_common.interface.interface_functions.ChipRuntimeUpdater[source]

Bases: object

Updates the runtime of an application running on a spinnaker machine

class spinn_front_end_common.interface.interface_functions.DatabaseInterface[source]

Bases: object

Writes a database of the graph(s) and other information

database_file_path
needs_database
class spinn_front_end_common.interface.interface_functions.DSGRegionReloader[source]

Bases: object

Regenerates Data Specifications

class spinn_front_end_common.interface.interface_functions.EdgeToNKeysMapper[source]

Bases: object

Works out the number of keys needed for each edge

class spinn_front_end_common.interface.interface_functions.GraphBinaryGatherer[source]

Bases: object

Extracts binaries to be executed

class spinn_front_end_common.interface.interface_functions.GraphDataSpecificationWriter[source]

Bases: object

Executes data specification generation

class spinn_front_end_common.interface.interface_functions.GraphMeasurer[source]

Bases: object

Works out how many chips a machine graph needs

class spinn_front_end_common.interface.interface_functions.GraphProvenanceGatherer[source]

Bases: object

class spinn_front_end_common.interface.interface_functions.HBPAllocator[source]

Bases: object

Request a machine from the HBP remote access server that will fit a number of chips

class spinn_front_end_common.interface.interface_functions.HBPMaxMachineGenerator[source]

Bases: object

Generates the width and height of the maximum machine a given HBP server can generate

class spinn_front_end_common.interface.interface_functions.HostExecuteDataSpecification[source]

Bases: object

Executes the host based data specification

class spinn_front_end_common.interface.interface_functions.InsertEdgesToLivePacketGatherers[source]

Bases: object

Add edges from the recorded vertices to the local Live PacketGatherers

class spinn_front_end_common.interface.interface_functions.InsertLivePacketGatherersToGraphs[source]

Bases: object

function to add LPG’s as required into a given graph

class spinn_front_end_common.interface.interface_functions.LoadExecutableImages[source]

Bases: object

class spinn_front_end_common.interface.interface_functions.LocateExecutableStartType[source]

Bases: object

class spinn_front_end_common.interface.interface_functions.MachineExecuteDataSpecification[source]

Bases: object

Executes the machine based data specification

spinnaker_based_data_specification_execution(write_memory_map_report, dsg_targets, transceiver, app_id)[source]
Parameters:
  • write_memory_map_report
  • dsg_targets
  • transceiver
  • app_id
Returns:

True

Return type:

bool

class spinn_front_end_common.interface.interface_functions.MachineGenerator[source]

Bases: object

Interface to make a transceiver and a spinn_machine object

class spinn_front_end_common.interface.interface_functions.NotificationProtocol[source]

Bases: object

The notification protocol for external device interaction

send_read_notification(database_directory)[source]

Send the read notifications via the notification protocol

Parameters:database_directory – the path to the database
Return type:None:
send_start_resume_notification()[source]

Send the start notifications via the notification protocol

Return type:None:
send_stop_pause_notification()[source]

Send the stop or pause notifications via the notification protocol

Return type:None:
stop()[source]

Ends the notification protocol

Return type:None:
wait_for_confirmation()[source]

Waits for devices to confirm they have read the database via the notification protocol

Return type:None:
class spinn_front_end_common.interface.interface_functions.PlacementsProvenanceGatherer[source]

Bases: object

class spinn_front_end_common.interface.interface_functions.PreAllocateResourcesForLivePacketGatherers[source]

Bases: object

Adds Live Packet Gatherer resources as required for a machine

class spinn_front_end_common.interface.interface_functions.ProvenanceJSONWriter[source]

Bases: object

Write provenance data into JSON

VALID_CHARS = frozenset([' ', ')', '(', '-', '.', '1', '0', '3', '2', '5', '4', '7', '6', '9', '8', 'A', 'C', 'B', 'E', 'D', 'G', 'F', 'I', 'H', 'K', 'J', 'M', 'L', 'O', 'N', 'Q', 'P', 'S', 'R', 'U', 'T', 'W', 'V', 'Y', 'X', 'Z', '_', 'a', 'c', 'b', 'e', 'd', 'g', 'f', 'i', 'h', 'k', 'j', 'm', 'l', 'o', 'n', 'q', 'p', 's', 'r', 'u', 't', 'w', 'v', 'y', 'x', 'z'])
class spinn_front_end_common.interface.interface_functions.ProvenanceXMLWriter[source]

Bases: object

Write provenance data into XML

VALID_CHARS = frozenset([' ', ')', '(', '-', '.', '1', '0', '3', '2', '5', '4', '7', '6', '9', '8', 'A', 'C', 'B', 'E', 'D', 'G', 'F', 'I', 'H', 'K', 'J', 'M', 'L', 'O', 'N', 'Q', 'P', 'S', 'R', 'U', 'T', 'W', 'V', 'Y', 'X', 'Z', '_', 'a', 'c', 'b', 'e', 'd', 'g', 'f', 'i', 'h', 'k', 'j', 'm', 'l', 'o', 'n', 'q', 'p', 's', 'r', 'u', 't', 'w', 'v', 'y', 'x', 'z'])
class spinn_front_end_common.interface.interface_functions.RouterProvenanceGatherer[source]

Bases: object

RouterProvenanceGatherer: gathers diagnostics from the routers.

class spinn_front_end_common.interface.interface_functions.RoutingSetup[source]

Bases: object

class spinn_front_end_common.interface.interface_functions.RoutingTableLoader[source]

Bases: object

class spinn_front_end_common.interface.interface_functions.SpallocAllocator[source]

Bases: object

Request a machine from a SPALLOC server that will fit the given number of chips

class spinn_front_end_common.interface.interface_functions.SpallocMaxMachineGenerator[source]

Bases: object

Generates the width and height of the maximum machine a given allocation server can generate

class spinn_front_end_common.interface.interface_functions.TagsLoader[source]

Bases: object

Loads tags onto the machine

static load_iptags(iptags, transceiver, progress_bar)[source]

Loads all the iptags individually.

Parameters:
  • iptags – the iptags to be loaded.
  • transceiver – the transceiver object
Return type:

None

static load_reverse_iptags(reverse_ip_tags, transceiver, progress_bar)[source]

Loads all the reverse iptags individually.

Parameters:
  • reverse_ip_tags – the reverse iptags to be loaded
  • transceiver – the transceiver object
Return type:

None

class spinn_front_end_common.interface.interface_functions.TDMAAgendaBuilder[source]

Bases: object

algorithm that builds an agenda for transmissions. It uses a TDMA (Time division multiple access) system and graph colouring to deduce the agenda set up. Ensures parallel transmissions so that the destination should never be overloaded

class spinn_front_end_common.interface.interface_functions.VirtualMachineGenerator[source]

Bases: object