spinn_front_end_common.utilities.utility_objs package

Subpackages

Module contents

class spinn_front_end_common.utilities.utility_objs.DPRIFlags(value)

Bases: Enum

SCP Dropped Packet Reinjection (DPRI) packet type flags.

FIXED_ROUTE = 8
MULTICAST = 1
NEAREST_NEIGHBOUR = 4
POINT_TO_POINT = 2
class spinn_front_end_common.utilities.utility_objs.ExecutableType

Bases: object

This class is deprecated. Please use spinnman.model.enums.ExecutableType

NO_APPLICATION = 3
RUNNING = 0
SYNC = 1
SYSTEM = 4
USES_SIMULATION_INTERFACE = 2
class spinn_front_end_common.utilities.utility_objs.LivePacketGatherParameters(port: int, hostname: str, tag: int | None = None, strip_sdp: bool = True, use_prefix: bool = False, key_prefix: int | None = None, prefix_type: EIEIOPrefix | None = None, message_type: EIEIOType = EIEIOType.KEY_32_BIT, right_shift: int = 0, payload_as_time_stamps: bool = True, use_payload_prefix: bool = True, payload_prefix: int | None = None, payload_right_shift: int = 0, number_of_packets_sent_per_time_step: int = 0, label: str | None = None, received_key_mask: int = 4294967295, translate_keys: bool = False, translated_key_right_shift: int = 0)

Bases: object

Parameter holder for LivePacketGatherers so that they can be instantiated at a later date.

Raises:

ConfigurationException – If the parameters passed are known to be an invalid combination.

get_iptag_resource() IPtagResource[source]

Get a description of the IPTag that the LPG for these parameters will require.

Return type:

IPtagResource

property hostname: str

Where to send data from SpiNNaker: the host name of the listening UDP socket.

Return type:

str

property key_prefix: int | None

The EIEIO key prefix to remove from messages.

property label: str | None

A label.

property message_type: EIEIOType

The type of messages to send.

Return type:

EIEIOType

property number_of_packets_sent_per_time_step: int

The maximum number of packets to send in a timestep.

Return type:

int

property payload_as_time_stamps: bool

Whether the payloads are timestamps.

Return type:

bool

property payload_prefix: int | None

The payload prefix to remove if applying compaction.

property payload_right_shift: int

Shift to apply to payloads.

Return type:

int

property port: int

Where to send data from SpiNNaker: the port of the listening UDP socket.

Return type:

int

property prefix_type: EIEIOPrefix | None

The type of prefix.

Return type:

EIEIOPrefix

property received_key_mask: int

A mask to select which keys are dispatched.

Return type:

int

property right_shift: int

Shift to apply to keys.

Return type:

int

property strip_sdp: bool

Whether to remove SDP headers from the messages before sending.

Return type:

bool

property tag: int | None

A fixed tag ID to assign, or None if any tag is OK

Return type:

int or None

property translate_keys: bool

Whether to apply translation to keys.

Return type:

bool

property translated_key_right_shift: int

Shift to apply in key translation.

Return type:

int

property use_payload_prefix: bool

Whether to use prefix compaction for payloads.

Return type:

bool

property use_prefix: bool

Whether to use EIEIO prefix compaction on keys.

Return type:

bool

class spinn_front_end_common.utilities.utility_objs.PowerUsed(n_chips: int, n_active_chips: int, n_cores: int, n_active_cores: int, n_boards: int, n_frames: int, exec_time_s: float, mapping_time_s: float, loading_time_s: float, saving_time_s: float, other_time_s: float, exec_energy_j: float, exec_energy_cores_j: float, exec_energy_boards_j: float, mapping_energy_j: float, loading_energy_j: float, saving_energy_j: float, other_energy_j: float)

Bases: object

Describes the power used by a simulation.

