-/* Copyright (c) 2010, 2012-2016. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2010-2017. 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. */
#include "src/plugins/vm/VirtualMachineImpl.hpp"
#include "src/surf/cpu_interface.hpp"
+#include "simgrid/s4u/Engine.hpp"
+
#include <boost/algorithm/string/classification.hpp>
#include <boost/algorithm/string/split.hpp>
-#include <simgrid/s4u/engine.hpp>
#include <string>
#include <utility>
#include <vector>
-/** @addtogroup SURF_plugin_load
+/** @addtogroup plugin_load
This plugin makes it very simple for users to obtain the current load for each host.
*/
-XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_plugin_load, surf, "Logging specific to the SURF HostLoad plugin");
+XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_plugin_load, surf, "Logging specific to the HostLoad plugin");
namespace simgrid {
namespace plugin {
double HostLoad::getCurrentLoad()
{
- return current_flops / (host->speed() * host->coreCount());
+ return current_flops / (host->getSpeed() * host->getCoreCount());
}
double HostLoad::getAverageLoad()
{
- return getComputedFlops() / (host->speed() * host->coreCount() * (surf_get_clock() - last_reset));
+ return getComputedFlops() / (host->getSpeed() * host->getCoreCount() * (surf_get_clock() - last_reset));
}
double HostLoad::getComputedFlops()
/* This callback is called when an action (computation, idle, ...) terminates */
static void onActionStateChange(simgrid::surf::CpuAction* action, simgrid::surf::Action::State previous)
{
- for (simgrid::surf::Cpu* cpu : action->cpus()) {
+ for (simgrid::surf::Cpu* const& cpu : action->cpus()) {
simgrid::s4u::Host* host = cpu->getHost();
if (host != nullptr) {
}
/* **************************** Public interface *************************** */
-SG_BEGIN_DECL()
+extern "C" {
-/** \ingroup SURF_plugin_load
+/** \ingroup plugin_load
* \brief Initializes the HostLoad plugin
* \details The HostLoad plugin provides an API to get the current load of each host.
*/
/** @brief Returns the current load of the host passed as argument
*
- * See also @ref SURF_plugin_load
+ * See also @ref plugin_load
*/
double sg_host_get_current_load(sg_host_t host)
{
host->extension<HostLoad>()->reset();
}
-
-SG_END_DECL()
+}