34
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa technology from seed 20/10/14 1 Performance-aware task management and frequency scaling in embedded systems Leonel Sousa Francisco Gaspar Aleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing Systems INESC-ID / IST Portugal {las,fgaspar,ilic,pfzt}@sips.inesc-id.pt

Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

20/10/14 1

Performance-aware task management and frequency scaling

in embedded systems

Leonel Sousa Francisco Gaspar Aleksandar Ilic Pedro Tomás

Performance-aware task management and frequency scaling in embedded systems

Signal Processing Systems INESC-ID / IST Portugal

{las,fgaspar,ilic,pfzt}@sips.inesc-id.pt

Page 2: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seedMotivation

•  Demand for high performance in mobile embedded devices is increasing

–  High frequency multi-core architectures –  Solution to high power consumption è Single-ISA Heterogeneity (big.LITTLE)

•  Default OS scheduling does not consider performance targets: –  Resources may be over-allocated –  No performance fairness among tasks

•  Tasks on mobile embedded systems do not require high performance goals that typical schedulers aim to achieve

20/10/14 Performance-aware task management and frequency scaling in embedded systems 2

Nor

mal

ised

task

perfo

rman

ce 1

0A B

1

0A B

1

0A B

Default Shares Frequency

Page 3: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seedMotivation

•  Demand for high performance in mobile embedded devices is increasing

–  High frequency multi-core architectures –  Solution to high power consumption è Single-ISA Heterogeneity (big.LITTLE)

•  Default OS scheduling does not consider performance targets: –  Resources may be over-allocated –  No performance fairness among tasks

•  Tasks on mobile embedded systems do not require high performance goals that typical schedulers aim to achieve

20/10/14 Performance-aware task management and frequency scaling in embedded systems 3

Nor

mal

ised

task

perfo

rman

ce 1

0A B

1

0A B

1

0A B

Default Shares Frequency

Equalize performance

Reduce error to target

Page 4: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seedObjectives

•  Adaptive and lightweight task management

•  Provide performance fairness among the running tasks

•  Attain control over the allocation of shared computational resources

•  Automatically scale frequency according to the dynamic characterization of the execution of the parallel tasks

•  Achieve energy-efficient execution

20/10/14 Performance-aware task management and frequency scaling in embedded systems 4

Page 5: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Background –  Scheduler –  DVFS and Cluster migration

•  Performance-aware task management and frequency scaling in embedded systems

–  Concept –  Share calculation and conversion –  Frequency Scaling –  System and applications

•  Experimental Evaluation –  Platform –  Results

•  Conclusions and Future Work

Outline

20/10/14 Performance-aware task management and frequency scaling in embedded systems 5

Page 6: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Background –  Scheduler –  DVFS and Cluster migration

•  Performance-aware task management and frequency scaling in embedded systems

–  Concept –  Share calculation and conversion –  Frequency Scaling –  System and applications

•  Experimental Evaluation –  Platform –  Results

•  Conclusions and Future Work

Outline

20/10/14 Performance-aware task management and frequency scaling in embedded systems 6

Page 7: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seedScheduler

•  Scheduler (CFS) attributes shares –  For a compute bound task, shares mainly depend on Nice level

•  By default tasks have the same Nice level (i.e., same processor share) –  Epoch i

•  Task with lower Nice levels will increase their CPU share –  Epoch i+1

20/10/14 Performance-aware task management and frequency scaling in embedded systems 7

}}Epoch i

A B C A B CTime

Epoch i+1

Page 8: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seedDVFS and Cluster migration

•  Dynamic Voltage and Frequency Scaling (DVFS) –  Different governors result in different behaviors, voltage is set according to frequency –  In heterogeneous system with cluster migration DVFS controls migration

•  System sees range of virtual frequency 250 MHz – 1.6 GHz

–  250 MHz – 600 MHz map to A7 at twice the frequency

–  800 MHz – 1.6 GHz map to A15 directly

20/10/14 Performance-aware task management and frequency scaling in embedded systems 8

Virtual Frequency Range250 MHz 600 MHz 800 MHz 1.6 GHz

800 MHz 1.6 GHz500 MHz 1.2 GHzCortex-A7 Real Frequency Range Cortex-A15 Real Frequency Range

