pacman.model.routing_table_by_partition package

Module contents

class pacman.model.routing_table_by_partition.MulticastRoutingTableByPartition[source]

Bases: object

A set of multicast routing path objects.

add_path_entry(entry, router_x, router_y, source_vertex, partition_id)[source]

Adds a multicast routing path entry.

Parameters:
get_entries_for_router(router_x, router_y)[source]

Get the set of multicast path entries assigned to this router.

Parameters:
  • router_x (int) – the x coord of the router
  • router_y (int) – the y coord of the router
Returns:

all router_path_entries for the router.

Return type:

dict((ApplicationVertex or MachineVertex), str), MulticastRoutingTableByPartitionEntry)

get_entry_on_coords_for_edge(source_vertex, partition_id, router_x, router_y)[source]

Get an entry from a specific coordinate.

Parameters:
Return type:

MulticastRoutingTableByPartitionEntry or None

get_routers()[source]

Get the coordinates of all stored routers.

Return type:iterable(tuple(int, int))
n_routers

The number of routers stored.

Return type:int
class pacman.model.routing_table_by_partition.MulticastRoutingTableByPartitionEntry(out_going_links, outgoing_processors, incoming_processor=None, incoming_link=None)[source]

Bases: object

An entry in a path of a multicast route.

Parameters:
  • out_going_links (iterable(int)) – the edges this path entry goes down, each of which is between 0 and 5
  • outgoing_processors (iterable(int)) – the processors this path entry goes to, each of which is between 0 and 17
  • incoming_processor (int) – the direction this entry came from (between 0 and 17)
  • incoming_link (int) – the direction this entry came from in link (between 0 and 5)
Raises:

PacmanInvalidParameterException

defaultable

The defaultable status of the entry.

Return type:bool
has_same_route(entry)[source]

The source link for this path entry.

Return type:int or None
incoming_processor

The source processor.

Return type:int or None

The destination links of the entry.

Return type:set(int)
merge_entry(other)[source]

Merges the another entry with this one and returns a new MulticastRoutingTableByPartitionEntry

Parameters:other (MulticastRoutingTableByPartitionEntry) – the entry to merge into this one
Returns:a merged MulticastRoutingTableByPartitionEntry
Raises:PacmanInvalidParameterException
processor_ids

The destination processors of the entry.

Return type:set(int)
spinnaker_route