X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/045db1657e870c721be490b411868f4181a12ced..d0ffc37686edcc803601f76ab51fdfed5fc2f241:/src/simix/smx_host.c diff --git a/src/simix/smx_host.c b/src/simix/smx_host.c index 2480bbdcf2..df02f0f8be 100644 --- a/src/simix/smx_host.c +++ b/src/simix/smx_host.c @@ -135,7 +135,7 @@ xbt_dict_t SIMIX_pre_host_get_properties(smx_simcall_t simcall, smx_host_t host) xbt_dict_t SIMIX_host_get_properties(smx_host_t host){ xbt_assert((host != NULL), "Invalid parameters (simix host is NULL)"); - return surf_workstation_model->extension.workstation.get_properties(host); + return surf_resource_get_properties(surf_workstation_resource_priv(host)); } double SIMIX_pre_host_get_speed(smx_simcall_t simcall, smx_host_t host){ @@ -143,9 +143,7 @@ double SIMIX_pre_host_get_speed(smx_simcall_t simcall, smx_host_t host){ } double SIMIX_host_get_speed(smx_host_t host){ xbt_assert((host != NULL), "Invalid parameters (simix host is NULL)"); - - return surf_workstation_model->extension.workstation. - get_speed(host, 1.0); + return surf_workstation_get_speed(host, 1.0); } int SIMIX_pre_host_get_core(smx_simcall_t simcall, smx_host_t host){ @@ -154,8 +152,7 @@ int SIMIX_pre_host_get_core(smx_simcall_t simcall, smx_host_t host){ int SIMIX_host_get_core(smx_host_t host){ xbt_assert((host != NULL), "Invalid parameters (simix host is NULL)"); - return surf_workstation_model->extension.workstation. - get_core(host); + return surf_workstation_get_core(host); } xbt_swag_t SIMIX_pre_host_get_process_list(smx_simcall_t simcall, smx_host_t host){ @@ -176,8 +173,7 @@ double SIMIX_pre_host_get_available_speed(smx_simcall_t simcall, smx_host_t host double SIMIX_host_get_available_speed(smx_host_t host){ xbt_assert((host != NULL), "Invalid parameters (simix host is NULL)"); - return surf_workstation_model->extension.workstation. - get_available_speed(host); + return surf_workstation_get_available_speed(host); } double SIMIX_pre_host_get_current_power_peak(smx_simcall_t simcall, smx_host_t host){ @@ -185,8 +181,7 @@ double SIMIX_pre_host_get_current_power_peak(smx_simcall_t simcall, smx_host_t h } double SIMIX_host_get_current_power_peak(smx_host_t host) { xbt_assert((host != NULL), "Invalid parameters (simix host is NULL)"); - return surf_workstation_model->extension.workstation. - get_current_power_peak(host); + return surf_workstation_get_current_power_peak(host); } double SIMIX_pre_host_get_power_peak_at(smx_simcall_t simcall, smx_host_t host, int pstate_index){ @@ -195,8 +190,7 @@ double SIMIX_pre_host_get_power_peak_at(smx_simcall_t simcall, smx_host_t host, double SIMIX_host_get_power_peak_at(smx_host_t host, int pstate_index) { xbt_assert((host != NULL), "Invalid parameters (simix host is NULL)"); - return surf_workstation_model->extension.workstation. - get_power_peak_at(host, pstate_index); + return surf_workstation_get_power_peak_at(host, pstate_index); } int SIMIX_pre_host_get_nb_pstates(smx_simcall_t simcall, smx_host_t host){ @@ -205,8 +199,7 @@ int SIMIX_pre_host_get_nb_pstates(smx_simcall_t simcall, smx_host_t host){ int SIMIX_host_get_nb_pstates(smx_host_t host) { xbt_assert((host != NULL), "Invalid parameters (simix host is NULL)"); - return surf_workstation_model->extension.workstation. - get_nb_pstates(host); + return surf_workstation_get_nb_pstates(host); } @@ -216,8 +209,7 @@ void SIMIX_pre_host_set_power_peak_at(smx_simcall_t simcall, smx_host_t host, in void SIMIX_host_set_power_peak_at(smx_host_t host, int pstate_index) { xbt_assert((host != NULL), "Invalid parameters (simix host is NULL)"); - surf_workstation_model->extension.workstation. - set_power_peak_at(host, pstate_index); + surf_workstation_set_power_peak_at(host, pstate_index); } double SIMIX_pre_host_get_consumed_energy(smx_simcall_t simcall, smx_host_t host){ @@ -225,8 +217,7 @@ double SIMIX_pre_host_get_consumed_energy(smx_simcall_t simcall, smx_host_t host } double SIMIX_host_get_consumed_energy(smx_host_t host) { xbt_assert((host != NULL), "Invalid parameters (simix host is NULL)"); - return surf_workstation_model->extension.workstation. - get_consumed_energy(host); + return surf_workstation_get_consumed_energy(host); } int SIMIX_pre_host_get_state(smx_simcall_t simcall, smx_host_t host){ @@ -235,8 +226,7 @@ int SIMIX_pre_host_get_state(smx_simcall_t simcall, smx_host_t host){ int SIMIX_host_get_state(smx_host_t host){ xbt_assert((host != NULL), "Invalid parameters (simix host is NULL)"); - return surf_workstation_model->extension.workstation. - get_state(host); + return surf_resource_get_state(surf_workstation_resource_priv(host)); } void* SIMIX_pre_host_self_get_data(smx_simcall_t simcall){ @@ -407,10 +397,9 @@ smx_action_t SIMIX_host_execute(const char *name, /* set surf's action */ if (!MC_is_active()) { action->execution.surf_exec = - surf_workstation_model->extension.workstation.execute(host, - computation_amount); - surf_workstation_model->action_data_set(action->execution.surf_exec, action); - surf_workstation_model->set_priority(action->execution.surf_exec, priority); + surf_workstation_execute(host, computation_amount); + surf_action_set_data(action->execution.surf_exec, action); + surf_action_set_priority(action->execution.surf_exec, priority); } XBT_DEBUG("Create execute action %p", action); @@ -447,16 +436,15 @@ smx_action_t SIMIX_host_parallel_execute(const char *name, /* set surf's action */ workstation_list = xbt_new0(void *, host_nb); for (i = 0; i < host_nb; i++) - workstation_list[i] = host_list[i]; + workstation_list[i] = surf_workstation_resource_priv(host_list[i]); /* set surf's action */ if (!MC_is_active()) { action->execution.surf_exec = - surf_workstation_model->extension.workstation. - execute_parallel_task(host_nb, workstation_list, computation_amount, - communication_amount, rate); + surf_workstation_model_execute_parallel_task((surf_workstation_model_t)surf_workstation_model, + host_nb, workstation_list, computation_amount, communication_amount, rate); - surf_workstation_model->action_data_set(action->execution.surf_exec, action); + surf_action_set_data(action->execution.surf_exec, action); } XBT_DEBUG("Create parallel execute action %p", action); @@ -470,7 +458,7 @@ void SIMIX_host_execution_destroy(smx_action_t action){ XBT_DEBUG("Destroy action %p", action); if (action->execution.surf_exec) { - surf_workstation_model->action_unref(action->execution.surf_exec); + surf_action_unref(action->execution.surf_exec); action->execution.surf_exec = NULL; } xbt_free(action->name); @@ -484,7 +472,7 @@ void SIMIX_host_execution_cancel(smx_action_t action){ XBT_DEBUG("Cancel action %p", action); if (action->execution.surf_exec) - surf_workstation_model->action_cancel(action->execution.surf_exec); + surf_action_cancel(action->execution.surf_exec); } double SIMIX_pre_host_execution_get_remains(smx_simcall_t simcall, smx_action_t action){ @@ -494,7 +482,7 @@ double SIMIX_host_execution_get_remains(smx_action_t action){ double result = 0.0; if (action->state == SIMIX_RUNNING) - result = surf_workstation_model->get_remains(action->execution.surf_exec); + result = surf_action_get_remains(action->execution.surf_exec); return result; } @@ -512,7 +500,7 @@ void SIMIX_pre_host_execution_set_priority(smx_simcall_t simcall, smx_action_t a } void SIMIX_host_execution_set_priority(smx_action_t action, double priority){ if(action->execution.surf_exec) - surf_workstation_model->set_priority(action->execution.surf_exec, priority); + surf_action_set_priority(action->execution.surf_exec, priority); } void SIMIX_pre_host_execution_wait(smx_simcall_t simcall, smx_action_t action){ @@ -538,13 +526,13 @@ void SIMIX_pre_host_execution_wait(smx_simcall_t simcall, smx_action_t action){ void SIMIX_host_execution_suspend(smx_action_t action) { if(action->execution.surf_exec) - surf_workstation_model->suspend(action->execution.surf_exec); + surf_action_suspend(action->execution.surf_exec); } void SIMIX_host_execution_resume(smx_action_t action) { if(action->execution.surf_exec) - surf_workstation_model->resume(action->execution.surf_exec); + surf_action_resume(action->execution.surf_exec); } void SIMIX_execution_finish(smx_action_t action) @@ -577,8 +565,8 @@ void SIMIX_execution_finish(smx_action_t action) (int)action->state); } /* check if the host is down */ - if (surf_workstation_model->extension. - workstation.get_state(simcall->issuer->smx_host) != SURF_RESOURCE_ON) { + + if (surf_resource_get_state(surf_workstation_resource_priv(simcall->issuer->smx_host)) != SURF_RESOURCE_ON) { simcall->issuer->context->iwannadie = 1; } @@ -595,11 +583,11 @@ void SIMIX_post_host_execute(smx_action_t action) { if (action->type == SIMIX_ACTION_EXECUTE && /* FIMXE: handle resource failure * for parallel tasks too */ - surf_workstation_model->extension.workstation.get_state(action->execution.host) == SURF_RESOURCE_OFF) { + surf_resource_get_state(surf_workstation_resource_priv(action->execution.host)) == SURF_RESOURCE_OFF) { /* If the host running the action failed, notice it so that the asking * process can be killed if it runs on that host itself */ action->state = SIMIX_FAILED; - } else if (surf_workstation_model->action_state_get(action->execution.surf_exec) == SURF_ACTION_FAILED) { + } else if (surf_action_get_state(action->execution.surf_exec) == SURF_ACTION_FAILED) { /* If the host running the action didn't fail, then the action was * canceled */ action->state = SIMIX_CANCELED; @@ -608,7 +596,7 @@ void SIMIX_post_host_execute(smx_action_t action) } if (action->execution.surf_exec) { - surf_workstation_model->action_unref(action->execution.surf_exec); + surf_action_unref(action->execution.surf_exec); action->execution.surf_exec = NULL; } @@ -628,9 +616,9 @@ void SIMIX_set_category(smx_action_t action, const char *category) { if (action->state != SIMIX_RUNNING) return; if (action->type == SIMIX_ACTION_EXECUTE){ - surf_workstation_model->set_category(action->execution.surf_exec, category); + surf_action_set_category(action->execution.surf_exec, category); }else if (action->type == SIMIX_ACTION_COMMUNICATE){ - surf_workstation_model->set_category(action->comm.surf_comm, category); + surf_action_set_category(action->comm.surf_comm, category); } } #endif @@ -641,5 +629,5 @@ xbt_dict_t SIMIX_pre_host_get_storage_list(smx_simcall_t simcall, smx_host_t hos xbt_dict_t SIMIX_host_get_storage_list(smx_host_t host){ xbt_assert((host != NULL), "Invalid parameters (simix host is NULL)"); - return surf_workstation_model->extension.workstation.get_storage_list(host); + return surf_workstation_get_storage_list(host); }