X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/9f21f35eadfc5d1f43d3e7a4b591711fd7fb9616..2eba6b843463b01622d79c8ccc55bdffffd0454c:/examples/msg/energy-pstate/energy-pstate.c
diff --git a/examples/msg/energy-pstate/energy-pstate.c b/examples/msg/energy-pstate/energy-pstate.c
index 09019696a7..de0d0d1a22 100644
--- a/examples/msg/energy-pstate/energy-pstate.c
+++ b/examples/msg/energy-pstate/energy-pstate.c
@@ -8,7 +8,8 @@
/** @addtogroup MSG_examples
*
- * - energy/e1/e1.c Shows how a set of pstates can be defined for a host and how the current pstate can be
+ * - energy-pstate/energy-pstate.c Shows how a set of pstates can be defined for a host and how the current
+ * pstate can be
* accessed/changed with @ref MSG_get_host_current_power_peak and @ref MSG_set_host_pstate.
* Make sure to read the platform XML file for details on how to declare the CPU capacity for each pstate.
*/
@@ -18,13 +19,12 @@ XBT_LOG_NEW_DEFAULT_CATEGORY(test, "Pstate properties test");
static int dvfs(int argc, char *argv[])
{
double workload = 100E6;
- int new_peak_index=2;
msg_host_t host = MSG_host_self();
int nb = MSG_host_get_nb_pstates(host);
XBT_INFO("Count of Processor states=%d", nb);
- double current_peak = MSG_host_get_current_power_peak(host);
+ double current_peak = MSG_host_get_speed(host);
XBT_INFO("Current power peak=%f", current_peak);
// Run a task
@@ -36,17 +36,16 @@ static int dvfs(int argc, char *argv[])
XBT_INFO("Task1 simulation time: %e", task_time);
// Change power peak
- if ((new_peak_index >= nb) || (new_peak_index < 0)){
- XBT_INFO("Cannot set pstate %d, host supports only %d pstates", new_peak_index, nb);
- return 0;
- }
+ int new_pstate = 2;
+ xbt_assert(new_pstate < nb, "Cannot set the host %s at pstate %d because it only provides %d pstates.",
+ MSG_host_get_name(host), new_pstate, nb);
- double peak_at = MSG_host_get_power_peak_at(host, new_peak_index);
- XBT_INFO("Changing power peak value to %f (at index %d)", peak_at, new_peak_index);
+ double peak_at = MSG_host_get_power_peak_at(host, new_pstate);
+ XBT_INFO("Changing power peak value to %f (at index %d)", peak_at, new_pstate);
- MSG_host_set_pstate(host, new_peak_index);
+ MSG_host_set_pstate(host, new_pstate);
- current_peak = MSG_host_get_current_power_peak(host);
+ current_peak = MSG_host_get_speed(host);
XBT_INFO("Current power peak=%f", current_peak);
// Run a second task
@@ -62,7 +61,7 @@ static int dvfs(int argc, char *argv[])
int nb2 = MSG_host_get_nb_pstates(host);
XBT_INFO("Count of Processor states=%d", nb2);
- double current_peak2 = MSG_host_get_current_power_peak(host);
+ double current_peak2 = MSG_host_get_speed(host);
XBT_INFO("Current power peak=%f", current_peak2);
return 0;
}