Loading raps/engine.py +8 −6 Original line number Diff line number Diff line Loading @@ -116,12 +116,14 @@ class Engine: if len(scheduled_nodes) > 0: self.flops_manager.update_flop_state(scheduled_nodes, cpu_utils, gpu_utils) jobs_power = self.power_manager.update_power_state(scheduled_nodes, cpu_utils, gpu_utils, net_utils) job_index = 0 for job in self.running: if job.state == JobState.RUNNING: _running_jobs = [job for job in self.running if job.state == JobState.RUNNING] if len(jobs_power) != len(_running_jobs): raise ValueError(f"Jobs power list of length ({len(jobs_power)}) should have ({len(running_jobs)}) items.") for i, job in enumerate(_running_jobs): if job.running_time % self.config['TRACE_QUANTA'] == 0: job.power_history.append(jobs_power[job_index] * len(job.scheduled_nodes)) job_index += len(job.scheduled_nodes) job.power_history.append(jobs_power[i] * len(job.scheduled_nodes)) del _running_jobs for job in completed_jobs: self.running.remove(job) Loading raps/power.py +1 −1 Original line number Diff line number Diff line Loading @@ -278,7 +278,7 @@ class PowerManager: power_value, sivoc_loss = self.power_func(cpu_util_flat, gpu_util_flat, net_util_flat, self.config) self.power_state[node_indices] = power_value self.sivoc_loss[node_indices] = sivoc_loss return power_value return power_value[np.cumsum(job_lengths) - 1] def calculate_rectifiers_needed(self, power_state_summed): Loading Loading
raps/engine.py +8 −6 Original line number Diff line number Diff line Loading @@ -116,12 +116,14 @@ class Engine: if len(scheduled_nodes) > 0: self.flops_manager.update_flop_state(scheduled_nodes, cpu_utils, gpu_utils) jobs_power = self.power_manager.update_power_state(scheduled_nodes, cpu_utils, gpu_utils, net_utils) job_index = 0 for job in self.running: if job.state == JobState.RUNNING: _running_jobs = [job for job in self.running if job.state == JobState.RUNNING] if len(jobs_power) != len(_running_jobs): raise ValueError(f"Jobs power list of length ({len(jobs_power)}) should have ({len(running_jobs)}) items.") for i, job in enumerate(_running_jobs): if job.running_time % self.config['TRACE_QUANTA'] == 0: job.power_history.append(jobs_power[job_index] * len(job.scheduled_nodes)) job_index += len(job.scheduled_nodes) job.power_history.append(jobs_power[i] * len(job.scheduled_nodes)) del _running_jobs for job in completed_jobs: self.running.remove(job) Loading
raps/power.py +1 −1 Original line number Diff line number Diff line Loading @@ -278,7 +278,7 @@ class PowerManager: power_value, sivoc_loss = self.power_func(cpu_util_flat, gpu_util_flat, net_util_flat, self.config) self.power_state[node_indices] = power_value self.sivoc_loss[node_indices] = sivoc_loss return power_value return power_value[np.cumsum(job_lengths) - 1] def calculate_rectifiers_needed(self, power_state_summed): Loading