def run_load(self, utility_file):

        utility = SpinnmanUtilities(utility_file)
        run_time = utility.get_run_time()
        total_processors_of_app = utility.get_total_processors()
        app_loads = utility.get_app_loads()

        total_processors = 0
        app_id = None
        for app_load in app_loads:
            self.app_calls.app_load(app_load['key'], app_load['region'],
                                    app_load['core_part_of_region'],
                                    app_load['app_id'])
            app_id = app_load['app_id']
            processors_ready = 0

            logger.debug("checking that the processors currently"
                         " flood filled are ready for future flood fills")
            while processors_ready < total_processors:
                processors_ready = \
                    self.app_calls.app_signal(app_id, scamp.SIGNAL_COUNT,
                                              scamp.PROCESSOR_SYNC0)
                logger.debug("{} processors out of {} processors are "
                             "ready".format(processors_ready,
                                            total_processors))

        self.check_synco_and_run(total_processors_of_app, app_id, run_time)
 def load_write_mem_load(self, file_name):
     self.utility = SpinnmanUtilities(input_file=file_name)
     commands = self.utility.get_mem_writes()
     for index in range(0, len(commands), 2):
         self.select(int(commands[index]['x']), int(commands[index]['y']),
                     int(commands[index]['p']))
         self.memory_calls.write_mem(int(commands[index + 1]['address']),
                                     int(commands[index + 1]['type_word']),
                                     commands[index + 1]['structure'])
    def load_targets(self, dao):
        """
        Loads LoadTargets from the datastore and calls
        :py:func:`pacman103.pacman.transceiver.Transceiver.load_targets_raw`.
        """
        if conf.config.get("Reports", "write_reload_steps"):
            self.utility = SpinnmanUtilities(dao=dao)
        #check to see if the machine is contactable & loadable
        self.check_target_machine(dao.machine.hostname, dao.machine.y_dim,
                                  dao.machine.y_dim)

        # now get the data to load and then do it
        targets = dao.get_load_targets()
        self.load_targets_raw(targets)