l i a b l eh kc o m p u t i n gl a b o r a t o r y performance yield-driven task allocation and...

25
l i a b l e h k C o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process and Scheduling for MPSoCs under Process Variation Variation Presenter: Lin Huang Presenter: Lin Huang Lin Huang and Qiang Xu CU hk RE liable computing laboratory (CURE) The Chinese University of Hong Kong

Post on 20-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

l i a b l eh k C o m p u t i n gL a b o r a t o r y

Performance Yield-Driven Task Performance Yield-Driven Task Allocation and Scheduling for Allocation and Scheduling for

MPSoCs under Process VariationMPSoCs under Process Variation

Presenter: Lin HuangPresenter: Lin Huang

Lin Huang and Qiang Xu

CUhk REliable computing laboratory (CURE)

The Chinese University of Hong Kong

Page 2: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Process VariationProcess Variation Becomes A Serious Conc Becomes A Serious Concernern

The ever-increasing transistor variability

Spatial correlation characteristic

Page 3: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Task Allocation and Scheduling for MPSoCTask Allocation and Scheduling for MPSoCss

Given

Determine

Process variation affects performance yield

τ1 τ2

τ3 τ4 τ5

Task Graph

Task Schedule

P1

P2

τ1 τ3

τ2

τ4

τ5

d

time

P1

P2

MPSoC

Page 4: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Limitations of Previous WorkLimitations of Previous Work

Only a few explicitly consider process variation All assume the task execution time follows Gaussian distribution

In reality, it can be approximated with Gaussian distribution in some instances at best [Sarangi-ieeetsm08]

Page 5: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Limitations of Previous WorkLimitations of Previous Work

All assume the execution times of multiple tasks are s-independent

This assumption ignores the spatial correlation characteristic of process variation

Page 6: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Limitations of Previous WorkLimitations of Previous Work

All assume the execution times of multiple tasks are s-independent

This assumption ignores the spatial correlation characteristic of process variation

0 0.2 0.4 0.6 0.8 10

0.2

0.4

0.6

0.8

1

Ken

dall

Tau

Consider a pair of MPSoCs i, j

Page 7: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Limitations of Previous WorkLimitations of Previous Work

20 30 40 50 60 70 80 900

0.02

0.04

0.06

0.08

0.1

0.12

0.14

Pro

ba

bili

ty

X1~N(30,32)

X2~N(40,42)

X1+X

2 (=0)

X1+X

2 (=0.8)

Difference

With correlation, statistical properties of s-independent Gaussian distribution are not applicable

Page 8: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

AgendaAgenda

Introduction and motivation

Problem formulation

Proposed quasi-static task allocation and scheduling algorithm

Simulated annealing-based initial task scheduling

Clustering-based performance yield enhancement

Experimental results

Conclusion

Page 9: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Initial Task SchedulingInitial Task Scheduling

Modified simulated annealing technique Solution representation

(scheduling order sequence; resource binding sequence) Example: (τ1, τ3, τ2, τ4, τ5; P1, P2, P1, P1, P2)

Performance yield estimation Closed-form statistical analysis is extremely difficult

τ1 τ2

τ3 τ4 τ5

P1

P2

τ1 τ3

τ2

τ4

τ5

d

time

Page 10: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Initial Task SchedulingInitial Task Scheduling

Performance yield estimation Closed-form statistical analysis is extremely difficult Monte Carlo simulation

schedule i.i.d. samples of MPSoC frequency map

meet constraint (1) or not (0)

Page 11: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Initial Task SchedulingInitial Task Scheduling

0 200 400 600 800 10000

0.2

0.4

0.6

0.8

1

M

Con

fiden

ce In

terv

al

Efficiency of Monte Carlo simulation

N – number of test chips

M – number of chips meeting performance constraints

N = 1,000, confidence level = 95%

max = 0.031

min = 0

Page 12: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Performance Yield EnhancementPerformance Yield Enhancement

With the initial task schedule, some chips might cannot meet performance constraints

0.6 0.8 1 1.2 1.40.6

0.8

1

1.2

1.4

f1

f 2

