X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/fe304706848f0a64477d4687b3ea97d5b9a0c35c..6d004c352f7b26fba38486001f874e65466b5bee:/src/plugins/host_load.cpp diff --git a/src/plugins/host_load.cpp b/src/plugins/host_load.cpp index 19c495f75c..f3f7e3c3d8 100644 --- a/src/plugins/host_load.cpp +++ b/src/plugins/host_load.cpp @@ -96,12 +96,13 @@ void HostLoad::update() while (iter != end(current_activities)) { auto& activity = iter->first; // Just an alias auto& remaining_cost_after_last_update = iter->second; // Just an alias + auto& action = activity->surf_action_; auto current_iter = iter; ++iter; - if (activity->surf_action_->get_finish_time() != now && activity->state_ == e_smx_state_t::SIMIX_RUNNING) { + if (action != nullptr && action->get_finish_time() != now && activity->state_ == e_smx_state_t::SIMIX_RUNNING) { if (remaining_cost_after_last_update == activity_uninitialized_remaining_cost) { - remaining_cost_after_last_update = activity->surf_action_->get_cost(); + remaining_cost_after_last_update = action->get_cost(); } double computed_flops_since_last_update = remaining_cost_after_last_update - /*remaining now*/activity->get_remaining(); computed_flops_ += computed_flops_since_last_update; @@ -144,7 +145,7 @@ void HostLoad::update() double HostLoad::get_current_load() { // We don't need to call update() here because it is called every time an action terminates or starts - return current_flops_ / static_cast(host_->get_speed() * host_->get_core_count()); + return current_flops_ / (host_->get_speed() * host_->get_core_count()); } /*