Professional Documents
Culture Documents
SCH 1
SCH 1
c Giovanni De Micheli
Stanford University
Outline
c GDM
Relative scheduling.
Heuristic methods.
Scheduling
c GDM
Circuit model:
{
Sequencing graph.
Cycle-time is given.
Scheduling:
{
Goal:
{
Example
c GDM
0
NOP
11
10
<
n
NOP
0
NOP
TIME 1
TIME 2
TIME 3
TIME 4
*
3
11
n
NOP
10
<
Taxonomy
c GDM
Unconstrained scheduling.
Scheduling with timing constraints:
{
Latency.
Chaining.
Synchronization.
Pipeline scheduling.
Simplest model
c GDM
Cycle-time is given.
Minimize latency.
Minimum-latency unconstrained
scheduling problem
c GDM
= '(vi),
{ ti
tj + dj
and tn is minimum.
c GDM
ASAP ( G (V; E )) f
s
Schedule v0 by setting t0 = 1;
repeat f
Select a vertex v whose pred. are all scheduled;
Schedule v by setting t = max t + d ;
S
until (v is scheduled) ;
return (t );
n
S
i
:(vj ;vi )
Example
c GDM
0
NOP
TIME 1
TIME 2
TIME 3
TIME 4
*
3
11
n
NOP
10
<
c GDM
ALAP( G (V; E ); ) f
s
Schedule v by setting t = + 1;
repeat f
Select vertex v whose succ. are all scheduled;
Schedule v by setting t = min t d ;
L
n
L
i
:(vi ;vj )
Example
c GDM
NOP
TIME 1
TIME 2
*
4
TIME 3
*
5
TIME 4
10
11
+
n
NOP
<
Remarks
c GDM
Mobility:
{
Example
Critical path.
fv6; v7g.
c GDM
c GDM
Motivation:
{
Interface design.
Constraints:
{
Feasibility of a solution.
c GDM
Example
c GDM
0
NOP
NOP
MAX
TIME
3
+
1
n
NOP
*
3
MIN
TIME
4
n
NOP
c GDM
Assumption:
{
Bellman-Ford, Liao-Wong.
c GDM
Unbounded delays:
{
Synchronization.
Anchors.
{
Unbounded-delay operations.
Relative scheduling:
{
Combine schedules.
Example
c GDM
0
NOP
1
SYN
n
NOP
c GDM
Start-time:
{
{
c GDM
Problem denition:
{
Solution:
{
c GDM
Feasible problem:
{
A solution exists
when unknown delays are zero.
Well-posed problem:
{
A solution exists
for any value of the unknown delays.
Theorem:
{
Example
i
a
ij
d
d
a
c GDM
d
a2
a1
v
(a)
(b)
ij
a1
d
a2
a2
v
i
u
ij
(c)
c GDM
Analyze graph:
{
Detect anchors.
Well-posedness test.
Example
c GDM
0
NOP
1
*
SYNCH
a
3
2
+
N
NOP
Example of control-unit
c GDM
start
Completion of (a)
counter
1100
0000
0010
0001
a 1 2
synch
c GDM
Dual problem:
{
Assumption:
{
c GDM
= '(vi),
{ ti
c GDM
Intractable problem.
Algorithms:
{
Exact:
Integer linear program.
Hu (restrictive assumptions).
{
Approximate:
List scheduling.
Force-directed scheduling.
ILP formulation:
c GDM
X = fxil; i = 1; 2; : : : ; n; l = 1; 2; : : : ; + 1g.
xil, is TRUE only when operation vi
starts in step l of the schedule (i.e. l = ti).
is an upper bound on latency.
Xl xil
l
c GDM
X xil = 1
i = 1; 2; : : : ; n
tj + dj
8(vj ; vi) 2 E
X l xil X l xjl
l
dj 0 8(vj ; vi) 2 E
i:T (vi)=k
xil ak k = 1; 2; : : : ; nres; 8l
ILP Formulation
min
Xx
Xl x Xl x
X X
il
ij
jl
jjtjj
c GDM
such that
= 1 i = 1 ; 2; : : : ; n
0 i; j = 1; 2; : : : ; n; (v ; v ) 2 E
a k = 1; 2; : : : ; n ; l = 0; 1; : : : ; t
: (vi )=k
=l
di
+1
im
res
Example
c GDM
0
NOP
*
3
n
NOP
Resource constraints:
{
2 ALUs; 2 Multipliers.
a1 = 2; a2 = 2.
Single-cycle operation.
di = 1 8i.
10
11
<
Example
c GDM
Example
c GDM
0
NOP
TIME 1
10
TIME 2
<
*
7
TIME 3
11
*
5
TIME 4
+
n
NOP
c GDM
X l xnl + 1
l
Example
c GDM
0
NOP
10
TIME 1
TIME 2
<
*
7
TIME 3
11
*
5
TIME 4
+
n
NOP
ILP Solution
c GDM
Exact method.
Disadvantages:
{