#include "surf_interface.hpp"
#include "network_interface.hpp"
#include "cpu_interface.hpp"
-#include "workstation_interface.hpp"
-#include "vm_workstation_interface.hpp"
+#include "host_interface.hpp"
#include "simix/smx_host_private.h"
#include "surf_routing.hpp"
#include "simgrid/sg_config.h"
#include "mc/mc.h"
+#include "vm_interface.hpp"
XBT_LOG_NEW_CATEGORY(surf, "All SURF categories");
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_kernel, surf,
xbt_dynar_free(&hosts);
}*/
-/* model_list_invoke contains only surf_workstation and surf_vm_workstation.
+/* model_list_invoke contains only surf_host and surf_vm.
* The callback functions of cpu_model and network_model will be called from
- * those of these workstation models. */
+ * those of these host models. */
xbt_dynar_t model_list = NULL; /* for destroying all models correctly */
xbt_dynar_t model_list_invoke = NULL; /* for invoking callbacks */
{NULL, NULL, NULL} /* this array must be NULL terminated */
};
-s_surf_model_description_t surf_workstation_model_description[] = {
+s_surf_model_description_t surf_host_model_description[] = {
{"default",
- "Default workstation model. Currently, CPU:Cas01 and network:LV08 (with cross traffic enabled)",
- surf_workstation_model_init_current_default},
+ "Default host model. Currently, CPU:Cas01 and network:LV08 (with cross traffic enabled)",
+ surf_host_model_init_current_default},
{"compound",
- "Workstation model that is automatically chosen if you change the network and CPU models",
- surf_workstation_model_init_compound},
- {"ptask_L07", "Workstation model somehow similar to Cas01+CM02 but allowing parallel tasks",
- surf_workstation_model_init_ptask_L07},
+ "Host model that is automatically chosen if you change the network and CPU models",
+ surf_host_model_init_compound},
+ {"ptask_L07", "Host model somehow similar to Cas01+CM02 but allowing parallel tasks",
+ surf_host_model_init_ptask_L07},
{NULL, NULL, NULL} /* this array must be NULL terminated */
};
-s_surf_model_description_t surf_vm_workstation_model_description[] = {
+s_surf_model_description_t surf_vm_model_description[] = {
{"default",
- "Default vm workstation model.",
- surf_vm_workstation_model_init_HL13},
+ "Default vm model.",
+ surf_vm_model_init_HL13},
{NULL, NULL, NULL} /* this array must be NULL terminated */
};
return -1;
}
-static XBT_INLINE void routing_asr_host_free(void *p)
-{
- delete ((RoutingEdgePtr) p);
-}
-
static XBT_INLINE void routing_asr_prop_free(void *p)
{
- xbt_dict_t elm = (xbt_dict_t) p;
- xbt_dict_free(&elm);
-}
-
-static XBT_INLINE void surf_cpu_free(void *r)
-{
- delete static_cast<CpuPtr>(r);
+ //xbt_dict_t elm = (xbt_dict_t) p;
+ //xbt_dict_free(&elm); FIXME: leaking in some case? That's a sometimes double-free with AsCluster::~AsCluster
}
static XBT_INLINE void surf_link_free(void *r)
{
- delete static_cast<NetworkLinkPtr>(r);
+ delete static_cast<Link*>(r);
}
-static XBT_INLINE void surf_workstation_free(void *r)
+static XBT_INLINE void surf_host_free(void *r)
{
- delete static_cast<WorkstationPtr>(r);
+ delete static_cast<HostPtr>(r);
}
static XBT_INLINE void surf_storage_free(void *r)
file_lib = xbt_lib_new();
watched_hosts_lib = xbt_dict_new_homogeneous(NULL);
+ sg_host_init();
+
XBT_DEBUG("Add routing levels");
- ROUTING_HOST_LEVEL = xbt_lib_add_level(host_lib,routing_asr_host_free);
- ROUTING_ASR_LEVEL = xbt_lib_add_level(as_router_lib,routing_asr_host_free);
ROUTING_PROP_ASR_LEVEL = xbt_lib_add_level(as_router_lib,routing_asr_prop_free);
XBT_DEBUG("Add SURF levels");
- SURF_CPU_LEVEL = xbt_lib_add_level(host_lib,surf_cpu_free);
- SURF_WKS_LEVEL = xbt_lib_add_level(host_lib,surf_workstation_free);
+ SURF_HOST_LEVEL = xbt_lib_add_level(host_lib,surf_host_free);
SURF_LINK_LEVEL = xbt_lib_add_level(link_lib,surf_link_free);
SURF_STORAGE_LEVEL = xbt_lib_add_level(storage_lib,surf_storage_free);
m_lastUpdate = now;
m_lastValue = lmm_variable_getvalue(getVariable());
}
-