16
POLITECNICO DI MILANO Task Scheduling Techniques on Task Scheduling Techniques on Dynamically Reconfigurable Systems Dynamically Reconfigurable Systems Roberto Cordone: [email protected] Francesco Redaelli: [email protected] Reconfigurable Computing Italian Meeting Reconfigurable Computing Italian Meeting 19 December 2008 Room S01, Politecnico di Milano - Milan (Italy)

RCIM 2008 - Modello Scheduling

Embed Size (px)

Citation preview

Page 1: RCIM 2008 - Modello Scheduling

POLITECNICO DI MILANO

Task Scheduling Techniques on Task Scheduling Techniques on

Dynamically Reconfigurable SystemsDynamically Reconfigurable Systems

Roberto Cordone: [email protected]

Francesco Redaelli: [email protected]

Reconfigurable Computing Italian MeetingReconfigurable Computing Italian Meeting19 December 2008

Room S01, Politecnico di Milano - Milan (Italy)

Page 2: RCIM 2008 - Modello Scheduling

22

OutlineOutline

Aims

ILP model

Heuristic solution

Experimental Results

Concluding Remarks

Page 3: RCIM 2008 - Modello Scheduling

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

Page 4: RCIM 2008 - Modello Scheduling

4

An ILP model for placement and schedulingAn ILP model for placement and scheduling

It derives from the general model by a heuristic definition of

partitioning and mapping

1. choose a specific partition xs and build the TDG:

• each node i is a task

• each arc (i,j) a precedence induced by one or more

precedences between the operations in i and those in j

2. choose a specific mode mi for each task i:

size, reconfiguration and latency depend on I

3. each RU is a column of a FPGA (U = {1,…,|U|}),

the device is homogeneous and γu is uniform:a task can be implemented anywhere, given enough RUs

4. Additional (technological) constraint:

limited number of simultaneous reconfigurations

Page 5: RCIM 2008 - Modello Scheduling

5

The decision variablesThe decision variables

pihk = 1 if task i is present on the device at time h

starting from column k; pihk = 0 otherwise

rih = 1 if the reconfiguration of task i starts at time h ;

rih = 0 otherwise

mi = 1 if task i exploits module reuse (no reconfiguration);

mi = 0 otherwise

τi is the start time of task i (reconfiguration if no module reuse,

execution otherwise)

ti is the execution start time of task i

Page 6: RCIM 2008 - Modello Scheduling

6

The placement and scheduling model (1)The placement and scheduling model (1)

Different tasks do not overlap

A task has a single leftmost RU

A task cannot be placed too far on the right

Minimize the completion time

Subject to

Page 7: RCIM 2008 - Modello Scheduling

7

The placement and scheduling model (2)The placement and scheduling model (2)

A task either exploits module reuse or it is reconfigured

If there is no module reuse, the task starts with the

reconfiguration

If there is module reuse, the task is directly executed

If no module reuse occurs, the execution start follows the task

start at least by the reconfiguration time

Page 8: RCIM 2008 - Modello Scheduling

8

The placement and scheduling model (3)The placement and scheduling model (3)

A task is removed at the end of its execution

A task occupies the device continuously from the start to the

execution end

All precedences are respected

The number of simultaneous reconfigurations is limited

Page 9: RCIM 2008 - Modello Scheduling

9

The placement and scheduling model (4)The placement and scheduling model (4)

Let aij = 1 if tasks i and j are mapped onto the same mode;

aij = 0 otherwise

If a task exploits module reuse, its execution is preceded by the

execution of a compatible task using the same RUs

If a task exploits module reuse and its execution is preceded by

an incompatible task on overlapping RUs, a compatible task must

be executed between them using the same RUs as the first one

for

Page 10: RCIM 2008 - Modello Scheduling

10

NapoleonNapoleon

ReconfigurationReconfiguration--Aware Scheduler Aware Scheduler 1 of 21 of 2

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 constraintsfound in the ILP formulation of the problem

Page 11: RCIM 2008 - Modello Scheduling

11

NapoleonNapoleon

ReconfigurationReconfiguration--Aware Scheduler Aware Scheduler 2 of 22 of 2

Anti-Fraqmentation Techniques:

farthest placement

Ti: execution of task i

Ri: configuration of task i

limited deconfiguration

Page 12: RCIM 2008 - Modello Scheduling

12

Experimental Results Experimental Results

ASAP

ALAP

DyASAP

They have been chosen as the most representative for the solution of our problem in the literature

ASAPS

ALAPS

DyASAPS

ASAPB

ALAPB

DyASAPB

ASAPLIU

ALAPLIU

DyASAPLIU

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

Page 13: RCIM 2008 - Modello Scheduling

13

Results Results 1 of 31 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

Page 14: RCIM 2008 - Modello Scheduling

14

Results Results 3 of 33 of 3

9135 task graphs with a number of nodes in a 10-1000 range

Page 15: RCIM 2008 - Modello Scheduling

15

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

Page 16: RCIM 2008 - Modello Scheduling

16

QuestionsQuestions