Page 9: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Background –  Scheduler –  DVFS and Cluster migration

•  Performance-aware task management and frequency scaling in embedded systems

–  Concept –  Share calculation and conversion –  Frequency Scaling –  System and applications

•  Experimental Evaluation –  Platform –  Results

•  Conclusions and Future Work

Outline

20/10/14 Performance-aware task management and frequency scaling in embedded systems 9

Page 10: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Application-system interaction model –  Performance assumed proportional to share and frequency: P∝s ; P∝f –  Applications report their performance –  Application-specific parameter: P∝c –  P=c x s x f

Performance-aware task management and frequency scaling in embedded systems – Concept

20/10/14 Performance-aware task management and frequency scaling in embedded systems 10

Page 11: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Application-system interaction model –  Performance assumed proportional to share and frequency: P∝s ; P∝f –  Applications report their performance –  Application-specific parameter: P∝c –  P=c x s x f

Performance-aware task management and frequency scaling in embedded systems – Concept

20/10/14 Performance-aware task management and frequency scaling in embedded systems 11

Page 12: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Application-system interaction model –  Performance assumed proportional to share and frequency: P∝s ; P∝f –  Applications report their performance –  Application-specific parameter: P∝c –  P=c x s x f

Performance-aware task management and frequency scaling in embedded systems – Concept

20/10/14 Performance-aware task management and frequency scaling in embedded systems 12

Page 13: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Application-system interaction model –  Performance assumed proportional to share and frequency: P∝s ; P∝f –  Applications report their performance –  Application-specific parameter: P∝c –  P=c x s x f

Performance-aware task management and frequency scaling in embedded systems – Concept

20/10/14 Performance-aware task management and frequency scaling in embedded systems 13

Page 14: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Share calculation and conversion

•  Attribute shares to minimize global error –  Equalize application error

20/10/14 Performance-aware task management and frequency scaling in embedded systems 14

**

0

* PreviousTargetAfter

*Performance

Mathematical formulation

Page 15: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Share calculation and conversion

•  Attribute shares to minimize global error –  Equalize application error

•  Shares applied through Nice levels

–  Conversion only handles intervals –  Additional restriction introduced: Highest priority task as

close as possible to nice level 0

20/10/14 Performance-aware task management and frequency scaling in embedded systems 15

**

0

* PreviousTargetAfter

*Performance

Mathematical formulation

Page 16: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Frequency scaling

•  Scale frequency –  Bring applications to target –  Achieve energy savings

20/10/14 Performance-aware task management and frequency scaling in embedded systems 16

Performance Mathematical formulation

0

Previous

AfterTarget

(Predicted performance)

(Target performance)

Page 17: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

System and applications

•  Shares applied to system by changing the tasks Nice levels

•  Frequency applied by interacting with DVFS and setting system frequency

–  Both affect application performance

•  Modified applications report their performance through Heartbeats*

20/10/14 Performance-aware task management and frequency scaling in embedded systems 17

* H. Hoffmann, J. Eastep, M. D. Santambrogio, J. E. Miller, and A. Agarwal, “Application Heartbeats: A Generic Interface for Specifying Program Performance and Goals in Autonomous Computing Environments”

Page 18: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Background –  Scheduler –  DVFS and Cluster migration

•  Performance-aware task management and frequency scaling in embedded systems

–  Concept –  Share calculation and conversion –  Frequency Scaling –  System and applications

•  Experimental Evaluation –  Platform –  Results

•  Conclusions and Future Work

Outline

20/10/14 Performance-aware task management and frequency scaling in embedded systems 18

Page 19: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Platform

20/10/14 Performance-aware task management and frequency scaling in embedded systems 19

•  Odroid-XU+E –  big.LITTLE – 4x Cortex-A7; 4x Cortex-A15 – Cluster migration –  2GB of RAM –  OS: Linux – Ubuntu custom 3.4 kernel (by Hardkernel)

Virtual Frequency Range250 MHz 600 MHz 800 MHz 1.6 GHz

800 MHz 1.6 GHz500 MHz 1.2 GHzCortex-A7 Real Frequency Range Cortex-A15 Real Frequency Range

