thesis f. redaelli uic slides en
TRANSCRIPT
University of Illinois at Chicago
Thesis Committee
Prof. J. Lillis, Prof. S. Dutt, Prof. D. Sciuto
Task Scheduling T Tailored forailored for PPartiallyartially D Dynamicallyynamically
RReconfigurableeconfigurable D Devicesevices
UIC Thesis Defence UIC Thesis DefenceMay 2007 May 2007
.:: Francesco Redaelli ::..:: Francesco Redaelli ::.
2
OutlineOutline
• Outline
• Context Definition
• Problem Definition
• Reconfiguration Features
• State of the Art
• ILP Formulation
• Reconfiguration-aware Scheduler
• Experimental Results
• Conclusion and Future Works
3
AimsAims
(A1) Definition of a formal model for the scheduling problem in a partially dynamically reconfigurable scenario
(A2) Development of a heuristic method to solve in reasonable time the proposed scheduling problem
(A3) Validation of the proposed ILP model and heuristic scheduler
4
What’s next…What’s next…
• Outline
• Context Definition
• Problem Definition
• Reconfiguration Features
• State of the Art
• ILP Formulation
• Reconfiguration-aware Scheduler
• Experimental Results
• Conclusion and Future Works
5
Context DefinitionContext Definition
6
ReconfigurationReconfiguration
The process of physically altering the location or functionality of network or system elements. Automatic configuration describes the way sophisticated networks can readjust themselves in the event of a link or device failing, enabling the network to continue operation.
Gerald Estrin, 1960
7
ReconfigurationReconfiguration
Partial Total
8
ReconfigurationReconfiguration
Partial TotalDynamic
10
What’s next…What’s next…
• Outline
• Context Definition
• Problem Definition
• Reconfiguration Features
• State of the Art
• ILP Formulation
• Reconfiguration-aware Scheduler
• Experimental Results
• Conclusion and Future Works
11
Problem Definition Problem Definition 1 of 21 of 2
•G=<O,P>
•O set of tasks
•P set of dependences between tasks (edges)
•schedule the task graph onto a dynamically partially reconfigurable architecture with an area constraint Atot in order to minimize the completion time.
Each task i is characterized by:
• tyi the type of the task;
• ci the area occupied onto the FPGA;
• tri the time needed to reconfigure the task onto the
FPGA;
• tei the execution time of the task;
12
Problem Definition Problem Definition 2 of 22 of 2
A solution for this problem is found giving for eack task:
• the reconfiguration beginning time;
• the execution beginning time;
• the position on the FPGA where it is mapped.
The FPGA area constraint Atot is given as the number of columns available for the reconfigurable hardware.
The area property ci of each task is given as the number of adjacent columns onto the FPGA.
13
What’s next…What’s next…
• Outline
• Context Definition
• Problem Definition
• Reconfiguration Features
• State of the Art
• ILP Formulation
• Reconfiguration-aware Scheduler
• Experimental Results
• Conclusion and Future Works
14
Reconfiguration FeaturesReconfiguration Features
Partially Dynamically Reconfigurable FPGAs allow:
•Configuration prefetching
•Module reuse
•Anti-fragmentation techniques
Try to exploit these features in the best way to schedule the task graph
15
Configuration PrefetchingConfiguration Prefetching
Ti: execution of task i
Ri: configuration of task i
16
Module ReuseModule Reuse
Ti: execution of task i
Ri: configuration of task i
T1
T2
T3
T4R4
T1
T2
T3
T4
T5R5
time
FPG
A A
REA
time
FPG
A A
REA
17
Anti-Fragmentation TechniquesAnti-Fragmentation Techniques
Ti: execution of task i
Ri: configuration of task i
18
What’s next…What’s next…
• Outline
• Context Definition
• Problem Definition
• Reconfiguration Features
• State of the Art
• ILP Formulation
• Reconfiguration-aware Scheduler
• Experimental Results
• Conclusion and Future Works
19
State Of the Art State Of the Art 1 of 31 of 3
Scheduling done using a list-based approach
HW/SW Co-design usually considered
Anti-fragmentation techniques are not considered:
• First Fit
• Best Fit
Most frequently used deconfiguration policy is the LIU one with no limitation
20
State Of the Art State Of the Art 2 of 32 of 3
[BBD06a] S. Banerjee, E. Bozorgzadeh, N. D. Dutt “Integrating physical constraints in HW-SW Partitioning for Architectures with partial dynamic reconfiguration”, IEEE Transactions on very large scale integration system, vol. 14, no. 11, november 2006
PRO:
• Extendible for only HW environments;
• Configuration prefetching;
• Explicit adjacent column based constraints for task mapping;
• Partial reconfiguration;
CONS:
• No module reuse;
21
State Of the Art State Of the Art 3 of 33 of 3
[BBD06b] S. Banerjee, E. Bozorgzadeh, N. Dutt, ”PARLGRAN: parallelism granularity selection for scheduling task chains on dynamically reconfigurable architectures”, In Proceedings of Asia and South Pacific Design Automation Conference, ASP-DAC, 24-27 January, 2006.
PRO:
• Thought for only HW environments;
• Configuration prefetching;
• Anti-fragmentation techniques for linear task graphs;
• Partial reconfiguration;
CONS:
• Only linear task graphs;
• No module reuse.
22
What’s next…What’s next…
• Outline
• Context Definition
• Problem Definition
• Reconfiguration Features
• State of the Art
• ILP Formulation
• Reconfiguration-aware Scheduler
• Experimental Results
• Conclusion and Future Works
23
ILP Formulation - Basic IdeaILP Formulation - Basic Idea
24
ILP Formulation ILP Formulation 1 of 21 of 2
Constants:
• tyij equal to 1 if task i has the same type of task j;
• tri the time needed to reconfigure the task onto the FPGA;
• tei the execution time of the task;
• ci the number of adjacent columns occupied onto the FPGA.
Variables:
• ritk = 1 if task i is on the FPGA at time t starting from column k
= 0 otherwise
• mri = 1 if task i exploits module reuse
= 0 otherwise
• recit = 1 if task i is reconfigured at time t
= 0 otherwise
25
ILP Formulation ILP Formulation 2 of 22 of 2
OBJECTIVE OBJECTIVE FUNCTIONFUNCTIONTfMIN
Variables (Cont'd)
• Soni: time when task i arrives on the FPGA
• Soffi: time when task i is removed from the FPGA
• Tf: task graph completion time
26
ILP Formulation – Constraints ILP Formulation – Constraints 1 1 of 5of 5
1) Area constraint
Atotcrhiihk
Atot
k
O
i
11,
2) Non overlap constraint
1,,)1,1max(1
ihl
k
ickl
O
irkh
3) Right space
0211
ihk
Atot
icAtotk
T
h
O
ir
27
ILP Formulation – Constraints ILP Formulation – Constraints 2 2 of 5of 5
4) Zero time
0011
ki
Atot
k
O
ir
7) Always same column
)1(,,,111
ihkimk
T
miml
Atot
l
T
mrTrrkhi
ihk
Atot
kirhSoff
1
,, hi 8) Definition of on board time and offboard time
)1(11 ihk
Atot
kihk
Atot
kirTrhSon
28
ILP Formulation – Constraints ILP Formulation – Constraints 3 3 of 5of 5
1,11
iiihk
Atot
k
T
hSonSoffri
9) Continuous usage
10) Reconfigured tasks constraints
iihk
Atot
k
T
h
ei
ri
mrTrtti 11
,
ii
T
himrTrechSoni
)(,
1
iii
T
hmrTSonrechi
)(,
1
29
ILP Formulation – Constraints ILP Formulation – Constraints 4 4 of 5of 5
)1()1(1,,, )1()(,1
iihkkhikihjij
O
ijjmrTrTrrtykhi
12) Permission of reuse
1,)1,1max(1
im
h
rithm
O
irech
11) Single reconfiguration device
)1(,11 iihk
Atot
k
T
h
ei
mrTrti
13) Reused task constraints
iih
T
hmrreci
1,
1
30
ILP Formulation – Constraints ILP Formulation – Constraints 5 5 of 5of 5
iejjSofftSoffPji ,),(
14) Precedences
TTf 16) Final time constraint
iSoffTfVi ,
15) Final time definition
31
What’s next…What’s next…
• Outline
• Context Definition
• Problem Definition
• Reconfiguration Features
• State of the Art
• ILP Formulation
• Reconfiguration-aware Scheduler
• Experimental Results
• Conclusion and Future Works
32
NapoleonNapoleonReconfiguration-Aware Scheduler Reconfiguration-Aware Scheduler 1 of 31 of 3
Napoleon: heuristic reconfiguration-aware scheduler, list-based with priority function the ALAP value of a node. It allows out of order scheduling for particular task graphs.
It tries to exploits at best
• Configuration prefetching
• Module reuse
It also uses anti-fragmentation techniques to improve the quality of the solution
It tries to build a solution taking into account the constraints found in the ILP formulation of the problem
33
NapoleonNapoleonReconfiguration-Aware Scheduler Reconfiguration-Aware Scheduler 2 of 32 of 3
Anti-Fraqmentation Techniques:
farthest placement
Ti: execution of task i
Ri: configuration of task i
34
limited deconfiguration
Ti: execution of task i
Ri: configuration of task i
NapoleonNapoleonReconfiguration-Aware Scheduler Reconfiguration-Aware Scheduler 3 of 33 of 3
35
What’s next…What’s next…
• Outline
• Context Definition
• Problem Definition
• Reconfiguration Features
• State of the Art
• ILP Formulation
• Reconfiguration-aware Scheduler
• Experimental Results
• Conclusion and Future Works
36
Experimental Results Experimental Results
GLPK [http://gnuwin32.sourceforge.net/packages/glpk.htm] has been used to solve the ILP instances
Benchmark
Ten task graphs with ten nodes [BBD06a]
9135 task graphs with a number of nodes in a 10-1000
range
37
Other AlgorithmsOther Algorithms
ASAP
ALAP
DyASAP
These algorithms have been used to verify the real effectiveness of Napoleon
They have been chosen as the most representative for the solution of our problem in the literature
When a deconfiguration policy is used it is unlimited
All these algorithms have been implemented
ASAPS
ALAPS
DyASAPS
ASAPB
ALAPB
DyASAPB
ASAPLIU
ALAPLIU
DyASAPLIU
38
Results Results 1 of 41 of 4
39
Results Results 2 of 42 of 4
40
Results Results 3 of 43 of 4
Ten1 Ten2 Ten3 Ten4 Ten5 Ten6 Ten7 Ten8 Ten9 Ten100
5
10
15
20
25
30
35
40
ALAPASAPBDyASAPSALAPLIUNapoleonILP
41
Results Results 4 of 44 of 4
42
What’s next…What’s next…
• Outline
• Context Definition
• Problem Definition
• Reconfiguration Features
• State of the Art
• ILP Formulation
• Reconfiguration-aware Scheduler
• Experimental Results
• Conclusion and Future Works
43
Conclusions and Future WorksConclusions and Future Works
Conclusions:
ILP model formulation for the scheduling problem in a partially dynamically reconfigurable scenario --> (A1)
Napoleon heuristic method based on the ILP formulation --> (A2)
Napoleon obtains schedule length (in average) 18.6% better than the other algorithms --> (A3)
Future works
Integrate Napoleon into a general framework, to create a scheduling/reconfiguration-aware partitioning
Integrate Napoleon in DRESD-HLR to complete the design flow to implement large applications onto partially dynamically reconfigurable devices
Try new anti-fragmentation techniques
44
Questions?Questions?
Thank you…Thank you…