A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
factoring
[simgrid.git]
/
examples
/
msg
/
cloud
/
migrate_vm.c
diff --git
a/examples/msg/cloud/migrate_vm.c
b/examples/msg/cloud/migrate_vm.c
index
0ada43f
..
1c92fb5
100644
(file)
--- a/
examples/msg/cloud/migrate_vm.c
+++ b/
examples/msg/cloud/migrate_vm.c
@@
-1,20
+1,14
@@
-/* Copyright (c) 2007-2012. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2007-2015. The SimGrid Team.
+ * 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. */
/* 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 <stdio.h>
-#include "msg/msg.h"
-#include "xbt/sysdep.h" /* calloc, printf */
+#include "simgrid/msg.h"
-/* Create a log channel to have nice outputs. */
-#include "xbt/log.h"
-#include "xbt/asserts.h"
-XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test,
- "Messages specific for this msg example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test, "Messages specific for this msg example");
-
-void vm_migrate(msg_vm_t vm, msg_host_t dst_pm)
+static void vm_migrate(msg_vm_t vm, msg_host_t dst_pm)
{
msg_host_t src_pm = MSG_vm_get_pm(vm);
double mig_sta = MSG_get_clock();
{
msg_host_t src_pm = MSG_vm_get_pm(vm);
double mig_sta = MSG_get_clock();
@@
-22,25
+16,25
@@
void vm_migrate(msg_vm_t vm, msg_host_t dst_pm)
double mig_end = MSG_get_clock();
XBT_INFO("%s migrated: %s->%s in %g s", MSG_vm_get_name(vm),
double mig_end = MSG_get_clock();
XBT_INFO("%s migrated: %s->%s in %g s", MSG_vm_get_name(vm),
-
MSG_host_get_name(src_pm), MSG_host_get_name(dst_pm),
-
mig_end - mig_sta);
+ MSG_host_get_name(src_pm), MSG_host_get_name(dst_pm),
+ mig_end - mig_sta);
}
}
-int migration_worker_main(int argc, char *argv[])
+
static
int migration_worker_main(int argc, char *argv[])
{
xbt_assert(argc == 3);
char *vm_name = argv[1];
char *dst_pm_name = argv[2];
{
xbt_assert(argc == 3);
char *vm_name = argv[1];
char *dst_pm_name = argv[2];
- msg_vm_t vm = MSG_
get_
host_by_name(vm_name);
- msg_host_t dst_pm = MSG_
get_
host_by_name(dst_pm_name);
+ msg_vm_t vm = MSG_host_by_name(vm_name);
+ msg_host_t dst_pm = MSG_host_by_name(dst_pm_name);
vm_migrate(vm, dst_pm);
return 0;
}
vm_migrate(vm, dst_pm);
return 0;
}
-void vm_migrate_async(msg_vm_t vm, msg_host_t dst_pm)
+
static
void vm_migrate_async(msg_vm_t vm, msg_host_t dst_pm)
{
const char *vm_name = MSG_vm_get_name(vm);
const char *dst_pm_name = MSG_host_get_name(dst_pm);
{
const char *vm_name = MSG_vm_get_name(vm);
const char *dst_pm_name = MSG_host_get_name(dst_pm);
@@
-56,42
+50,36
@@
void vm_migrate_async(msg_vm_t vm, msg_host_t dst_pm)
MSG_process_create_with_arguments(pr_name, migration_worker_main, NULL, host, 3, argv);
}
MSG_process_create_with_arguments(pr_name, migration_worker_main, NULL, host, 3, argv);
}
-int master_main(int argc, char *argv[])
+
static
int master_main(int argc, char *argv[])
{
xbt_dynar_t hosts_dynar = MSG_hosts_as_dynar();
msg_host_t pm0 = xbt_dynar_get_as(hosts_dynar, 0, msg_host_t);
msg_host_t pm1 = xbt_dynar_get_as(hosts_dynar, 1, msg_host_t);
msg_host_t pm2 = xbt_dynar_get_as(hosts_dynar, 2, msg_host_t);
msg_vm_t vm0, vm1;
{
xbt_dynar_t hosts_dynar = MSG_hosts_as_dynar();
msg_host_t pm0 = xbt_dynar_get_as(hosts_dynar, 0, msg_host_t);
msg_host_t pm1 = xbt_dynar_get_as(hosts_dynar, 1, msg_host_t);
msg_host_t pm2 = xbt_dynar_get_as(hosts_dynar, 2, msg_host_t);
msg_vm_t vm0, vm1;
- s_
ws
_params_t params;
+ s_
vm
_params_t params;
memset(¶ms, 0, sizeof(params));
memset(¶ms, 0, sizeof(params));
-
-
vm0 = MSG_vm_create_core(pm0, "VM0");
params.ramsize = 1L * 1000 * 1000 * 1000; // 1Gbytes
MSG_host_set_params(vm0, ¶ms);
MSG_vm_start(vm0);
vm0 = MSG_vm_create_core(pm0, "VM0");
params.ramsize = 1L * 1000 * 1000 * 1000; // 1Gbytes
MSG_host_set_params(vm0, ¶ms);
MSG_vm_start(vm0);
- XBT_INFO("Test: Migrate a VM with %l
d
Mbytes RAM", params.ramsize / 1000 / 1000);
+ XBT_INFO("Test: Migrate a VM with %l
lu
Mbytes RAM", params.ramsize / 1000 / 1000);
vm_migrate(vm0, pm1);
MSG_vm_destroy(vm0);
vm_migrate(vm0, pm1);
MSG_vm_destroy(vm0);
-
-
vm0 = MSG_vm_create_core(pm0, "VM0");
params.ramsize = 1L * 1000 * 1000 * 100; // 100Mbytes
MSG_host_set_params(vm0, ¶ms);
MSG_vm_start(vm0);
vm0 = MSG_vm_create_core(pm0, "VM0");
params.ramsize = 1L * 1000 * 1000 * 100; // 100Mbytes
MSG_host_set_params(vm0, ¶ms);
MSG_vm_start(vm0);
- XBT_INFO("Test: Migrate a VM with %l
d
Mbytes RAM", params.ramsize / 1000 / 1000);
+ XBT_INFO("Test: Migrate a VM with %l
lu
Mbytes RAM", params.ramsize / 1000 / 1000);
vm_migrate(vm0, pm1);
MSG_vm_destroy(vm0);
vm_migrate(vm0, pm1);
MSG_vm_destroy(vm0);
-
-
vm0 = MSG_vm_create_core(pm0, "VM0");
vm1 = MSG_vm_create_core(pm0, "VM1");
vm0 = MSG_vm_create_core(pm0, "VM0");
vm1 = MSG_vm_create_core(pm0, "VM1");
@@
-109,8
+97,6
@@
int master_main(int argc, char *argv[])
MSG_vm_destroy(vm0);
MSG_vm_destroy(vm1);
MSG_vm_destroy(vm0);
MSG_vm_destroy(vm1);
-
-
vm0 = MSG_vm_create_core(pm0, "VM0");
vm1 = MSG_vm_create_core(pm0, "VM1");
vm0 = MSG_vm_create_core(pm0, "VM0");
vm1 = MSG_vm_create_core(pm0, "VM1");
@@
-128,11
+114,10
@@
int master_main(int argc, char *argv[])
MSG_vm_destroy(vm0);
MSG_vm_destroy(vm1);
MSG_vm_destroy(vm0);
MSG_vm_destroy(vm1);
-
return 0;
}
return 0;
}
-void launch_master(msg_host_t host)
+
static
void launch_master(msg_host_t host)
{
const char *pr_name = "master_";
char **argv = xbt_new(char *, 2);
{
const char *pr_name = "master_";
char **argv = xbt_new(char *, 2);
@@
-142,7
+127,6
@@
void launch_master(msg_host_t host)
MSG_process_create_with_arguments(pr_name, master_main, NULL, host, 1, argv);
}
MSG_process_create_with_arguments(pr_name, master_main, NULL, host, 1, argv);
}
-
int main(int argc, char *argv[])
{
/* Get the arguments */
int main(int argc, char *argv[])
{
/* Get the arguments */
@@
-158,6
+142,5
@@
int main(int argc, char *argv[])
int res = MSG_main();
XBT_INFO("Bye (simulation time %g)", MSG_get_clock());
int res = MSG_main();
XBT_INFO("Bye (simulation time %g)", MSG_get_clock());
-
return !(res == MSG_OK);
}
return !(res == MSG_OK);
}