Residual test chips

Covered by initial schedule

Page 13: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Performance Yield EnhancementPerformance Yield Enhancement

Iteratively generate additional task schedules k-mean clustering and objectively task schedule generation

0.6 0.8 1 1.2 1.40.6

0.8

1

1.2

1.4

f1

f 2

Three clusters

Page 14: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Performance Yield EnhancementPerformance Yield Enhancement

Selection criteria generation Multilayer perceptron One time effort

Training sample – test chips Inputs: frequency map Outputs: meet constraint or not

Sigmoid function

f1

u11 uhx

f2 fm

w11 wmh

wm2w1h

s1 s2 sx

Page 15: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Task Schedule SelectionTask Schedule Selection

Given an MPSoC product Frequency map becomes availab

le

Forward propagation through selection criteria network

Schedule selection rule

f1

u11 uhx

f2 fm

w11 wmh

wm2w1h

s1 s2 sx

1.12 0.85 0.97... …

0.960.02 0.87... …

Page 16: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Experimental SetupExperimental Setup

Task graphs are generated by TGFF Task number: 31 – 152

Hypothetical MPSoCs Heterogeneous or homogeneous Core number: 4 – 8

Process variation model Multivariate normal distribution with spatial correlation [Sarangi-ieeets

m08] The distance pass which the correlation becomes zero = {0.1, 0.5} The variation = 3.2%

Page 17: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Experimental ResultsExperimental Results

0 0.1 0.2 0.3 0.4 0.532

34

36

38

40

42

44

46

48

50

Per

form

ance

Yie

ld (

%)

Process Variation ModelApproximated Model

Page 18: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Experimental ResultsExperimental Results

1 2 3 4 5 60

20

40

60

80

100P

erfo

rman

ce Y

ield

(%

)

Baseline Sinit QS

175 200 225 175 200 225

0

20

40

60

80

100P

erfo

rman

ce Y

ield

(%

)

=0.5 =0.1

Page 19: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Experimental ResultsExperimental Results

1 2 3 4 5 60

20

40

60

80

100P

erfo

rman

ce Y

ield

(%

)

Baseline Sinit QS

275 300 325 275 300 325

0

20

40

60

80

100P

erfo

rman

ce Y

ield

(%

)

=0.1=0.5

Page 20: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Experimental ResultsExperimental Results

1 2 3 4 5 60

20

40

60

80

100P

erfo

rman

ce Y

ield

(%

)

Baseline Sinit QS

700 750 800 700 750 800

0

20

40

60

80

100P

erfo

rman

ce Y

ield

(%

)

=0.5 =0.1

Page 21: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Experimental ResultsExperimental Results

1 2 3 4 5 60

20

40

60

80

100P

erfo

rman

ce Y

ield

(%

)

Baseline Sinit QS

275 300 325 275 300 325

0

20

40

60

80

100P

erfo

rman

ce Y

ield

(%

)

=0.1=0.5

Page 22: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Experimental ResultsExperimental Results

1 2 3 4 5 6 7 8 9 1035

40

45

50

55

60

Task Schedule Quantity

Per

ofor

man

ce Y

ield

(%

)

QSSuperSA

Sinit

36.9%

59.3%

40.8%

Page 23: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Experimental ResultsExperimental Results

1 2 3 4 5 6 7 8 9 1096

97

98

99

100

Task Schedule Quantity

Per

ofor

man

ce Y

ield

(%

)

QSSuperSA

Page 24: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

ConclusionConclusion

We propose a novel quasi-static variation-aware task allocation and scheduling technique for MPSoC designs

Initial task scheduling Simulated annealing Monte Carlo simulation

Performance yield enhancement k-mean clustering Multilayer perceptron

Experimental results demonstrate the effectiveness

Page 25: L i a b l eh kC o m p u t i n gL a b o r a t o r y Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Variation Presenter:

Performance Yield-Driven Task Allocation and Performance Yield-Driven Task Allocation and Scheduling for MPSoCs under Process Scheduling for MPSoCs under Process

VariationVariation

Thank you for your attention !Thank you for your attention !