Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
1fe82e42c47e52be853e5fe5b72cab7e1844311e
[simgrid.git] / teshsuite / simdag / network / mxn / test_intra_all2all.c
1
2 /*
3  * SimDag
4  * Latency tests
5  * Copyright (C) 2007 
6  * Sascha Hunold, Frederic Suter
7  */
8
9 #include <stdio.h>
10 #include <stdlib.h>
11
12 #include "simdag/simdag.h"
13
14 /*
15  * intra communication test
16  * All2All
17  * 
18  * send 1 byte from all to all
19  * + 2 secs latency
20  * should be 8  (platform_4p_1switch.xml)
21  * 
22  */
23
24 int main(int argc, char **argv)
25 {
26   double time;
27   SD_task_t task;
28
29   double communication_amount[] = { 0.0, 1.0, 1.0, 1.0,
30     1.0, 0.0, 1.0, 1.0,
31     1.0, 1.0, 0.0, 1.0,
32     1.0, 1.0, 1.0, 0.0,
33   };
34
35   double no_cost[] = { 0.0, 0.0, 0.0, 0.0 };
36
37
38   /***************************************/
39
40   SD_init(&argc, argv);
41   SD_create_environment(argv[1]);
42
43   task = SD_task_create("All2all task", NULL, 1.0);
44
45   SD_task_schedule(task, 4, SD_workstation_get_list(), no_cost,
46                    communication_amount, -1.0);
47
48   SD_simulate(-1.0);
49
50   time = SD_get_clock();
51
52   printf("%g\n", time);
53   fflush(stdout);
54
55   SD_task_destroy(task);
56
57   SD_exit();
58
59   return 0;
60 }