get_available_speed(workstation);
}
+static double ws_get_current_power_peak(void *workstation)
+{
+ return surf_cpu_model->extension.cpu.
+ get_current_power_peak(workstation);
+}
+
+static double ws_get_power_peak_at(void *workstation, int pstate_index)
+{
+ return surf_cpu_model->extension.cpu.
+ get_power_peak_at(workstation, pstate_index);
+}
+
+static int ws_get_nb_pstates(void *workstation)
+{
+ return surf_cpu_model->extension.cpu.
+ get_nb_pstates(workstation);
+}
+
+static void ws_set_power_peak_at(void *workstation, int pstate_index)
+{
+ surf_cpu_model->extension.cpu.
+ set_power_peak_at(workstation, pstate_index);
+}
+
+static double ws_get_consumed_energy(void *workstation)
+{
+ return surf_cpu_model->extension.cpu.
+ get_consumed_energy(workstation);
+}
+
+
static surf_action_t ws_execute_parallel_task(int workstation_nb,
void **workstation_list,
double *computation_amount,
return surf_resource_properties(surf_cpu_resource_priv(ws));
}
-static storage_t find_storage_on_mount_list(void *workstation,const char* storage)
+static storage_t find_storage_on_mount_list(void *workstation,const char* mount)
{
storage_t st = NULL;
s_mount_t mnt;
workstation_CLM03_t ws = (workstation_CLM03_t) surf_workstation_resource_priv(workstation);
xbt_dynar_t storage_list = ws->storage;
- XBT_DEBUG("Search for storage name '%s' on '%s'",storage,ws->generic_resource.name);
+ XBT_DEBUG("Search for storage name '%s' on '%s'",mount,ws->generic_resource.name);
xbt_dynar_foreach(storage_list,cursor,mnt)
{
XBT_DEBUG("See '%s'",mnt.name);
- if(!strcmp(storage,mnt.name)){
- st = mnt.id;
+ if(!strcmp(mount,mnt.name)){
+ st = mnt.storage;
break;
}
}
- if(!st) xbt_die("Can't find mount '%s' for '%s'",storage,ws->generic_resource.name);
+ if(!st) xbt_die("Can't find mount '%s' for '%s'",mount,ws->generic_resource.name);
return st;
}
surf_workstation_model->extension.workstation.get_speed = ws_get_speed;
surf_workstation_model->extension.workstation.get_available_speed =
ws_get_available_speed;
+ surf_workstation_model->extension.workstation.get_current_power_peak = ws_get_current_power_peak;
+ surf_workstation_model->extension.workstation.get_power_peak_at = ws_get_power_peak_at;
+ surf_workstation_model->extension.workstation.get_nb_pstates = ws_get_nb_pstates;
+ surf_workstation_model->extension.workstation.set_power_peak_at = ws_set_power_peak_at;
+ surf_workstation_model->extension.workstation.get_consumed_energy = ws_get_consumed_energy;
surf_workstation_model->extension.workstation.communicate =
ws_communicate;