SlideShare a Scribd company logo
November 9-11, 2010
The Santa Clara Convention Center
www.armtechcon.com
Energy Management for Mobile Devices
Power to the Microvisor!
> Energy-management
> Virtualization basics
> Enter multicore
> Summary
Overview
> Device uses energy
• Drains battery
> Goal of energy management:
• Maximize battery life
Energy in Mobile Devices
Dynamic voltage and frequency scaling
> CMOS power consumption:
• P = Pdyn + Pstat
• Pdyn ∝ f V2
• Vmin ∝ f (very approximately)
> Assuming execution time T 1 /∝ f
• Edyn = Pdyn T ∝ f V2
/ f = V2
= f2
• lower frequency lower dynamic energy⇒
Energy-Management Mechanisms: DVFS
> When CPU is idle, turn clock off
• Pdyn = 0 ⇒ P = Pstat
> Sleep states reduce power further:
• Psleep < Pstat
> Typically have multiple sleep states
• shallow sleep states save some energy
but fast to enter/exit
• deep sleep states save more energy
but lose state and are expensive to enter/exit
> Complex tradeoff
Mechanisms: Sleep States
> Edyn ∝ f 2
lowest frequency is best⇒
> Ignores static energy!
• E = Edyn + Estat
• Edyn ∝ f 2
• Estat = Pstat T ∝ 1/f
> Low f increases execution time
⇒ Estat increases at low f !
Popular Approach: Lowest Frequency
> Run at maximum f, then go to sleep
• Tries to minimize static power — but:
• dynamic power isn’t irrelevant (yet)
– T 1/∝ f isn’t correct either — ignores memory!
• Effect of memory stalls
• T = TCPU + Tmem
• TCPU ∝ 1/f
• Tmem = const
• Estat ∝ T = 1/f + const
> Ignores sleep energy!
Other Approach: “Race to Halt”
> Run at maximum f, then go to sleep
> Earlier completion longer sleep⇒
• E = Edyn + Estat + Esleep
• Esleep = Psleep Tsleep
• Tsleep = T0 – T
• Esleep = Psleep (T0 - T)
> Still ignores dynamic energy!
Other Approach: “Race to Halt” (2)
Real Data: Execution Time
Memory-
bound
Memory-
bound
CPU-
bound
CPU-
bound
Real Data: Total Energy (Measured)
CPU-
bound
CPU-
bound
Memory-
bound
Memory-
bound Naïve
model
Naïve
model
Real Data: Including Sleep Energy
High-power
sleep state
High-power
sleep state
Low-power
sleep state
Low-power
sleep state
> Energy management is complex!
> Optimal setting depends on:
• Workload
memory-bound vs CPU-bound vs in-between
• Hardware platform
static vs dynamic energy
CPU vs memory power
depth of sleep states and cost of entering
> Simple models don’t work!
Summary: Energy-Management Basics
> How to establish memory-boundedness?
> Easy way out: pre-characterization
• measure behavior off-line
• determine optimal power setting
by model or trial-and-error
> Ok-ish for pre-defined workloads
> Unsuitable for open systems
• ... such as phones
> Tricky with apps which change behavior
Characterizing Workloads
> Need to observe app and adjust setting
• works for any app
• adjusts to changing behavior
> Solution by [Snowdon et al., EuroSys’09]
> Performance counters are your friends!
• e.g. cache misses indicate memory access
> Can systematically select best counters
• build model of platform
• Linear combination of performance-counter readings
• pre-characterize hardware
• pick counters which provide most accurate model
• using sound statistical methods
Better Way: On-Line Characterization
> Model predicts energy consumption and relative execution speed
• at present setpoint
• at different setpoins
> Accurately predicts energy- and performance response to DVFS
• within a few %
> Can use this for informed energy-management decisions
On-Line Characterization & Modeling
Accuracy of Approach
Memory-
bound
Memory-
bound
CPU-
bound
CPU-
bound
Effect on Energy
CPU-
bound
CPU-
bound
Memory-
bound
Memory-
bound
> What is “best”?
• Maximal Performance?
• Minimal Energy?
• Minimal Power?
> Depends...
> May change
• battery depletes
> Need flexible policies
Energy Management Policies
Workload PredictionWorkload Prediction
Candidate
Setpoints
QoS Info
Setting
Energy/PerformanceEnergy/Performance
ModelsModels
Selection PolicySelection Policy
Workload
Statistics
Generalized Energy-Delay Policy
Generalized Energy-Delay Policy
PerformancePerformance
CPU-
bound
CPU-
bound
Memory-
bound
Memory-
bound
EnergyEnergy
Multi-Tasking Workload
CPU-
bound
CPU-
bound
Memory-
bound
Memory-
bound
> Implementation of power model and policies
• once for platform vs once for each guest
• no guest has global view, hypervisor does
• integration with other cores
DSPs, baseband processor
• policy-mechanism separation
Why do it outside the OS?
> Controls all resources
• CPU, memory, devices
> De-privileged guest OSes
• execute in user mode
• prevents interference
with hypervisor
with other guests
• ensures hypervisor retains control over resources
The Hypervisor
> Subsystems compete for it
> Cannot let subsystems manage it
• just as with memory, CPU
> Needs trusted, central authority
> Needs to be done in virtualization layer
Energy is a Global Resource
> Mechanisms in hypervisor
> Policies in isolated management module
> Keep hypervisor policy-free
• HW-like
Policy-Mechanism Separation
> Additional degree of freedom
• DVFS + sleep states + core shutdown
• Hypervisor supports transparent, temporary
consolidation of cores
• Unneeded cores turned off to reduce power
> Different tradeoffs
• Performance vs power close to linear
> Important to manage cores globally
• In average more cores off than with
per-guest management
• Can use deeper sleep state
• Less overall energy use
Enter Multicore
OKL4 Microvisor
Subsystem #1
CPU
VCPU VCPU VCPUVCPU
Subsystem #2
CPU CPUCPU
OKL4 Microvisor
Subsystem #1
CPU
VCPU VCPU VCPUVCPU
Subsystem #2
CPU CPUCPU
> Cache coherency couples clock
frequencies of multiple cores
> OSes running on different cores cannot
adjust clock independently
> Requires entity with global view
Enter Multicore: Architectural Constraints
> Cores have same ISA but different clock rates
> Hypervisor can determine optimal mapping of subsystems to cores
• Using same infrastructure as for DVFS
• Integrate with temporary core consolidation
Asymmetric Multicore
Fast
CPU
Slow
CPU
OKL4 Microvisor
CPU-bound
Subsystem
Fast
CPU
VCPU VCPU VCPUVCPU
Memory-bound
Subsystem
Slow
CPU
> Move subsystems between cores
• including temporary consolidation
of different subsystems on common core
> Architectural inter-core dependencies
• cannot manage core clocks independently
> Requires global control
• ... outside individual OSes
• indirection layer between OS and hardware
> No practical alternative to virtualization!
The Future is Multicore
OKL4 Microvisor
Subsystem #1
CPU
VCPU VCPU VCPUVCPU
Subsystem #2
CPU CPUCPU
> Virtualization is unavoidable long-term
> ... but provides other benefits short-term
> Early uptake maximises benefits
> Future-proof your designs!
Summary
 Thank You!

