From: alegrand Date: Fri, 10 Aug 2007 16:00:33 +0000 (+0000) Subject: remove dead files. X-Git-Tag: v3.3~1287 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/dbe2e12912b76638ef9cb5500a2541b9ed784607 remove dead files. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4073 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- diff --git a/src/Makefile.am b/src/Makefile.am index 5ea268c449..5d69dfae4a 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -38,7 +38,7 @@ EXTRA_DIST= \ surf/surfxml.c \ surf/surfxml.dtd \ surf/network_private.h \ - surf/network_dassf_private.h \ + network_gtnets_private.h \ surf/workstation_KCCFLN05_private.h \ \ include/surf/maxmin.h \ @@ -156,7 +156,6 @@ SURF_SRC= \ surf/surfxml_parse.c \ surf/cpu.c surf/network.c surf/workstation.c \ surf/surf_timer.c \ - surf/network_dassf.c \ surf/workstation_KCCFLN05.c surf/workstation_ptask_L07.c if CONTEXT_THREADS diff --git a/src/surf/network_dassf.c b/src/surf/network_dassf.c deleted file mode 100644 index ec0b99b94c..0000000000 --- a/src/surf/network_dassf.c +++ /dev/null @@ -1,575 +0,0 @@ -/* $Id$ */ - -/* Copyright (c) 2005 Henri Casanova. 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 "network_dassf_private.h" - -XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(surf_network); - -/* surf_network_resource_t surf_network_resource = NULL; */ -/*xbt_dict_t network_link_set = NULL;*/ -/* xbt_dict_t network_card_set = NULL; */ - -static int card_number = 0; -static network_link_DASSF_t **routing_table = NULL; -static int *routing_table_size = NULL; - -#define ROUTE(i,j) routing_table[(i)+(j)*card_number] -#define ROUTE_SIZE(i,j) routing_table_size[(i)+(j)*card_number] - -static void create_routing_table(void) -{ - routing_table = xbt_new0(network_link_DASSF_t *, card_number * card_number); - routing_table_size = xbt_new0(int, card_number * card_number); -} - -static void network_link_free(void *nw_link) -{ - free(((network_link_DASSF_t)nw_link)->name); - free(nw_link); -} - -static network_link_DASSF_t network_link_new(char *name, - double bw_initial, - tmgr_trace_t bw_trace, - double lat_initial, - tmgr_trace_t lat_trace, - e_surf_network_link_state_t - state_initial, - tmgr_trace_t state_trace) -{ - network_link_DASSF_t nw_link = xbt_new0(s_network_link_DASSF_t, 1); - - - nw_link->resource = (surf_resource_t) surf_network_resource; - nw_link->name = name; - nw_link->bw_current = bw_initial; - if (bw_trace) - nw_link->bw_event = - tmgr_history_add_trace(history, bw_trace, 0.0, 0, nw_link); - nw_link->lat_current = lat_initial; - if (lat_trace) - nw_link->lat_event = - tmgr_history_add_trace(history, lat_trace, 0.0, 0, nw_link); - nw_link->state_current = state_initial; - if (state_trace) - nw_link->state_event = - tmgr_history_add_trace(history, state_trace, 0.0, 0, nw_link); - - nw_link->constraint = - lmm_constraint_new(maxmin_system, nw_link, nw_link->bw_current); - - xbt_dict_set(network_link_set, name, nw_link, network_link_free); - - return nw_link; -} - -static void network_card_free(void *nw_card) -{ - free(((network_card_DASSF_t)nw_card)->name); - free(nw_card); -} - -static int network_card_new(const char *card_name) -{ - network_card_DASSF_t card = xbt_dict_get_or_null(network_card_set, card_name); - - if (!card) { - card = xbt_new0(s_network_card_DASSF_t, 1); - card->name = xbt_strdup(card_name); - card->id = card_number++; - xbt_dict_set(network_card_set, card_name, card, network_card_free); - } - return card->id; -} - -static void route_new(int src_id, int dst_id, network_link_DASSF_t *link_list, int nb_link) -{ - ROUTE_SIZE(src_id, dst_id) = nb_link; - ROUTE(src_id, dst_id) = link_list = xbt_realloc(link_list, sizeof(network_link_DASSF_t) * nb_link); -} - -static void parse_network_link(void) -{ - char *name; - double bw_initial; - tmgr_trace_t bw_trace; - double lat_initial; - tmgr_trace_t lat_trace; - e_surf_network_link_state_t state_initial = SURF_NETWORK_LINK_ON; - tmgr_trace_t state_trace; - - name = xbt_strdup(A_surfxml_network_link_name); - surf_parse_get_double(&bw_initial,A_surfxml_network_link_bandwidth); - surf_parse_get_trace(&bw_trace, A_surfxml_network_link_bandwidth_file); - surf_parse_get_double(&lat_initial,A_surfxml_network_link_latency); - surf_parse_get_trace(&lat_trace, A_surfxml_network_link_latency_file); - - xbt_assert0((A_surfxml_network_link_state==A_surfxml_network_link_state_ON)|| - (A_surfxml_network_link_state==A_surfxml_network_link_state_OFF), - "Invalid state"); - if (A_surfxml_network_link_state==A_surfxml_network_link_state_ON) - state_initial = SURF_NETWORK_LINK_ON; - if (A_surfxml_network_link_state==A_surfxml_network_link_state_OFF) - state_initial = SURF_NETWORK_LINK_OFF; - surf_parse_get_trace(&state_trace,A_surfxml_network_link_state_file); - - network_link_new(name, bw_initial, bw_trace, - lat_initial, lat_trace, state_initial, state_trace); -} - -static int nb_link; -static int link_list_capacity; -static network_link_DASSF_t *link_list = NULL; -static int src_id = -1; -static int dst_id = -1; - -static void parse_route_set_endpoints(void) -{ - src_id = network_card_new(A_surfxml_route_src); - dst_id = network_card_new(A_surfxml_route_dst); - nb_link = 0; - link_list_capacity = 20; - link_list = xbt_new(network_link_DASSF_t, link_list_capacity); -} - -static void parse_route_elem(void) -{ - if (nb_link == link_list_capacity) { - link_list_capacity *= 2; - link_list = xbt_realloc(link_list, link_list_capacity * sizeof(network_link_DASSF_t)); - } - link_list[nb_link++] = xbt_dict_get_or_null(network_link_set, A_surfxml_route_element_name); -} - -static void parse_route_set_route(void) -{ - route_new(src_id, dst_id, link_list, nb_link); -} - -static void parse_file(const char *file) -{ - /* Figuring out the network links */ - surf_parse_reset_parser(); - ETag_surfxml_network_link_fun=parse_network_link; - surf_parse_open(file); - xbt_assert1((!surf_parse()),"Parse error in %s",file); - surf_parse_close(); - - /* Figuring out the network cards used */ - surf_parse_reset_parser(); - STag_surfxml_route_fun=parse_route_set_endpoints; - surf_parse_open(file); - xbt_assert1((!surf_parse()),"Parse error in %s",file); - surf_parse_close(); - - create_routing_table(); - - /* Building the routes */ - surf_parse_reset_parser(); - STag_surfxml_route_fun=parse_route_set_endpoints; - ETag_surfxml_route_element_fun=parse_route_elem; - ETag_surfxml_route_fun=parse_route_set_route; - surf_parse_open(file); - xbt_assert1((!surf_parse()),"Parse error in %s",file); - surf_parse_close(); -} - -static void *name_service(const char *name) -{ - return xbt_dict_get_or_null(network_card_set, name); -} - -static const char *get_resource_name(void *resource_id) -{ - return ((network_card_DASSF_t) resource_id)->name; -} - -static int resource_used(void *resource_id) -{ - return lmm_constraint_used(maxmin_system, - ((network_link_DASSF_t) resource_id)->constraint); -} - -static int action_free(surf_action_t action) -{ - action->using--; - if(!action->using) { - xbt_swag_remove(action, action->state_set); - if(((surf_action_network_DASSF_t)action)->variable) - lmm_variable_free(maxmin_system, ((surf_action_network_DASSF_t)action)->variable); - free(action); - } - return 1; -} - -static void action_cancel(surf_action_t action) -{ - return; -} - -static void action_recycle(surf_action_t action) -{ - return; -} - -static void action_change_state(surf_action_t action, - e_surf_action_state_t state) -{ -/* if((state==SURF_ACTION_DONE) || (state==SURF_ACTION_FAILED)) */ -/* if(((surf_action_network_DASSF_t)action)->variable) { */ -/* lmm_variable_disable(maxmin_system, ((surf_action_network_DASSF_t)action)->variable); */ -/* ((surf_action_network_DASSF_t)action)->variable = NULL; */ -/* } */ - - surf_action_change_state(action, state); - return; -} - -/* I nothing more happens, return the date at which the first action that will terminate does terminate */ -/* This returns the time for the first NETWORK action to complete */ -/* It would be nice to store this minimum somewhere so that the next function can - figure out whether the min comes from the network or from something else */ -static double share_resources(double now) -{ - s_surf_action_network_DASSF_t s_action; - surf_action_network_DASSF_t action = NULL; - xbt_swag_t running_actions = surf_network_resource->common_public->states.running_action_set; - double min = generic_maxmin_share_resources(running_actions, - xbt_swag_offset(s_action, variable)); - - xbt_swag_foreach(action, running_actions) { - if(action->latency>0) { - if(min<0) min = action->latency; - else if (action->latencylatency; - } - } - - return min; -} - -/* delta: by how many time units the simulation must advance */ -/* In this function: change the state of actions that terminate */ -/* The delta may not come from the network, and thus may be different (smaller) - than the one returned by the function above */ -/* If the delta is a network-caused min, then do not emulate any timer in the - network simulation, otherwise fake a timer somehow to advance the simulation of min seconds */ - -static void update_actions_state(double now, double delta) -{ - double deltap = 0.0; - surf_action_network_DASSF_t action = NULL; - surf_action_network_DASSF_t next_action = NULL; - xbt_swag_t running_actions = - surf_network_resource->common_public->states.running_action_set; - /* KILLME: unused - xbt_swag_t failed_actions = - surf_network_resource->common_public->states.failed_action_set; - */ - - xbt_swag_foreach_safe(action, next_action, running_actions) { - deltap = delta; - if (action->latency > 0) { - if (action->latency > deltap) { - double_update(&(action->latency),deltap); - deltap = 0.0; - } else { - double_update(&(deltap), action->latency); - action->latency = 0.0; - } - if ((action->latency == 0.0) && !(action->suspended)) - lmm_update_variable_weight(maxmin_system, action->variable, 1.0); - } - double_update(&(action->generic_action.remains), - lmm_variable_getvalue(action->variable) * deltap); - if (action->generic_action.max_duration != NO_MAX_DURATION) - double_update(&(action->generic_action.max_duration), delta); - - /* if(action->generic_action.remains<.00001) action->generic_action.remains=0; */ - - if (action->generic_action.remains <= 0) { - action->generic_action.finish = surf_get_clock(); - action_change_state((surf_action_t) action, SURF_ACTION_DONE); - } else if ((action->generic_action.max_duration != NO_MAX_DURATION) && - (action->generic_action.max_duration <= 0)) { - action->generic_action.finish = surf_get_clock(); - action_change_state((surf_action_t) action, SURF_ACTION_DONE); - } else { /* Need to check that none of the resource has failed */ - /* to ignore for now */ - lmm_constraint_t cnst = NULL; - int i = 0; - network_link_DASSF_t nw_link = NULL; - - while ((cnst = - lmm_get_cnst_from_var(maxmin_system, action->variable, - i++))) { - nw_link = lmm_constraint_id(cnst); - if (nw_link->state_current == SURF_NETWORK_LINK_OFF) { - action->generic_action.finish = surf_get_clock(); - action_change_state((surf_action_t) action, SURF_ACTION_FAILED); - break; - } - } - } - } - - return; -} - -/* Called only when there is a change in trace: Useless in packet-level simulation */ -static void update_resource_state(void *id, - tmgr_trace_event_t event_type, - double value) -{ - network_link_DASSF_t nw_link = id; - /* printf("[" "%lg" "] Asking to update network card \"%s\" with value " */ - /* "%lg" " for event %p\n", surf_get_clock(), nw_link->name, */ - /* value, event_type); */ - - if (event_type == nw_link->bw_event) { - nw_link->bw_current = value; - lmm_update_constraint_bound(maxmin_system, nw_link->constraint, - nw_link->bw_current); - } else if (event_type == nw_link->lat_event) { - double delta = value - nw_link->lat_current; - lmm_variable_t var = NULL; - surf_action_network_DASSF_t action = NULL; - - nw_link->lat_current = value; - while (lmm_get_var_from_cnst(maxmin_system, nw_link->constraint, &var)) { - action = lmm_variable_id(var); - action->lat_current += delta; - if(action->rate<0) - lmm_update_variable_bound(maxmin_system, action->variable, - SG_TCP_CTE_GAMMA / action->lat_current); - else - lmm_update_variable_bound(maxmin_system, action->variable, - min(action->rate,SG_TCP_CTE_GAMMA / action->lat_current)); - } - } else if (event_type == nw_link->state_event) { - if (value > 0) - nw_link->state_current = SURF_NETWORK_LINK_ON; - else - nw_link->state_current = SURF_NETWORK_LINK_OFF; - } else { - CRITICAL0("Unknown event ! \n"); - xbt_abort(); - } - - return; -} - -static surf_action_t communicate(void *src, void *dst, double size, double rate) -{ - surf_action_network_DASSF_t action = NULL; - network_card_DASSF_t card_src = src; - network_card_DASSF_t card_dst = dst; - int route_size = ROUTE_SIZE(card_src->id, card_dst->id); - network_link_DASSF_t *route = ROUTE(card_src->id, card_dst->id); - int i; - - xbt_assert2(route_size,"You're trying to send data from %s to %s but there is no connexion between these two cards.", card_src->name, card_dst->name); - - action = xbt_new0(s_surf_action_network_DASSF_t, 1); - - action->generic_action.using = 1; - action->generic_action.cost = size; - action->generic_action.remains = size; - action->generic_action.max_duration = NO_MAX_DURATION; - action->generic_action.start = -1.0; - action->generic_action.finish = -1.0; - action->generic_action.resource_type = - (surf_resource_t) surf_network_resource; - - action->generic_action.state_set = - surf_network_resource->common_public->states.running_action_set; - - xbt_swag_insert(action, action->generic_action.state_set); - action->rate = rate; - - action->latency = 0.0; - for (i = 0; i < route_size; i++) - action->latency += route[i]->lat_current; - action->lat_current = action->latency; - - if(action->latency>0) - action->variable = lmm_variable_new(maxmin_system, action, 0.0, -1.0, - route_size); - else - action->variable = lmm_variable_new(maxmin_system, action, 1.0, -1.0, - route_size); - - if(action->rate<0) - lmm_update_variable_bound(maxmin_system, action->variable, - SG_TCP_CTE_GAMMA / action->lat_current); - else - lmm_update_variable_bound(maxmin_system, action->variable, - min(action->rate,SG_TCP_CTE_GAMMA / action->lat_current)); - - if(route_size == 0) { - action_change_state((surf_action_t) action, SURF_ACTION_DONE); - } - - for (i = 0; i < route_size; i++) - lmm_expand(maxmin_system, route[i]->constraint, action->variable, 1.0); - - return (surf_action_t) action; -} - -/* returns a NULL-terminated array of network_link_DASSF_t */ -static const void** get_route(void *src, void *dst) { - network_card_DASSF_t card_src = src; - network_card_DASSF_t card_dst = dst; - return (const void**) ROUTE(card_src->id, card_dst->id); -} - -static int get_route_size(void *src, void *dst) { - network_card_DASSF_t card_src = src; - network_card_DASSF_t card_dst = dst; - return ROUTE_SIZE(card_src->id, card_dst->id); -} - -static const char *get_link_name(const void *link) { - return ((network_link_DASSF_t) link)->name; -} - -static double get_link_bandwidth(const void *link) { - return ((network_link_DASSF_t) link)->bw_current; -} - -static double get_link_latency(const void *link) { - return ((network_link_DASSF_t) link)->lat_current; -} - -static void action_suspend(surf_action_t action) -{ - ((surf_action_network_DASSF_t) action)->suspended = 1; - lmm_update_variable_weight(maxmin_system, - ((surf_action_network_DASSF_t) action)->variable, 0.0); -} - -static void action_resume(surf_action_t action) -{ - lmm_update_variable_weight(maxmin_system, - ((surf_action_network_DASSF_t) action)->variable, 1.0); - ((surf_action_network_DASSF_t) action)->suspended = 0; -} - -static int action_is_suspended(surf_action_t action) -{ - return ((surf_action_network_DASSF_t) action)->suspended; -} - -static void finalize(void) -{ - int i,j; - - xbt_dict_free(&network_card_set); - xbt_dict_free(&network_link_set); - xbt_swag_free(surf_network_resource->common_public->states. - ready_action_set); - xbt_swag_free(surf_network_resource->common_public->states. - running_action_set); - xbt_swag_free(surf_network_resource->common_public->states. - failed_action_set); - xbt_swag_free(surf_network_resource->common_public->states. - done_action_set); - free(surf_network_resource->common_public); - free(surf_network_resource->common_private); - free(surf_network_resource->extension_public); - - free(surf_network_resource); - surf_network_resource = NULL; - - for (i = 0; i < card_number; i++) - for (j = 0; j < card_number; j++) - free(ROUTE(i,j)); - free(routing_table); - routing_table = NULL; - free(routing_table_size); - routing_table_size = NULL; - card_number = 0; -} - -static void surf_network_resource_init_internal(void) -{ - s_surf_action_t action; - - surf_network_resource = xbt_new0(s_surf_network_resource_t, 1); - - surf_network_resource->common_private = - xbt_new0(s_surf_resource_private_t, 1); - surf_network_resource->common_public = - xbt_new0(s_surf_resource_public_t, 1); - surf_network_resource->extension_public = - xbt_new0(s_surf_network_resource_extension_public_t, 1); - - surf_network_resource->common_public->states.ready_action_set = - xbt_swag_new(xbt_swag_offset(action, state_hookup)); - surf_network_resource->common_public->states.running_action_set = - xbt_swag_new(xbt_swag_offset(action, state_hookup)); - surf_network_resource->common_public->states.failed_action_set = - xbt_swag_new(xbt_swag_offset(action, state_hookup)); - surf_network_resource->common_public->states.done_action_set = - xbt_swag_new(xbt_swag_offset(action, state_hookup)); - - surf_network_resource->common_public->name_service = name_service; - surf_network_resource->common_public->get_resource_name = - get_resource_name; - surf_network_resource->common_public->action_get_state = - surf_action_get_state; - surf_network_resource->common_public->action_get_start_time = - surf_action_get_start_time; - surf_network_resource->common_public->action_get_finish_time = - surf_action_get_finish_time; - surf_network_resource->common_public->action_free = action_free; - surf_network_resource->common_public->action_cancel = action_cancel; - surf_network_resource->common_public->action_recycle = action_recycle; - surf_network_resource->common_public->action_change_state = - action_change_state; - surf_network_resource->common_public->action_set_data = surf_action_set_data; - surf_network_resource->common_public->name = "network"; - - surf_network_resource->common_private->resource_used = resource_used; - surf_network_resource->common_private->share_resources = share_resources; - surf_network_resource->common_private->update_actions_state = - update_actions_state; - surf_network_resource->common_private->update_resource_state = - update_resource_state; - surf_network_resource->common_private->finalize = finalize; - - surf_network_resource->common_public->suspend = action_suspend; - surf_network_resource->common_public->resume = action_resume; - surf_network_resource->common_public->is_suspended = action_is_suspended; - - surf_network_resource->extension_public->communicate = communicate; - surf_network_resource->extension_public->get_route = get_route; - surf_network_resource->extension_public->get_route_size = get_route_size; - surf_network_resource->extension_public->get_link_name = get_link_name; - surf_network_resource->extension_public->get_link_bandwidth = get_link_bandwidth; - surf_network_resource->extension_public->get_link_latency = get_link_latency; - - network_link_set = xbt_dict_new(); - network_card_set = xbt_dict_new(); - - xbt_assert0(maxmin_system, "surf_init has to be called first!"); -} - -/***************************************************************************/ -/* The nice Hack by Henri to use DASSF from within SURF ! */ -/***************************************************************************/ -/* I put this prototype here for now but it will have to go in - src/include/surf.h when it will be functionnal. */ -void surf_network_resource_init_DASSF(const char *filename); - -void surf_network_resource_init_DASSF(const char *filename) -{ - if (surf_network_resource) - return; - surf_network_resource_init_internal(); - parse_file(filename); - xbt_dynar_push(resource_list, &surf_network_resource); -} diff --git a/src/surf/network_dassf_private.h b/src/surf/network_dassf_private.h deleted file mode 100644 index cd34197414..0000000000 --- a/src/surf/network_dassf_private.h +++ /dev/null @@ -1,48 +0,0 @@ -/* $Id$ */ - -/* Copyright (c) 2004 Arnaud Legrand. 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. */ - -#ifndef _SURF_NETWORK_PRIVATE_H -#define _SURF_NETWORK_PRIVATE_H - -#include "surf_private.h" -#include "xbt/dict.h" - -typedef struct network_link_DASSF { - surf_resource_t resource; /* Any such object, added in a trace - should start by this field!!! */ - /* Using this object with the public part of - resource does not make sense */ - char *name; - double bw_current; - tmgr_trace_event_t bw_event; - double lat_current; - tmgr_trace_event_t lat_event; - e_surf_network_link_state_t state_current; - tmgr_trace_event_t state_event; - lmm_constraint_t constraint; -} s_network_link_DASSF_t, *network_link_DASSF_t; - - -typedef struct network_card_DASSF { - char *name; - int id; -} s_network_card_DASSF_t, *network_card_DASSF_t; - -typedef struct surf_action_network_DASSF { - s_surf_action_t generic_action; - double latency; - double lat_current; - lmm_variable_t variable; - double rate; - int suspended; - network_card_DASSF_t src; - network_card_DASSF_t dst; -} s_surf_action_network_DASSF_t, *surf_action_network_DASSF_t; - -extern xbt_dict_t network_card_set; - -#endif /* _SURF_NETWORK_PRIVATE_H */