X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/c773c39f8623155553cfba2919317250e003adb4..fde63ab63d776f60717181c36961cde86cb6d23d:/src/surf/cpu_interface.cpp diff --git a/src/surf/cpu_interface.cpp b/src/surf/cpu_interface.cpp index c4ef192363..83a6e16d01 100644 --- a/src/surf/cpu_interface.cpp +++ b/src/surf/cpu_interface.cpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2018. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2013-2019. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ @@ -32,16 +32,14 @@ void CpuModel::update_actions_state_lazy(double now, double /*delta*/) } } -void CpuModel::update_actions_state_full(double now, double delta) +void CpuModel::update_actions_state_full(double /*now*/, double delta) { for (auto it = std::begin(*get_started_action_set()); it != std::end(*get_started_action_set());) { CpuAction& action = static_cast(*it); ++it; // increment iterator here since the following calls to action.finish() may invalidate it action.update_remains(action.get_variable()->get_value() * delta); - - if (action.get_max_duration() != NO_MAX_DURATION) - action.update_max_duration(delta); + action.update_max_duration(delta); if (((action.get_remains_no_update() <= 0) && (action.get_variable()->get_weight() > 0)) || ((action.get_max_duration() != NO_MAX_DURATION) && (action.get_max_duration() <= 0))) { @@ -134,11 +132,11 @@ int Cpu::get_core_count() return core_count_; } -void Cpu::set_speed_trace(tmgr_trace_t trace) +void Cpu::set_speed_profile(kernel::profile::Profile* profile) { xbt_assert(speed_.event == nullptr, "Cannot set a second speed trace to Host %s", host_->get_cname()); - speed_.event = future_evt_set.add_trace(trace, this); + speed_.event = profile->schedule(&future_evt_set, this); } @@ -188,7 +186,8 @@ void CpuAction::set_state(Action::State state) } /** @brief returns a list of all CPUs that this action is using */ -std::list CpuAction::cpus() { +std::list CpuAction::cpus() const +{ std::list retlist; int llen = get_variable()->get_number_of_constraint();