More Related Content

Similar to OK Labs - Virtualization as the Nexus of Multicore Power Management

참여기관_발표자료-국민대학교 201301 정기회의
참여기관_발표자료-국민대학교 201301 정기회의참여기관_발표자료-국민대학교 201301 정기회의
참여기관_발표자료-국민대학교 201301 정기회의DzH QWuynh
 
Intern presentation nicolechiou_2018_vareximaging_sanitized
Intern presentation nicolechiou_2018_vareximaging_sanitizedIntern presentation nicolechiou_2018_vareximaging_sanitized
Intern presentation nicolechiou_2018_vareximaging_sanitized
NicoleChiou3
 
Low power
Low powerLow power
Low power
preeti banra
 
Linux power management: are you doing it right?
Linux power management: are you doing it right?Linux power management: are you doing it right?
Linux power management: are you doing it right?
Chris Simmonds
 
[EWiLi2016] Enabling power-awareness for the Xen Hypervisor
[EWiLi2016] Enabling power-awareness for the Xen Hypervisor[EWiLi2016] Enabling power-awareness for the Xen Hypervisor
[EWiLi2016] Enabling power-awareness for the Xen Hypervisor
Matteo Ferroni
 
computer system structure
computer system structurecomputer system structure
computer system structure
HAMZA AHMED
 
Parallel and Distributed Computing Chapter 9
Parallel and Distributed Computing Chapter 9Parallel and Distributed Computing Chapter 9
Parallel and Distributed Computing Chapter 9
AbdullahMunir32
 
