spinn_front_end_common.abstract_models package¶
Module contents¶
-
class
spinn_front_end_common.abstract_models.
AbstractGeneratesDataSpecification
[source]¶ Bases:
object
-
generate_data_specification
(spec, placement)[source]¶ Generate a data specification.
Parameters: - spec (DataSpecificationGenerator) – The data specification to write to
- placement (Placement) – The placement the vertex is located at
-
-
class
spinn_front_end_common.abstract_models.
AbstractHasAssociatedBinary
[source]¶ Bases:
object
Marks a machine graph vertex that can be launched on a SpiNNaker core.
-
get_binary_start_type
()[source]¶ Get the start type of the binary to be run.
Return type: ExecutableType
-
-
class
spinn_front_end_common.abstract_models.
AbstractMachineAllocationController
[source]¶ Bases:
object
An object that controls the allocation of a machine
-
create_transceiver
()[source]¶ Create a transceiver for talking to the allocated machine, and make sure everything is ready for use (i.e. boot and discover connections if needed).
Return type: Transceiver
-
extend_allocation
(new_total_run_time)[source]¶ Extend the allocation of the machine from the original run time.
Parameters: new_total_run_time (float) – The total run time that is now required starting from when the machine was first allocated
-
make_report
(filename)[source]¶ Asks the controller to make a report of details of allocations. By default, this does nothing.
-
open_eieio_connection
(chip_x, chip_y)[source]¶ Open a connection to a specific ethernet chip for EIEIO. Caller will have to arrange for SpiNNaker to pay attention to the connection.
Parameters: Return type:
-
open_eieio_listener
()[source]¶ Open an unbound EIEIO connection.
Return type: EIEIOConnection
-
-
class
spinn_front_end_common.abstract_models.
AbstractRewritesDataSpecification
[source]¶ Bases:
object
Indicates an object that allows data to be changed after run, and so can rewrite the data specification.
-
regenerate_data_specification
(spec, placement)[source]¶ Regenerate the data specification, only generating regions that have changed and need to be reloaded.
Parameters: - spec (DataSpecificationGenerator) – Where to write the regenerated spec
- placement (Placement) – Where are we regenerating for?
-
-
class
spinn_front_end_common.abstract_models.
AbstractSendMeMulticastCommandsVertex
[source]¶ Bases:
object
A device that may be a virtual vertex which wants to commands to be sent to it as multicast packets at fixed points in the simulation.
Note
The device might not be a vertex at all. It could instead be instantiated entirely host side, in which case these methods will never be called.
-
pause_stop_commands
¶ The commands needed when pausing or stopping simulation.
Return type: iterable(MultiCastCommand)
-
start_resume_commands
¶ The commands needed when starting or resuming simulation.
Return type: iterable(MultiCastCommand)
-
timed_commands
¶ The commands to be sent at given times in the simulation.
Return type: iterable(MultiCastCommand)
-
-
class
spinn_front_end_common.abstract_models.
AbstractSupportsDatabaseInjection
[source]¶ Bases:
object
Marks a machine vertex as supporting injection of information via a database running on the controlling host.
-
class
spinn_front_end_common.abstract_models.
AbstractVertexWithEdgeToDependentVertices
[source]¶ Bases:
object
A vertex with a dependent vertices, which should be connected to this vertex by an edge directly to each of them.
-
dependent_vertices
()[source]¶ Return the vertices which this vertex depends upon.
Return type: iterable(ApplicationVertex)
-
edge_partition_identifiers_for_dependent_vertex
(vertex)[source]¶ Return the dependent edge identifiers for a particular dependent vertex.
Parameters: vertex (ApplicationVertex) – Return type: iterable(str)
-
-
class
spinn_front_end_common.abstract_models.
AbstractCanReset
[source]¶ Bases:
object
Indicates an object that can be reset to time 0.
This is used when AbstractSpinnakerBase.reset is called. All Vertices and all edges in the original graph (the one added to by the user) will be checked and reset.
-
class
spinn_front_end_common.abstract_models.
AbstractSupportsBitFieldGeneration
[source]¶ Bases:
object
Marks a vertex that can provide information about bitfields it wants generated on-chip.
-
class
spinn_front_end_common.abstract_models.
AbstractSupportsBitFieldRoutingCompression
[source]¶ Bases:
object
Marks a machine vertex that can support having the on-chip bitfield compressor running on its core.
-
bit_field_base_address
(placement)[source]¶ Returns the SDRAM address for the bit-field table data.
Parameters: placement (Placement) – Returns: the SDRAM address for the bitfield address Return type: int
-
regeneratable_sdram_blocks_and_sizes
(placement)[source]¶ Returns the SDRAM addresses and sizes for the cores’ SDRAM that are available (borrowed) for generating bitfield tables.
Parameters: placement (Placement) – Returns: list of tuples containing (the SDRAM address for the cores SDRAM address’s for the core’s SDRAM that can be used to generate bitfield tables loaded, and the size of memory chunks located there) Return type: list(tuple(int,int))
-
-
class
spinn_front_end_common.abstract_models.
HasCustomAtomKeyMap
[source]¶ Bases:
object
An object that can provide a custom atom-key mapping for a partition. Useful when there isn’t a one-to-one correspondence between atoms and keys for a given partition.
-
get_atom_key_map
(pre_vertex, partition_id, routing_info)[source]¶ Get the mapping between atoms and keys for the given partition id, and for the given machine pre-vertex.
Parameters: - pre_vertex (MachineVertex) – The machine vertex to get the map for
- partition_id (str) – The partition to get the map for
- routing_info (RoutingInfo) – Routing information
Returns: A list of (atom_id, key)
Return type:
-