Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
The Maths of Microscaling
Search
Liz Rice
November 08, 2016
Technology
2
210
The Maths of Microscaling
Using control theory to scale containers in real time, in response to demand
Liz Rice
November 08, 2016
Tweet
Share
More Decks by Liz Rice
See All by Liz Rice
Unleashing the kernel with eBPF
lizrice
0
130
eBPF's Abilities and Limitations: The Truth
lizrice
0
240
Simplifying multi-cloud and multi-cluster Kubernetes deployments with Cilium
lizrice
0
140
When is a Secure Connection not encrypted? And other stories
lizrice
1
63
Keeping it simple: Cilium Mesh - networking for multi-cloud Kubernetes and beyond
lizrice
1
570
How Many Proxies Do You Need
lizrice
1
120
eBPF for Security Observability
lizrice
0
1.2k
Beginner's Guide to eBPF Programming for Networking
lizrice
1
2.2k
Contributing to Open Source - what's in it for my business?
lizrice
0
43
Other Decks in Technology
See All in Technology
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
270
あなたの知らない Function.prototype.toString() の世界
mizdra
PRO
2
360
SREが投資するAIOps ~ペアーズにおけるLLM for Developerへの取り組み~
takumiogawa
2
480
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
1
120
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
3
640
OCI Vault 概要
oracle4engineer
PRO
0
9.7k
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
120
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
アジャイルチームがらしさを発揮するための目標づくり / Making the goal and enabling the team
kakehashi
3
160
Amazon CloudWatch Network Monitor のススメ
yuki_ink
1
210
OS 標準のデザインシステムを超えて - より柔軟な Flutter テーマ管理 | FlutterKaigi 2024
ronnnnn
1
300
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
31
6.3k
Fireside Chat
paigeccino
34
3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
900
A better future with KSS
kneath
238
17k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Producing Creativity
orderedlist
PRO
341
39k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
Building Applications with DynamoDB
mza
90
6.1k
KATA
mclloyd
29
14k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Transcript
The Maths of Microscaling Liz Rice @lizrice | @microscaling
What is Microscaling? Assumptions Some theory Some experiments
What is Microscaling?
Traffic spike
Too much work Spare capacity
container scaling work performance metrics
work performance metrics container scaling VM autoscaling
True for regular autoscaling too VMs take much longer to
scale
Orchestration Heterogenous services Cattle not pets
Performance targets
How many containers? Request processing time Rate of requests known?
predictable?
performance target actual performance error time t
performance target p time t actual performance x e(t) =
x(t) - p(t) e(t) → 0 error e
x(t) is proportional to n(t) n(t) = k x(t) error
e time t number of containers n
x(t) is proportional to n(t) nope! error e time t
number of containers n d(t) is proportional to e(t) d
Time delays It’s a dynamical system
Woah, the future! error e time t d(t) is proportional
to e(t + T) T d
None
Control theory!
PID controller
error e time t Proportional term d(t) = Kp e(t)
The further we are below target the more containers we need
error e time t Derivative term The faster we approach
target the fewer containers we need d(t) = Kp e(t) + Kd ė(t)
error e time t Integral term d(t) = Kp e(t)
+ Kd ė(t) + Ki e(t) Offset errors accumulated over time ∫
Which values for K? Discrete containers?
Simulator goo.gl/KAqT5y
It works! But it’s non-trivial to tune
Known behaviours Machine learning
Container parameters = metadata microbadger.com
github.com/microscaling @lizrice | @microscaling app.microscaling.com microbadger.com