Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
declare create_resource callback for other CPU models
authorcoldpeace <coldpeace@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Fri, 23 Jul 2010 13:00:14 +0000 (13:00 +0000)
committercoldpeace <coldpeace@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Fri, 23 Jul 2010 13:00:14 +0000 (13:00 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@8055 48e7efb5-ca39-0410-a469-dd3cf9ba447f

src/surf/cpu.c
src/surf/cpu_ti.c

index 07761ee..eee4107 100644 (file)
@@ -378,6 +378,17 @@ static double cpu_get_available_speed(void *cpu)
   return ((cpu_Cas01_t) cpu)->power_scale;
 }
 
+static void cpu_create_resource(char *name, double power_peak,
+        double power_scale,
+        tmgr_trace_t power_trace,
+        e_surf_resource_state_t state_initial,
+        tmgr_trace_t state_trace,
+        xbt_dict_t cpu_properties)
+{
+       cpu_new(name,power_peak,power_scale,power_trace,
+                                         state_initial,state_trace,cpu_properties);
+}
+
 static void cpu_finalize(void)
 {
   lmm_system_free(cpu_maxmin_system);
@@ -425,6 +436,7 @@ static void surf_cpu_model_init_internal(void)
   surf_cpu_model->extension.cpu.get_state = cpu_get_state;
   surf_cpu_model->extension.cpu.get_speed = cpu_get_speed;
   surf_cpu_model->extension.cpu.get_available_speed = cpu_get_available_speed;
+  surf_cpu_model->extension.cpu.create_resource = cpu_create_resource;
 
   if (!cpu_maxmin_system)
     cpu_maxmin_system = lmm_system_new();
index a3bfa2f..e893138 100644 (file)
@@ -725,6 +725,17 @@ static double cpu_ti_get_available_speed(void *cpu)
   return CPU->power_scale;
 }
 
+static void cpu_ti_create_resource(char *name, double power_peak,
+        double power_scale,
+        tmgr_trace_t power_trace,
+        e_surf_resource_state_t state_initial,
+        tmgr_trace_t state_trace,
+        xbt_dict_t cpu_properties)
+{
+       cpu_ti_new(name,power_peak,power_scale,power_trace,
+                                         state_initial,state_trace,cpu_properties);
+}
+
 static void cpu_ti_finalize(void)
 {
   void *cpu;
@@ -783,6 +794,7 @@ static void surf_cpu_ti_model_init_internal(void)
   surf_cpu_model->extension.cpu.get_state = cpu_ti_get_state;
   surf_cpu_model->extension.cpu.get_speed = cpu_ti_get_speed;
   surf_cpu_model->extension.cpu.get_available_speed = cpu_ti_get_available_speed;
+  surf_cpu_model->extension.cpu.create_resource = cpu_ti_create_resource;
 
   cpu_ti_action_heap = xbt_heap_new(8, NULL);
   xbt_heap_set_update_callback(cpu_ti_action_heap, cpu_ti_action_update_index_heap);