From: coldpeace Date: Fri, 23 Jul 2010 14:19:38 +0000 (+0000) Subject: adda new callback(add_traces) to the CPU models X-Git-Tag: v3_5~765 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/ef8a5e50e0e8e8eb161e44d89f0e94986e2c8541 adda new callback(add_traces) to the CPU models git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@8056 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- diff --git a/src/include/surf/surf.h b/src/include/surf/surf.h index 061790ab28..aecdb54fc1 100644 --- a/src/include/surf/surf.h +++ b/src/include/surf/surf.h @@ -165,6 +165,7 @@ XBT_PUBLIC_DATA(routing_t) used_routing; e_surf_resource_state_t state_initial, tmgr_trace_t state_trace, xbt_dict_t cpu_properties); + void (*add_traces)(void); } s_surf_model_extension_cpu_t; /* Network model */ @@ -183,6 +184,7 @@ XBT_PUBLIC_DATA(routing_t) used_routing; double (*get_link_latency) (const void *link); int (*link_shared) (const void *link); void (*create_resource) (char *name,double bw_initial,double lat_initial); + void (*add_traces)(void); } s_surf_model_extension_network_t; /** \brief Workstation model extension public @@ -694,6 +696,12 @@ XBT_PUBLIC(void) surf_route_set_resource(char* src_id,char *dest_id,xbt_dynar_t */ XBT_PUBLIC(void) surf_route_add_host(char * host_id); +/** + * add traces + */ +XBT_PUBLIC(void) surf_add_trace_cpu(void); +XBT_PUBLIC(void) surf_add_trace_link(void); + #include "surf/surf_resource.h" #include "surf/surf_resource_lmm.h" diff --git a/src/surf/cpu.c b/src/surf/cpu.c index eee410728e..b55c297ae5 100644 --- a/src/surf/cpu.c +++ b/src/surf/cpu.c @@ -437,6 +437,7 @@ static void surf_cpu_model_init_internal(void) 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; + surf_cpu_model->extension.cpu.add_traces = add_traces_cpu; if (!cpu_maxmin_system) cpu_maxmin_system = lmm_system_new(); diff --git a/src/surf/cpu_im.c b/src/surf/cpu_im.c index e5336e9f94..00e52fee7d 100644 --- a/src/surf/cpu_im.c +++ b/src/surf/cpu_im.c @@ -118,6 +118,7 @@ static void parse_cpu_im_init(void) static void cpu_im_add_traces_cpu(void) { + INFO0("cpu_im_add_traces_cpu"); xbt_dict_cursor_t cursor = NULL; char *trace_name, *elm; @@ -325,7 +326,6 @@ static void cpu_im_update_resource_state(void *id, double value, double date) { cpu_Cas01_im_t cpu = id; - if (event_type == cpu->power_event) { cpu->power_scale = value; lmm_update_constraint_bound(cpu_im_maxmin_system, cpu->constraint, @@ -574,6 +574,7 @@ static void surf_cpu_im_model_init_internal(void) surf_cpu_model->extension.cpu.get_speed = cpu_im_get_speed; surf_cpu_model->extension.cpu.get_available_speed = cpu_im_get_available_speed; surf_cpu_model->extension.cpu.create_resource = cpu_im_create_resource; + surf_cpu_model->extension.cpu.add_traces = cpu_im_add_traces_cpu; if (!cpu_im_maxmin_system) { sg_maxmin_selective_update = 1; diff --git a/src/surf/cpu_ti.c b/src/surf/cpu_ti.c index e89313842c..b266cc4d61 100644 --- a/src/surf/cpu_ti.c +++ b/src/surf/cpu_ti.c @@ -795,6 +795,7 @@ static void surf_cpu_ti_model_init_internal(void) 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; + surf_cpu_model->extension.cpu.add_traces = add_traces_cpu_ti; cpu_ti_action_heap = xbt_heap_new(8, NULL); xbt_heap_set_update_callback(cpu_ti_action_heap, cpu_ti_action_update_index_heap);