File: FAQ.doc

package info (click to toggle)
simgrid 4.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 39,192 kB
  • sloc: cpp: 124,913; ansic: 66,744; python: 8,560; java: 6,773; fortran: 6,079; f90: 5,123; xml: 4,587; sh: 2,194; perl: 1,436; makefile: 111; lisp: 49; javascript: 7; sed: 6
file content (28 lines) | stat: -rw-r--r-- 1,014 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/*! @page FAQ Frequently Asked Questions

@subsubsection Implementing communication delays between SimDAG tasks.

A classic question of SimDag newcomers is about how to express a
communication delay between tasks. The thing is that in SimDag, both
computation and communication are seen as tasks.  So, if you want to
model a data dependency between two DAG tasks t1 and t2, you have to
create 3 SD_tasks: t1, t2 and c and add dependencies in the following
way:

@code
SD_task_dependency_add(t1, c);
SD_task_dependency_add(c, t2);
@endcode

This way task t2 cannot start before the termination of communication c
which in turn cannot start before t1 ends.

When creating task c, you have to associate an amount of data (in bytes)
corresponding to what has to be sent by t1 to t2.

Finally to schedule the communication task c, you have to build a list
comprising the workstations on which t1 and t2 are scheduled (w1 and w2
for example) and build a communication matrix that should look like
[0;amount ; 0; 0].

*/