(CMP402) Amazon EC2 Instances Deep Dive
(CMP402) Amazon EC2 Instances Deep Dive(CMP402) Amazon EC2 Instances Deep Dive
(CMP402) Amazon EC2 Instances Deep Dive
Amazon Web Services
 
20160503 Amazed by AWS | Tips about Performance on AWS
20160503 Amazed by AWS | Tips about Performance on AWS20160503 Amazed by AWS | Tips about Performance on AWS
20160503 Amazed by AWS | Tips about Performance on AWS
Amazon Web Services Korea
 
Trading Power and Performance to Achieve Optimal Thermal Design for Battery-P...
Trading Power and Performance to Achieve Optimal Thermal Design for Battery-P...Trading Power and Performance to Achieve Optimal Thermal Design for Battery-P...
Trading Power and Performance to Achieve Optimal Thermal Design for Battery-P...
Mark Benson
 
load-balancing-method-for-embedded-rt-system-20120711-0940
load-balancing-method-for-embedded-rt-system-20120711-0940load-balancing-method-for-embedded-rt-system-20120711-0940
load-balancing-method-for-embedded-rt-system-20120711-0940Samsung Electronics
 
Chap 3 CA.pptx
Chap 3 CA.pptxChap 3 CA.pptx
Chap 3 CA.pptx
SahalAhmed4
 
Run-time power management in cloud and containerized environments
Run-time power management in cloud and containerized environmentsRun-time power management in cloud and containerized environments
Run-time power management in cloud and containerized environments
NECST Lab @ Politecnico di Milano
 
Optimizing for low power in embedded mcu designs
Optimizing for low power in embedded mcu designsOptimizing for low power in embedded mcu designs
Optimizing for low power in embedded mcu designs
Vinchipsytm Vlsitraining
 
A deep dive into energy efficient multi core processor
A deep dive into energy efficient multi core processorA deep dive into energy efficient multi core processor
A deep dive into energy efficient multi core processor
ZongYing Lyu
 
Process scheduling
Process schedulingProcess scheduling
Process scheduling
Hao-Ran Liu
 
Supporting Time-Sensitive Applications on a Commodity OS
Supporting Time-Sensitive Applications on a Commodity OSSupporting Time-Sensitive Applications on a Commodity OS
Supporting Time-Sensitive Applications on a Commodity OS
NamHyuk Ahn
 
CNR @ VMUG.IT 20150304
CNR @ VMUG.IT 20150304CNR @ VMUG.IT 20150304
CNR @ VMUG.IT 20150304
VMUG IT
 
MK Sistem Operasi.pdf
MK Sistem Operasi.pdfMK Sistem Operasi.pdf
MK Sistem Operasi.pdf
wisard1
 
Computer Architecture & Organization.ppt
Computer Architecture & Organization.pptComputer Architecture & Organization.ppt
Computer Architecture & Organization.ppt
FarhanaMariyam1
 

Similar to OK Labs - Virtualization as the Nexus of Multicore Power Management (20)

참여기관_발표자료-국민대학교 201301 정기회의
참여기관_발표자료-국민대학교 201301 정기회의참여기관_발표자료-국민대학교 201301 정기회의
참여기관_발표자료-국민대학교 201301 정기회의
 
Intern presentation nicolechiou_2018_vareximaging_sanitized
Intern presentation nicolechiou_2018_vareximaging_sanitizedIntern presentation nicolechiou_2018_vareximaging_sanitized
Intern presentation nicolechiou_2018_vareximaging_sanitized
 
Low power
Low powerLow power
Low power
 
Linux power management: are you doing it right?
Linux power management: are you doing it right?Linux power management: are you doing it right?
Linux power management: are you doing it right?
 
[EWiLi2016] Enabling power-awareness for the Xen Hypervisor
[EWiLi2016] Enabling power-awareness for the Xen Hypervisor[EWiLi2016] Enabling power-awareness for the Xen Hypervisor
[EWiLi2016] Enabling power-awareness for the Xen Hypervisor
 
computer system structure
computer system structurecomputer system structure
computer system structure
 
Parallel and Distributed Computing Chapter 9
Parallel and Distributed Computing Chapter 9Parallel and Distributed Computing Chapter 9
Parallel and Distributed Computing Chapter 9
 
(CMP402) Amazon EC2 Instances Deep Dive
(CMP402) Amazon EC2 Instances Deep Dive(CMP402) Amazon EC2 Instances Deep Dive
(CMP402) Amazon EC2 Instances Deep Dive
 
