Sefos A self-aware factored operating system A Traditional OS App 1 - - PowerPoint PPT Presentation
Sefos A self-aware factored operating system A Traditional OS App 1 - - PowerPoint PPT Presentation
Sefos A self-aware factored operating system A Traditional OS App 1 App 2 App 3 System call Operating System Memory File Device Scheduler Manager System Drivers App 2 Cache Cache App 1 I/O Disk App 3 Devices Core Core DRAM
2
A Traditional OS
Operating System
Disk I/O Devices DRAM
App 2 App 1 App 3
Memory Manager File System Device Drivers Scheduler
App 1
Core
Cache
App 2 App 3
Core
Cache
System call
3
Sefos: A Self-Aware OS
sefos: A Self-Aware Operating System
Disk I/O Devices DRAM
App 2 App 1 App 3
miss rate voltage, freq, precision cache size, associativity power
Memory Manager File System Device Drivers Scheduler
activity, power, temp
App 1
Analysis & Optimization Engine Observe Decide Act Core
Cache
App 2 App 3
Learner
Core
Cache
System call
speed algorithm heartbeat, goals
Heartbeat/ Performance measurements
Control system
PEP Core
Cache
PEP Core
Cache
4
Sefos is Factored
I/O !"# #!"# #!"# !"# #!"# #!"# !"# User App !"# !"# $%%&# '%(# )*+%# !,-%# .%*&#
! $"#%&'()*+,#-.()#/+*0-'+/#1+232#.&4+#/+*0-'+5#6&3+#/+*0-'+#!"5#78+#/+*0-'+#9":# ! ;&'<#/+*0-'+#-/#%=*(<+*#%&'()*+,#-.()#&#!""#$)%#,-/(*->=(+,#/+*0+*/## ! ;&'<#/+*0+*#-/#>)=.,#()#&#')*+# ! ?668-'&@).#')*+/#4+//&3+#&*@'=8&*#/+*0+*#')*+#()#=@8-A+#/+*0-'+# ! "+*0+*#')*+/#')88&>)*&(+B')44=.-'&(+#()#-468+4+.(#.++,+,#$"#/+*0-'+#
Core
File system fleet
! Sefos Analysis and
Optimization Engine
! A closed feedback loop of
ODA
! Each component provides a
new OS service:
! The observer provides vital
signs services
! The decision engine provides
performance models and AI learning engine
! The actuators modifies system
status ! Each component is either
implemented as a fos fleet
- r integrated into another
S/W components.
5 Analysis & Optimization Engine
Vital Signs
(e.g. heartbeats)
Observe
Decision Engine
- performance models
- control system
- learner
Decide
Actuators
Act
Sefos is Self-Aware
Analysis & Optimization Engine
- Applications (e.g. algorithms)
- OS sub-systems (e.g.
growing fleets)
- Hardware components (e.g.
frequency scaling)
Vital Signs Fleet
! Observes the status of software
and hardware components.
! Provides a distributed, global
knowledge-base of the system
! Implemented as a fleet, storing
the information in a distributed data object
!
key-value store
6
Vital Signs
(e.g. heartbeats)
Observe
Decision Engine Actuators
Sefos: Building self-awareness into fos
Analysis & Optimization Engine ! Collects measurements from:
1) Applications e.g. Apps heartbeats, Application-specific measurements (fps in a video encoder or flops in a scientific app) 2) OS subsystems e.g. Utilization ratio of the file system fleet 3) Hardware components e.g. temperature, core frequency, power, cache miss rate
Decision Engine
! A new OS service ! Implemented through a fleet of
servers for scalability
! Process input from the vital
signs service
! Provides two approaches to
runtime decision making:
7
Vital Signs Decision Engine
(e.g. performance models, control system, AI learner)
Decide
Actuators
Sefos: Building self-awareness into fos
Analysis & Optimization Engine
" Machine learning " Classical control theory
Actuators
! Actions allowing the system to
adapt at runtime
! Three sets of actions, based on
their impact:
- Application actions
- Allocating or de-allocating cores to
an application
- Switching between algorithms
- Migrating processes for better data
locality and cache usage
- OS services actions
- Growing and shrinking fleets
- Migrating servers
- Hardware actions
- Frequency scaling to save power
8
Vital Signs Decision Engine Actuators
Act
Sefos: Building self-awareness into fos
Analysis & Optimization Engine
- Applications
- OS sub-systems
- Hardware components (e.g.
frequency scaling)
" Implemented as extension to fos fleets, OS tools for hardware actions or
application-specific actions
9 9
Observe-Decide-Act Loop in Sefos
App OS Runtime Compiler Arch – net Arch – mem Arch – proc Logic & circuits Device
O D A Heartbeats Algorithm Choice D O A Dynamic voltage scaling O D A Heartbeats frequency scaling O A D Computation Migration