Source code for spinn_front_end_common.interface.interface_functions.chip_runtime_updater

from spinn_front_end_common.utilities.exceptions import ConfigurationException

from spinnman.model.enums import CPUState
from spinn_front_end_common.utilities.scp import UpdateRuntimeProcess


[docs]class ChipRuntimeUpdater(object): """ Updates the runtime of an application running on a spinnaker machine """ __slots__ = [] def __call__( self, txrx, app_id, executable_targets, no_machine_timesteps, loaded_binaries_token): if not loaded_binaries_token: raise ConfigurationException( "The binaries must be loaded before the run time updater is" " called") txrx.wait_for_cores_to_be_in_state( executable_targets.all_core_subsets, app_id, [CPUState.PAUSED]) infinite_run = 0 if no_machine_timesteps is None: infinite_run = 1 no_machine_timesteps = 0 # TODO: Expose the connection selector in SpiNNMan process = UpdateRuntimeProcess(txrx._scamp_connection_selector) process.update_runtime( no_machine_timesteps, infinite_run, executable_targets.all_core_subsets, executable_targets.total_processors) return True