pacman.model.partitioner_splitters package

Module contents

class pacman.model.partitioner_splitters.SplitterOneAppOneMachine[source]

Bases: pacman.model.partitioner_splitters.abstract_splitters.abstract_splitter_common.AbstractSplitterCommon

Splitter that handles AbstractOneAppOneMachineVertex vertices.

create_machine_vertices(chip_counter)[source]

Method for specific splitter objects to override.

Parameters:chip_counter (ChipCounter) – counter of used chips
get_in_coming_slices()[source]

The slices of the input vertices.

Returns:list of Slices
Return type:list(Slice)
get_in_coming_vertices(partition_id)[source]

Get machine post-vertices for a given partition.

The input vertices are the ones that will serve as target vertices for external edges.

Note

This method returns all that could be used for any source machine vertex in the given partition.

Parameters:partition_id (str) – The identifier of the incoming partition
Return type:list(MachineVertex)
get_out_going_slices()[source]

The slices of the output vertices.

Returns:list of Slices
Return type:list(Slice)
get_out_going_vertices(partition_id)[source]

Get machine pre-vertices.

The output vertices are the ones that will serve as source vertices for external edges.

Parameters:partition_id (str) – The identifier of the outgoing partition
Return type:list(MachineVertex)
machine_vertices_for_recording(variable_to_record)[source]

Gets the machine vertices which are recording this variable.

Parameters:variable_to_record (str) – the variable to get machine verts for.
Returns:list of machine vertices
Return type:iterable(MachineVertex)
reset_called()[source]

Reset the splitter to be as if it has not operated a splitting yet.

set_governed_app_vertex(app_vertex)[source]

Sets a app vertex to be governed by this splitter object. Once set it can’t be reset.

Parameters:app_vertex (ApplicationVertex) – the app vertex to govern
Raises:PacmanConfigurationException – if the app vertex has already been set.
class pacman.model.partitioner_splitters.SplitterOneToOneLegacy[source]

Bases: pacman.model.partitioner_splitters.abstract_splitters.abstract_splitter_common.AbstractSplitterCommon

create_machine_vertices(chip_counter)[source]

Method for specific splitter objects to override.

Parameters:chip_counter (ChipCounter) – counter of used chips
get_in_coming_slices()[source]

The slices of the input vertices.

Returns:list of Slices
Return type:list(Slice)
get_in_coming_vertices(partition_id)[source]

Get machine post-vertices for a given partition.

The input vertices are the ones that will serve as target vertices for external edges.

Note

This method returns all that could be used for any source machine vertex in the given partition.

Parameters:partition_id (str) – The identifier of the incoming partition
Return type:list(MachineVertex)
get_out_going_slices()[source]

The slices of the output vertices.

Returns:list of Slices
Return type:list(Slice)
get_out_going_vertices(partition_id)[source]

Get machine pre-vertices.

The output vertices are the ones that will serve as source vertices for external edges.

Parameters:partition_id (str) – The identifier of the outgoing partition
Return type:list(MachineVertex)
machine_vertices_for_recording(variable_to_record)[source]

Gets the machine vertices which are recording this variable.

Parameters:variable_to_record (str) – the variable to get machine verts for.
Returns:list of machine vertices
Return type:iterable(MachineVertex)
reset_called()[source]

Reset the splitter to be as if it has not operated a splitting yet.

set_governed_app_vertex(app_vertex)[source]

Sets a app vertex to be governed by this splitter object. Once set it can’t be reset.

Parameters:app_vertex (ApplicationVertex) – the app vertex to govern
Raises:PacmanConfigurationException – if the app vertex has already been set.
class pacman.model.partitioner_splitters.SplitterFixedLegacy[source]

Bases: pacman.model.partitioner_splitters.abstract_splitters.abstract_splitter_common.AbstractSplitterCommon

Splitter for old-style vertices.

create_machine_vertices(chip_counter)[source]

Method for specific splitter objects to override.

Parameters:chip_counter (ChipCounter) – counter of used chips
get_in_coming_slices()[source]

The slices of the input vertices.

Returns:list of Slices
Return type:list(Slice)
get_in_coming_vertices(partition_id)[source]

Get machine post-vertices for a given partition.

The input vertices are the ones that will serve as target vertices for external edges.

Note

This method returns all that could be used for any source machine vertex in the given partition.

Parameters:partition_id (str) – The identifier of the incoming partition
Return type:list(MachineVertex)
get_out_going_slices()[source]

The slices of the output vertices.

Returns:list of Slices
Return type:list(Slice)
get_out_going_vertices(partition_id)[source]

Get machine pre-vertices.

The output vertices are the ones that will serve as source vertices for external edges.

Parameters:partition_id (str) – The identifier of the outgoing partition
Return type:list(MachineVertex)
machine_vertices_for_recording(variable_to_record)[source]

Gets the machine vertices which are recording this variable.

Parameters:variable_to_record (str) – the variable to get machine verts for.
Returns:list of machine vertices
Return type:iterable(MachineVertex)
reset_called()[source]

Reset the splitter to be as if it has not operated a splitting yet.

set_governed_app_vertex(app_vertex)[source]

Sets a app vertex to be governed by this splitter object. Once set it can’t be reset.

Parameters:app_vertex (ApplicationVertex) – the app vertex to govern
Raises:PacmanConfigurationException – if the app vertex has already been set.
class pacman.model.partitioner_splitters.SplitterExternalDevice[source]

Bases: pacman.model.partitioner_splitters.abstract_splitters.abstract_splitter_common.AbstractSplitterCommon

A splitter for handling external devices.

create_machine_vertices(chip_counter)[source]

Method for specific splitter objects to override.

Parameters:chip_counter (ChipCounter) – counter of used chips
get_in_coming_slices()[source]

The slices of the input vertices.

Returns:list of Slices
Return type:list(Slice)
get_in_coming_vertices(partition_id)[source]

Get machine post-vertices for a given partition.

The input vertices are the ones that will serve as target vertices for external edges.

Note

This method returns all that could be used for any source machine vertex in the given partition.

Parameters:partition_id (str) – The identifier of the incoming partition
Return type:list(MachineVertex)
get_out_going_slices()[source]

The slices of the output vertices.

Returns:list of Slices
Return type:list(Slice)
get_out_going_vertices(partition_id)[source]

Get machine pre-vertices.

The output vertices are the ones that will serve as source vertices for external edges.

Parameters:partition_id (str) – The identifier of the outgoing partition
Return type:list(MachineVertex)
machine_vertices_for_recording(variable_to_record)[source]

Gets the machine vertices which are recording this variable.

Parameters:variable_to_record (str) – the variable to get machine verts for.
Returns:list of machine vertices
Return type:iterable(MachineVertex)
reset_called()[source]

Reset the splitter to be as if it has not operated a splitting yet.

set_governed_app_vertex(app_vertex)[source]

Sets a app vertex to be governed by this splitter object. Once set it can’t be reset.

Parameters:app_vertex (ApplicationVertex) – the app vertex to govern
Raises:PacmanConfigurationException – if the app vertex has already been set.