20160503 Amazed by AWS | Tips about Performance on AWS
20160503 Amazed by AWS | Tips about Performance on AWS20160503 Amazed by AWS | Tips about Performance on AWS
20160503 Amazed by AWS | Tips about Performance on AWS
 
Trading Power and Performance to Achieve Optimal Thermal Design for Battery-P...
Trading Power and Performance to Achieve Optimal Thermal Design for Battery-P...Trading Power and Performance to Achieve Optimal Thermal Design for Battery-P...
Trading Power and Performance to Achieve Optimal Thermal Design for Battery-P...
 
load-balancing-method-for-embedded-rt-system-20120711-0940
load-balancing-method-for-embedded-rt-system-20120711-0940load-balancing-method-for-embedded-rt-system-20120711-0940
load-balancing-method-for-embedded-rt-system-20120711-0940
 
Chap 3 CA.pptx
Chap 3 CA.pptxChap 3 CA.pptx
Chap 3 CA.pptx
 
Run-time power management in cloud and containerized environments
Run-time power management in cloud and containerized environmentsRun-time power management in cloud and containerized environments
Run-time power management in cloud and containerized environments
 
Optimizing for low power in embedded mcu designs
Optimizing for low power in embedded mcu designsOptimizing for low power in embedded mcu designs
Optimizing for low power in embedded mcu designs
 
A deep dive into energy efficient multi core processor
A deep dive into energy efficient multi core processorA deep dive into energy efficient multi core processor
A deep dive into energy efficient multi core processor
 
Process scheduling
Process schedulingProcess scheduling
Process scheduling
 
Supporting Time-Sensitive Applications on a Commodity OS
Supporting Time-Sensitive Applications on a Commodity OSSupporting Time-Sensitive Applications on a Commodity OS
Supporting Time-Sensitive Applications on a Commodity OS
 
CNR @ VMUG.IT 20150304
CNR @ VMUG.IT 20150304CNR @ VMUG.IT 20150304
CNR @ VMUG.IT 20150304
 
MK Sistem Operasi.pdf
MK Sistem Operasi.pdfMK Sistem Operasi.pdf
MK Sistem Operasi.pdf
 
Computer Architecture & Organization.ppt
Computer Architecture & Organization.pptComputer Architecture & Organization.ppt
Computer Architecture & Organization.ppt
 

Recently uploaded

Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 

Recently uploaded (20)

Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 