Page 20: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Platform

20/10/14 Performance-aware task management and frequency scaling in embedded systems 20

•  Odroid-XU+E –  big.LITTLE – 4x Cortex-A7; 4x Cortex-A15 – Cluster migration –  2GB of RAM –  OS: Linux – Ubuntu custom 3.4 kernel (by Hardkernel)

Virtual Frequency Range250 MHz 600 MHz 800 MHz 1.6 GHz

800 MHz 1.6 GHz500 MHz 1.2 GHzCortex-A7 Real Frequency Range Cortex-A15 Real Frequency Range

Page 21: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Benchmarks and results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 21

•  Iterative QoS applications –  That interact in real-time with the user (target set by maximum perceived

performance) –  That sample data from sensors (target set by data availability) –  Fluidanimate, Swaptions, Blackscholes and x264 (from PARSEC) used for

benchmarking (4 threads each)

Page 22: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Benchmarks and results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 22

•  Iterative QoS applications –  That interact in real-time with the user (target set by maximum perceived

performance) –  That sample data from sensors (target set by data availability) –  Fluidanimate, Swaptions, Blackscholes and x264 (from PARSEC) used for

benchmarking (4 threads each) Share controller

(fairness)

Page 23: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Benchmarks and results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 23

•  Iterative QoS applications –  That interact in real-time with the user (target set by maximum perceived

performance) –  That sample data from sensors (target set by data availability) –  Fluidanimate, Swaptions, Blackscholes and x264 (from PARSEC) used for

benchmarking (4 threads each) Share controller

(fairness) Freq. controller

(energy)

Page 24: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Benchmarks and results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 24

•  Iterative QoS applications –  That interact in real-time with the user (target set by maximum perceived

performance) –  That sample data from sensors (target set by data availability) –  Fluidanimate, Swaptions, Blackscholes and x264 (from PARSEC) used for

benchmarking (4 threads each) Share controller

(fairness) Freq. controller

(energy)

Page 25: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Performance results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 25

•  Fluidanimate, Swaptions and x264 simultaneosly

+-10%target

No controller With controller

Page 26: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Performance results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 26

•  Fluidanimate, Swaptions and x264 simultaneosly

Not on target

+-10%target

No controller With controller

Page 27: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Performance results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 27

•  Fluidanimate, Swaptions and x264 simultaneosly

Not on target

+-10%target

Perf.on target

No controller With controller

Page 28: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Frequency and power results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 28

No controller

With controller

Page 29: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Frequency and power results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 29

Thermal throttlingNo controller

With controller

Page 30: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Frequency and power results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 30

Thermal throttling

Migration to A7

No controller

With controller

Page 31: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Background –  Scheduler –  DVFS and Cluster migration

•  Performance-aware task management and frequency scaling in embedded systems

–  Concept –  Share calculation and conversion –  Frequency Scaling –  System and applications

•  Experimental Evaluation –  Platform –  Results

•  Conclusions and Future Work

Outline

20/10/14 Performance-aware task management and frequency scaling in embedded systems 31

Page 32: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Scheduling for heterogeneous embedded systems –  Lightweight task management and frequency scaling method –  Performance-aware

•  Application-system interaction acquired –  Capture the run-time behavior of multiple parallel applications

•  Performance fairness and energy savings facilitated –  Shared system resources allocated to meet target performance –  Relies on DVFS to manage the system energy-efficiency levels

•  Experimental evaluation –  Relative performance error was reduced from 2.801 to 0.168, a 16× drop –  Achieve up to 49% reduction in the overall energy consumption

Roundup and Conclusions

20/10/14 Performance-aware task management and frequency scaling in embedded systems 32

Page 33: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Improve response in case of thermal emergencies

•  Gracefully handle non-QoS tasks

•  Explore per core performance fairness (thread level)* –  Consider systems that allow different frequency levels per core

Future Work

20/10/14 Performance-aware task management and frequency scaling in embedded systems 33

* already in progress

Page 34: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

20/10/14 Performance-aware task management and frequency scaling in embedded systems 34

technology from seed

Leonel Sousa [email protected]

Thank You! Questions?