#include "xbt/ex.h" /* ex_backtrace_display */
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(simix_kernel, simix,
"Logging specific to SIMIX (kernel)");
#include "xbt/ex.h" /* ex_backtrace_display */
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(simix_kernel, simix,
"Logging specific to SIMIX (kernel)");
xbt_swag_new(xbt_swag_offset(proc, process_hookup));
simix_global->current_process = NULL;
simix_global->registered_functions = xbt_dict_new();
xbt_swag_new(xbt_swag_offset(proc, process_hookup));
simix_global->current_process = NULL;
simix_global->registered_functions = xbt_dict_new();
simix_global->create_process_function = NULL;
simix_global->kill_process_function = NULL;
simix_global->cleanup_process_function = SIMIX_process_cleanup;
simix_global->create_process_function = NULL;
simix_global->kill_process_function = NULL;
simix_global->cleanup_process_function = SIMIX_process_cleanup;
xbt_context_empty_trash();
if (xbt_swag_size(simix_global->process_to_run) && (elapsed_time > 0)) {
DEBUG0("**************************************************");
}
xbt_context_empty_trash();
if (xbt_swag_size(simix_global->process_to_run) && (elapsed_time > 0)) {
DEBUG0("**************************************************");
}
while ((process = xbt_swag_extract(simix_global->process_to_run))) {
DEBUG2("Scheduling %s on %s",
process->name, process->simdata->smx_host->name);
while ((process = xbt_swag_extract(simix_global->process_to_run))) {
DEBUG2("Scheduling %s on %s",
process->name, process->simdata->smx_host->name);
if (xbt_swag_size(model->common_public->states.failed_action_set)
|| xbt_swag_size(model->common_public->states.
done_action_set)) {
state_modifications = 1;
if (xbt_swag_size(model->common_public->states.failed_action_set)
|| xbt_swag_size(model->common_public->states.
done_action_set)) {
state_modifications = 1;
DEBUG2("Launching %s on %s", args->name, args->hostname);
process = SIMIX_process_create(args->name, args->code,
args->data, args->hostname,
DEBUG2("Launching %s on %s", args->name, args->hostname);
process = SIMIX_process_create(args->name, args->code,
args->data, args->hostname,
if (args->kill_time > SIMIX_get_clock()) {
surf_timer_model->extension_public->set(args->kill_time,
(void *)
if (args->kill_time > SIMIX_get_clock()) {
surf_timer_model->extension_public->set(args->kill_time,
(void *)