Parameters:
  • n_chips – The number of chips used

  • n_active_chips – The number of active chips used

  • n_cores – The number of cores used

  • n_active_cores – The number of active cores used

  • n_boards – The number of boards used

  • n_frames – The number of frames used

  • exec_time_s – The execution time in seconds

  • mapping_time_s – The mapping time in seconds

  • loading_time_s – The loading time in seconds

  • saving_time_s – The saving time in seconds

  • other_time_s – The other time in seconds

  • exec_energy_j – The execution energy of the whole system in Joules

  • exec_energy_cores_j – The execution energy of just active cores / chips in Joules

  • exec_energy_boards_j – The execution energy of the whole system except the Frames in Joules

  • mapping_energy_j – The mapping energy in Joules

  • loading_energy_j – The loading energy in Joules

  • saving_energy_j – The saving energy in Joules

  • other_energy_j – The other energy in Joules

property exec_energy_boards_j: float

Get the execution energy of just the whole system except the Frames in Joules

property exec_energy_cores_j: float

Get the execution energy of just active cores / chips in Joules

property exec_energy_j: float

Get the execution energy of the whole system in Joules

property exec_time_s: float

Get the execution time in seconds

property loading_energy_j: float

Get the loading energy in Joules

property loading_time_s: float

Get the loading time in seconds

property mapping_energy_j: float

Get the mapping energy in Joules

property mapping_time_s: float

Get the mapping time in seconds

property n_active_chips: int

Get the number of active chips used

property n_active_cores: int

Get the number of active cores used

property n_boards: int

Get the number of boards used

property n_chips: int

Get the number of chips used

property n_cores: int

Get the number of cores used

property n_frames: int

Get the number of frames used

property other_energy_j: float

Get the other energy in Joules

property other_time_s: float

Get the other time in seconds

property saving_energy_j: float

Get the saving energy in Joules

property saving_time_s: float

Get the saving time in seconds

property total_energy_j: float

Get the total energy in Joules

property total_time_s: float

Get the total time in seconds

class spinn_front_end_common.utilities.utility_objs.ReInjectionStatus(data: bytes, offset: int)

Bases: object

Represents a status information report from dropped packet reinjection.

Parameters:
  • data (bytes) – The data containing the information

  • offset (int) – The offset in the data where the information starts

property is_reinjecting_fixed_route: bool

True if re-injection of fixed-route packets is enabled.

Return type:

bool

property is_reinjecting_multicast: bool

True if re-injection of multicast packets is enabled.

Return type:

bool

property is_reinjecting_nearest_neighbour: bool

True if re-injection of nearest neighbour packets is enabled.

Return type:

bool

property is_reinjecting_point_to_point: bool

True if re-injection of point-to-point packets is enabled.

Return type:

bool

Ids of links where packets where dropped / reinjected

Return type:

list(int)

property n_dropped_packet_overflows: int

Of the n_dropped_packets received, how many were lost due to not having enough space in the queue of packets to reinject.

Return type:

int

property n_dropped_packets: int

The number of packets dropped by the router and received by the reinjection functionality (may not fit in the queue though).

Return type:

int

The number of times that when a dropped packet was caused due to a link failing to take the packet.

Return type:

int

property n_missed_dropped_packets: int

The number of times that when a dropped packet was read it was found that another one or more packets had also been dropped, but had been missed.

Return type:

int

property n_processor_dumps: int

The number of times that when a dropped packet was caused due to a processor failing to take the packet.

Return type:

int

property n_reinjected_packets: int

Of the n_dropped_packets received, how many packets were successfully re-injected.

Return type:

int

property processors_dropped_from: Sequence[int]

Ids of processors which failed to accept packets.

Return type:

list(int)

property router_wait1_timeout: int

The WAIT1 timeout value of the router, in cycles.

Return type:

int

property router_wait1_timeout_parameters: Tuple[int, int]

The WAIT1 timeout value of the router as mantissa and exponent.

Return type:

tuple(int,int)

property router_wait2_timeout: int

The WAIT2 timeout value of the router, in cycles.

Return type:

int

property router_wait2_timeout_parameters: Tuple[int, int]

The WAIT2 timeout value of the router as mantissa and exponent.

Return type:

tuple(int,int)