Post on 23-Oct-2019
transcript
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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)
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”
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
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
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
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)
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)
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)
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)
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
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
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
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
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
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
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
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
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
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 las@sips.inesc-id.pt
Thank You! Questions?