OK Labs - Virtualization as the Nexus of Multicore Power Management

  • 1. November 9-11, 2010 The Santa Clara Convention Center www.armtechcon.com
  • 2. Energy Management for Mobile Devices Power to the Microvisor!
  • 3. > Energy-management > Virtualization basics > Enter multicore > Summary Overview
  • 4. > Device uses energy • Drains battery > Goal of energy management: • Maximize battery life Energy in Mobile Devices
  • 5. Dynamic voltage and frequency scaling > CMOS power consumption: • P = Pdyn + Pstat • Pdyn ∝ f V2 • Vmin ∝ f (very approximately) > Assuming execution time T 1 /∝ f • Edyn = Pdyn T ∝ f V2 / f = V2 = f2 • lower frequency lower dynamic energy⇒ Energy-Management Mechanisms: DVFS
  • 6. > When CPU is idle, turn clock off • Pdyn = 0 ⇒ P = Pstat > Sleep states reduce power further: • Psleep < Pstat > Typically have multiple sleep states • shallow sleep states save some energy but fast to enter/exit • deep sleep states save more energy but lose state and are expensive to enter/exit > Complex tradeoff Mechanisms: Sleep States
  • 7. > Edyn ∝ f 2 lowest frequency is best⇒ > Ignores static energy! • E = Edyn + Estat • Edyn ∝ f 2 • Estat = Pstat T ∝ 1/f > Low f increases execution time ⇒ Estat increases at low f ! Popular Approach: Lowest Frequency
  • 8. > Run at maximum f, then go to sleep • Tries to minimize static power — but: • dynamic power isn’t irrelevant (yet) – T 1/∝ f isn’t correct either — ignores memory! • Effect of memory stalls • T = TCPU + Tmem • TCPU ∝ 1/f • Tmem = const • Estat ∝ T = 1/f + const > Ignores sleep energy! Other Approach: “Race to Halt”
  • 9. > Run at maximum f, then go to sleep > Earlier completion longer sleep⇒ • E = Edyn + Estat + Esleep • Esleep = Psleep Tsleep • Tsleep = T0 – T • Esleep = Psleep (T0 - T) > Still ignores dynamic energy! Other Approach: “Race to Halt” (2)
  • 10. Real Data: Execution Time Memory- bound Memory- bound CPU- bound CPU- bound
  • 11. Real Data: Total Energy (Measured) CPU- bound CPU- bound Memory- bound Memory- bound Naïve model Naïve model
  • 12. Real Data: Including Sleep Energy High-power sleep state High-power sleep state Low-power sleep state Low-power sleep state
  • 13. > Energy management is complex! > Optimal setting depends on: • Workload memory-bound vs CPU-bound vs in-between • Hardware platform static vs dynamic energy CPU vs memory power depth of sleep states and cost of entering > Simple models don’t work! Summary: Energy-Management Basics
  • 14. > How to establish memory-boundedness? > Easy way out: pre-characterization • measure behavior off-line • determine optimal power setting by model or trial-and-error > Ok-ish for pre-defined workloads > Unsuitable for open systems • ... such as phones > Tricky with apps which change behavior Characterizing Workloads
  • 15. > Need to observe app and adjust setting • works for any app • adjusts to changing behavior > Solution by [Snowdon et al., EuroSys’09] > Performance counters are your friends! • e.g. cache misses indicate memory access > Can systematically select best counters • build model of platform • Linear combination of performance-counter readings • pre-characterize hardware • pick counters which provide most accurate model • using sound statistical methods Better Way: On-Line Characterization
  • 16. > Model predicts energy consumption and relative execution speed • at present setpoint • at different setpoins > Accurately predicts energy- and performance response to DVFS • within a few % > Can use this for informed energy-management decisions On-Line Characterization & Modeling
  • 19. > What is “best”? • Maximal Performance? • Minimal Energy? • Minimal Power? > Depends... > May change • battery depletes > Need flexible policies Energy Management Policies Workload PredictionWorkload Prediction Candidate Setpoints QoS Info Setting Energy/PerformanceEnergy/Performance ModelsModels Selection PolicySelection Policy Workload Statistics
  • 23. > Implementation of power model and policies • once for platform vs once for each guest • no guest has global view, hypervisor does • integration with other cores DSPs, baseband processor • policy-mechanism separation Why do it outside the OS?
  • 24. > Controls all resources • CPU, memory, devices > De-privileged guest OSes • execute in user mode • prevents interference with hypervisor with other guests • ensures hypervisor retains control over resources The Hypervisor
  • 25. > Subsystems compete for it > Cannot let subsystems manage it • just as with memory, CPU > Needs trusted, central authority > Needs to be done in virtualization layer Energy is a Global Resource
  • 26. > Mechanisms in hypervisor > Policies in isolated management module > Keep hypervisor policy-free • HW-like Policy-Mechanism Separation
  • 27. > Additional degree of freedom • DVFS + sleep states + core shutdown • Hypervisor supports transparent, temporary consolidation of cores • Unneeded cores turned off to reduce power > Different tradeoffs • Performance vs power close to linear > Important to manage cores globally • In average more cores off than with per-guest management • Can use deeper sleep state • Less overall energy use Enter Multicore OKL4 Microvisor Subsystem #1 CPU VCPU VCPU VCPUVCPU Subsystem #2 CPU CPUCPU OKL4 Microvisor Subsystem #1 CPU VCPU VCPU VCPUVCPU Subsystem #2 CPU CPUCPU
  • 28. > Cache coherency couples clock frequencies of multiple cores > OSes running on different cores cannot adjust clock independently > Requires entity with global view Enter Multicore: Architectural Constraints
  • 29. > Cores have same ISA but different clock rates > Hypervisor can determine optimal mapping of subsystems to cores • Using same infrastructure as for DVFS • Integrate with temporary core consolidation Asymmetric Multicore Fast CPU Slow CPU OKL4 Microvisor CPU-bound Subsystem Fast CPU VCPU VCPU VCPUVCPU Memory-bound Subsystem Slow CPU
  • 30. > Move subsystems between cores • including temporary consolidation of different subsystems on common core > Architectural inter-core dependencies • cannot manage core clocks independently > Requires global control • ... outside individual OSes • indirection layer between OS and hardware > No practical alternative to virtualization! The Future is Multicore OKL4 Microvisor Subsystem #1 CPU VCPU VCPU VCPUVCPU Subsystem #2 CPU CPUCPU
  • 31. > Virtualization is unavoidable long-term > ... but provides other benefits short-term > Early uptake maximises benefits > Future-proof your designs! Summary

Editor's Notes

  1. This slide is missing arrows