pacman.model.partitioner_splitters package

Submodules

pacman.model.partitioner_splitters.splitter_reset module

Module contents

class pacman.model.partitioner_splitters.SplitterOneAppOneMachine

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 vertices 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 application 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

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 vertices 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 application 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

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 vertices 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 application 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

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 vertices 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 application 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.