/** Main function */ int main(int argc, char *argv[]) { MSG_init(&argc, argv); if (argc < 3) { printf("Usage: %s platform_file deployment_file\n", argv[0]); exit(1); } char *platform_file = argv[1]; char *deployment_file = argv[2]; MSG_create_environment(platform_file); //declaring user variables TRACE_host_variable_declare("HDD_capacity"); TRACE_host_variable_declare("HDD_utilization"); //register functions and launch deployment MSG_function_register("master", master); MSG_function_register("slave", master); MSG_launch_application(deployment_file); MSG_main(); //get user declared variables unsigned int cursor; char *variable; xbt_dynar_t host_variables = TRACE_get_host_variables (); if (host_variables){ XBT_INFO ("Declared host variables:"); xbt_dynar_foreach (host_variables, cursor, variable){ XBT_INFO ("%s", variable); } xbt_dynar_free (&host_variables); }
int main(int argc, char *argv[]) { MSG_init(&argc, argv); xbt_assert(argc > 2, "Usage: %s platform_file deployment_file\n" "\tExample: %s msg_platform.xml msg_deployment.xml\n", argv[0], argv[0]); MSG_create_environment(argv[1]); //declaring user variables TRACE_host_variable_declare("HDD_capacity"); TRACE_host_variable_declare("HDD_utilization"); //register functions and launch deployment MSG_function_register("master", trace_fun); MSG_function_register("worker", trace_fun); MSG_launch_application(argv[2]); MSG_main(); //get user declared variables unsigned int cursor; char *variable; xbt_dynar_t host_variables = TRACE_get_host_variables (); if (host_variables){ XBT_INFO ("Declared host variables:"); xbt_dynar_foreach (host_variables, cursor, variable){ XBT_INFO ("%s", variable); } xbt_dynar_free (&host_variables); }
int main(int argc, char *argv[]) { MSG_init(&argc, argv); xbt_assert(argc > 2, "Usage: %s platform_file deployment_file\n" "\tExample: %s msg_platform.xml msg_deployment.xml\n", argv[0], argv[0]); MSG_create_environment(argv[1]); //declaring user variables TRACE_host_variable_declare("is_worker"); TRACE_host_variable_declare("is_master"); TRACE_host_variable_declare("task_creation"); TRACE_host_variable_declare("task_computation"); //declaring user markers and values TRACE_declare_mark("msmark"); TRACE_declare_mark_value ("msmark", "start_send_tasks"); TRACE_declare_mark_value ("msmark", "finish_send_tasks"); //declaring user categories with RGB colors (values from 0 to 1) TRACE_category_with_color ("compute", "1 0 0"); //compute is red TRACE_category_with_color ("finalize", "0 1 0"); //finalize is green //categories without user-defined colors receive random colors generated by the tracing system TRACE_category ("request"); TRACE_category_with_color ("report", NULL); MSG_function_register("master", master); MSG_function_register("worker", worker); MSG_launch_application(argv[2]); MSG_main(); unsigned int cursor; xbt_dynar_t categories = TRACE_get_categories (); if (categories){ XBT_INFO ("Declared tracing categories:"); char *category; xbt_dynar_foreach (categories, cursor, category){ XBT_INFO ("%s", category); } xbt_dynar_free (&categories); }
/** Test function */ MSG_error_t test_all(const char *platform_file, const char *application_file) { MSG_error_t res = MSG_OK; { /* Simulation setting */ MSG_set_channel_number(0); MSG_create_environment(platform_file); } { /* declaring tracing categories */ //declaring user variables TRACE_host_variable_declare("is_slave"); TRACE_host_variable_declare("is_master"); TRACE_host_variable_declare("task_creation"); TRACE_host_variable_declare("task_computation"); //declaring user markers TRACE_declare_mark("msmark"); //declaring user categories with RGB colors (values from 0 to 1) TRACE_category_with_color ("compute", "1 0 0"); //compute is red TRACE_category_with_color ("finalize", "0 1 0"); //finalize is green //categories without user-defined colors receive //random colors generated by the tracing system TRACE_category ("request"); TRACE_category_with_color ("report", NULL); } { /* Application deployment */ MSG_function_register("master", master); MSG_function_register("slave", slave); MSG_launch_application(application_file); } res = MSG_main(); XBT_INFO("Simulation time %g", MSG_get_clock()); return res; }