SlideShare a Scribd company logo
Microkernels in the Era of Data-Centric Computing
Martin Děcký
martin.decky@huawei.com
February 2018
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 2
Who Am I
Passionate programmer and operating systems enthusiast
With a specific inclination towards multiserver microkernels
HelenOS developer since 2004
Research Scientist since 2006
Charles University (Prague), Distributed Systems Research Group
Senior Research Engineer since 2017
Huawei Technologies (Munich), Central Software Institute
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 3
Motivation3
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 4
Memory Barrier
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 5
LaMarca, Ladner (1996)
Quick Sort
O(n×log n) operations
Radix Sort
O(n) operations
4 8 16 32 64 128 256 512 1024 2048 4096
0
200
400
600
800
1000
1200
Quick Sort Radix Sort
Thousands of items
Instructions/item
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 6
LaMarca, Ladner (1996)
Quick Sort
O(n×log n) operations
Radix Sort
O(n) operations
4 8 16 32 64 128 256 512 1024 2048 4096
0
200
400
600
800
1000
1200
1400
1600
1800
2000
Quick Sort Radix Sort
Thousands of items
Clockcycles/item
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 7
LaMarca, Ladner (1996)
Quick Sort
O(n×log n) operations
Radix Sort
O(n) operations
4 8 16 32 64 128 256 512 1024 2048 4096
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
Quick Sort Radix Sort
Thousands of items
Cachemisses/item
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 8
The Myth of RAM
Accessing a random memory location requires
O(1)
operations
Accessing a random memory location takes
O(1)
time units
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 9
The Myth of RAM
Accessing a random memory location requires
O(1)
operations
Accessing a random memory location takes
O(1)
time units
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 10
The Myth of RAM
Accessing a random memory location requires
O(1)
operations
Accessing a random memory location takes
O(√n)
time units
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 11
Breaking the Barrier
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 12
Von Neumann Forever?
Data
Control
Status
ALU
Input
peripheral
Output
peripheral
RAM
Controller
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 13
Von Neumann Forever?
New emerging memory technologies
Bridging the gap between volatile and non-volatile memory
No longer necessary to keep the distinction between RAM and storage
(peripherals)
Single-level memory (universal memory)
See also the talk by Liam Proven (The circuit less traveled), Janson, Sat 13:00
Many technologies in development
Magnetoresistive random-access memory (MRAM)
Racetrack memory
Ferroelectric random-access memory (FRAM)
Phase-change memory (PCM)
Nano-RAM (Nanotube RAM)
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 14
Less Radical Solution
Near-Data Processing
Moving the computation closer to the place where the data is
Not a completely new idea at all
Spatial locality in general
GPUs processing graphics data locally
Breaking the monopoly of CPU on data processing even more
CPUs are fast, but also power-hungry
CPUs can only process the data already fetched from the memory/storage
The more data we avoid moving from the memory/storage to the CPU,
the more efficiently the CPU runs
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 15
Near-Data Processing
Benefits
Decreased latency, increased throughput
Not necessarily on an unloaded system, but improvement under load
[1] Gu B., Yoon A. S., Bae D.-H., Jo I., Lee
J., Yoon J., Kang J.-U., Kwon M., Yoon C.,
Cho S., Jeong J., Chang D.: Biscuit: A
Framework for Near-Data Processing of
Big Data Workloads, in Proceedings of
43rd Annual International Symposium
on Computer Architecture, ACM/IEEE,
2016
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 16
Near-Data Processing
Benefits (2)
Decreased energy consumption
[2] Kim S., Oh H., Park C., Cho S., Lee S.-
W.: Fast, Energy Efficient Scan inside
Flash Memory SSDs, in Proceedings of
37th International Conference on Very
Large Data Bases (VLDB), VLDB
Endowment, 2011
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 17
In-Memory Near-Data Processing
Adding computational capability to DRAM cells
Simple logical comparators/operators that could be computed in parallel
on individual words
Filtering based on bitwise pattern
Bitwise operations
Making use of the inherent parallelism
Avoiding moving unnecessary data out of DRAM
Avoiding linear processing of independent words of the data in CPU
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 18
Dynamic RAM
memory
matrix
rowdecoder
⁞
controllogic Sense amps
.........
address
data
Y-gating
.........
Y
RAS
CAS
WE
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 19
Dynamic RAM with NDP
memory
matrix
rowdecoder
⁞
controllogic Sense amps
.........
address
data
Filtering / Computing
.........
opcode
RAS
CAS
WE
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 20
In-Storage Near-Data Processing
Adding computational capability to SSD controllers
Again, making use of inherent parallelism of flash memory
But SSD controllers also contain powerful embedded cores
Flash Translation Layer, garbage collection, wear leveling
Thus computation is not limited to simple bitwise filtering and operations
Complex trade-offs between computing on the primary CPU and
offloading to the SSD controller
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 21
Our Prototype
Based on OpenSSD
http://openssd.io/
Open source (GPL) NVMe SSD controller
Hanyang University (Seoul), Embedded and Network Computing Lab
FPGA design for Xilinx Xynq-7000
ONFI NAND flash controller with ECC engine
PCI-e NVMe host interface with scatter-gather DMA engine
Controller firmware
ARMv7
Flash Translation Layer, page caching, greedy garbage collection
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 22
Our Prototype (2)
NVMe NDP extensions
NDP module deployment
Static native code so far, moving to safe byte-code (eBPF)
NDP datasets
Safety boundaries for the NDP modules (for multitenancy, etc.)
NDP Read / Write
Extensions of the standard NVMe Read / Write commands
NDP module executed on each block, transforms/filters data
NDP Transform
Arbitrary data transformations (in-place copying, etc.)
Flow-based computational model
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 23
Our Prototype (3)
Fast prototyping
QEMU model of the OpenSSD hardware (for running the OpenSSD firmware on ARMv7)
Connected to a second host QEMU/KVM (as a regular PCI-e NVMe storage device)
Planned evaluation
Real-world application proof-of-concept
Custom storage engine for MySQL with operator push-down
Ceph operator push-down
Key-value store
Generic file system acceleration
Still a very much work-in-progress
Preliminary results quite promising
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 24
How Microkernels Fit
into this?
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 25
Future Vision
Not just near-data processing, but data-centric computing
As opposed to CPU-centric computing
Running the computation dynamically where it is the most efficient
Not necessarily moving the data to the central processing unit
The CPU is the orchestrator
Massively distributed systems
Within the box of your machine (desktop, laptop, smartphone)
Outside your machine (edge cloud, fog, cloud, data center)
Massively heterogeneous systems
Different ISAs
Fully programmable, partially programmable, fixed-function
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 26
Future Vision & Microkernels
file system
driver server
CPU
microkernel
application application application
privileged mode
unprivileged mode
memory
mgmt
scheduler IPC
naming
server
location
server
device driver
server
device driver
server
device driver
server
file system
driver server
file system
driver server
device
multiplexer
file system
multiplexer
network
stack
security
server
...
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 27
Future Vision & Multi-Microkernels
file system
driver server
Primary
CPU
microkernel
distributed
application
distributed
application
distributed
application
privileged mode
unprivileged mode
memory
mgmt
scheduler IPC
naming
server
location
server
device driver
server
device driver
server
device driver
server
file system
driver server
file system
driver server
device
multiplexer
file system
multiplexer
network
stack
security
server
...
SSD
CPU
NIC
CPU
GPU
microkernelmemory
mgmt
scheduler IPC microkernelmemory
mgmt
scheduler IPC microkernelmemory
mgmt
scheduler IPC
... ... compositor
distributed
application
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 28
Microkernels for Data-Centric Computing
Multiserver microkernels
Naturally support distribution and heterogeneity
IPC is a well-defined mechanism to communicate across isolation
boundaries
Communicating between multiple (heterogeneous) computing cores is just a
different transport
Message passing as the least common denominator
– But also memory coherency emulation is possible
Multiserver designers are used to think in terms of fine-grained components
Composing an application from multiple components
Missing piece: Framework for automatic workload migration
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 29
Microkernels for Data-Centric Computing (2)
Why not multikernels?
Yes, why not!
Many multikernels (i.e. Barrelfish) are essentially microkernels to the
extreme
Each core running its independent microkernel
No memory coherency assumed
Why not unikernels?
OK, if you insist
A microkernel running a single fixed payload (e.g. a virtual machine)
could be considered a unikernel
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 30
Road Forward
As usual, incremental steps
Start with just the basic workload off-loading to the SSD, NIC, etc.
Gradually transform the run-time for the workload off-loading into a
proto-microkernel
Consider the dynamic workload migration framework
Gradually move to a full-fledged multi-microkernel
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 31
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 32
Summary
There are potential ways of abandoning the von Neumann
architecture
Revolutionary: Single-level (universal) memory
Evolutionary: Near-Data Processing
Near-Data Processing is beneficial in terms of performance and
energy consumption
Data-centric computing leads to massively distributed and
heterogeneous systems
Multi-microkernels are a natural match for such architectures
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 33
Acknowledgements
Huawei Technologies in-storage NDP team
Antonio Barbalace
Martin Decky
Anthony Iliopoulos
Javier Picorel
Dmitry Voytik
Hangjun Zhao
References & Inspiration
Mark Silberstein (Technion)
Biscuit framework (Samsung Electronics)
Martin Děcký, FOSDEM 2018, February 3rd
2018 Microkernels in the Era of Data-Centric Computing 34
Q&A
Thank You!

More Related Content

What's hot

Optimization of latency of temporal key Integrity protocol (tkip) using graph...
Optimization of latency of temporal key Integrity protocol (tkip) using graph...Optimization of latency of temporal key Integrity protocol (tkip) using graph...
Optimization of latency of temporal key Integrity protocol (tkip) using graph...
ijcseit
 
An Efficient PDP Scheme for Distributed Cloud Storage
An Efficient PDP Scheme for Distributed Cloud StorageAn Efficient PDP Scheme for Distributed Cloud Storage
An Efficient PDP Scheme for Distributed Cloud Storage
IJMER
 
Fpga based encryption design using vhdl
Fpga based encryption design using vhdlFpga based encryption design using vhdl
Fpga based encryption design using vhdl
eSAT Publishing House
 
Bringing The Grid Home for Grid2008
Bringing The Grid Home for Grid2008Bringing The Grid Home for Grid2008
Bringing The Grid Home for Grid2008
awesomesos
 
Biomedical image transmission based on Modified feistal algorithm
Biomedical image transmission based on Modified feistal algorithmBiomedical image transmission based on Modified feistal algorithm
Biomedical image transmission based on Modified feistal algorithm
ijcsit
 
NEW ALGORITHM FOR WIRELESS NETWORK COMMUNICATION SECURITY
NEW ALGORITHM FOR WIRELESS NETWORK COMMUNICATION SECURITYNEW ALGORITHM FOR WIRELESS NETWORK COMMUNICATION SECURITY
NEW ALGORITHM FOR WIRELESS NETWORK COMMUNICATION SECURITY
ijcisjournal
 
LITE Kernel RDMA Support for Datacenter Applications
LITE Kernel RDMA Support for Datacenter ApplicationsLITE Kernel RDMA Support for Datacenter Applications
LITE Kernel RDMA Support for Datacenter Applications
TakuyaFukuoka2
 
Parallella: Embedded HPC For Everybody
Parallella: Embedded HPC For EverybodyParallella: Embedded HPC For Everybody
Parallella: Embedded HPC For Everybody
jerlbeck
 
Reactive Data Centric Architectures with Vortex, Spark and ReactiveX
Reactive Data Centric Architectures with Vortex, Spark and ReactiveXReactive Data Centric Architectures with Vortex, Spark and ReactiveX
Reactive Data Centric Architectures with Vortex, Spark and ReactiveX
Angelo Corsaro
 
Net2
Net2Net2
Final Year Project Synopsis: Post Quantum Encryption using Neural Networks
Final Year Project Synopsis: Post Quantum Encryption using Neural NetworksFinal Year Project Synopsis: Post Quantum Encryption using Neural Networks
Final Year Project Synopsis: Post Quantum Encryption using Neural Networks
JPC Hanson
 
Towards Edge Computing as a Service: Dynamic Formation of the Micro Data-Centers
Towards Edge Computing as a Service: Dynamic Formation of the Micro Data-CentersTowards Edge Computing as a Service: Dynamic Formation of the Micro Data-Centers
Towards Edge Computing as a Service: Dynamic Formation of the Micro Data-Centers
Faculty of Technical Sciences, University of Novi Sad
 
Signotron Software India Projects
Signotron Software India ProjectsSignotron Software India Projects
Signotron Software India ProjectsRajat Kumar Saha
 
Page Fault Support for Network Controllers
Page Fault Support for Network ControllersPage Fault Support for Network Controllers
Page Fault Support for Network Controllers
TakuyaFukuoka2
 
M tech published paper
M tech published paperM tech published paper
M tech published paper
Anand Sharma
 
PERFORMANCE EVALUATION OF PARALLEL INTERNATIONAL DATA ENCRYPTION ALGORITHM ON...
PERFORMANCE EVALUATION OF PARALLEL INTERNATIONAL DATA ENCRYPTION ALGORITHM ON...PERFORMANCE EVALUATION OF PARALLEL INTERNATIONAL DATA ENCRYPTION ALGORITHM ON...
PERFORMANCE EVALUATION OF PARALLEL INTERNATIONAL DATA ENCRYPTION ALGORITHM ON...
IJNSA Journal
 
Privacy-Preserving Public Auditing for Regenerating-Code-Based Cloud Storage
Privacy-Preserving Public Auditing for Regenerating-Code-Based Cloud StoragePrivacy-Preserving Public Auditing for Regenerating-Code-Based Cloud Storage
Privacy-Preserving Public Auditing for Regenerating-Code-Based Cloud Storage
1crore projects
 
DEF CON 27 - BRENT STONE - reverse enginerring 17 cars
DEF CON 27 - BRENT STONE - reverse enginerring 17 carsDEF CON 27 - BRENT STONE - reverse enginerring 17 cars
DEF CON 27 - BRENT STONE - reverse enginerring 17 cars
Felipe Prado
 

What's hot (20)

Optimization of latency of temporal key Integrity protocol (tkip) using graph...
Optimization of latency of temporal key Integrity protocol (tkip) using graph...Optimization of latency of temporal key Integrity protocol (tkip) using graph...
Optimization of latency of temporal key Integrity protocol (tkip) using graph...
 
An Efficient PDP Scheme for Distributed Cloud Storage
An Efficient PDP Scheme for Distributed Cloud StorageAn Efficient PDP Scheme for Distributed Cloud Storage
An Efficient PDP Scheme for Distributed Cloud Storage
 
40520130101005
4052013010100540520130101005
40520130101005
 
Fpga based encryption design using vhdl
Fpga based encryption design using vhdlFpga based encryption design using vhdl
Fpga based encryption design using vhdl
 
Bringing The Grid Home for Grid2008
Bringing The Grid Home for Grid2008Bringing The Grid Home for Grid2008
Bringing The Grid Home for Grid2008
 
Biomedical image transmission based on Modified feistal algorithm
Biomedical image transmission based on Modified feistal algorithmBiomedical image transmission based on Modified feistal algorithm
Biomedical image transmission based on Modified feistal algorithm
 
NEW ALGORITHM FOR WIRELESS NETWORK COMMUNICATION SECURITY
NEW ALGORITHM FOR WIRELESS NETWORK COMMUNICATION SECURITYNEW ALGORITHM FOR WIRELESS NETWORK COMMUNICATION SECURITY
NEW ALGORITHM FOR WIRELESS NETWORK COMMUNICATION SECURITY
 
LITE Kernel RDMA Support for Datacenter Applications
LITE Kernel RDMA Support for Datacenter ApplicationsLITE Kernel RDMA Support for Datacenter Applications
LITE Kernel RDMA Support for Datacenter Applications
 
Shilpa ppt
Shilpa pptShilpa ppt
Shilpa ppt
 
Parallella: Embedded HPC For Everybody
Parallella: Embedded HPC For EverybodyParallella: Embedded HPC For Everybody
Parallella: Embedded HPC For Everybody
 
Reactive Data Centric Architectures with Vortex, Spark and ReactiveX
Reactive Data Centric Architectures with Vortex, Spark and ReactiveXReactive Data Centric Architectures with Vortex, Spark and ReactiveX
Reactive Data Centric Architectures with Vortex, Spark and ReactiveX
 
Net2
Net2Net2
Net2
 
Final Year Project Synopsis: Post Quantum Encryption using Neural Networks
Final Year Project Synopsis: Post Quantum Encryption using Neural NetworksFinal Year Project Synopsis: Post Quantum Encryption using Neural Networks
Final Year Project Synopsis: Post Quantum Encryption using Neural Networks
 
Towards Edge Computing as a Service: Dynamic Formation of the Micro Data-Centers
Towards Edge Computing as a Service: Dynamic Formation of the Micro Data-CentersTowards Edge Computing as a Service: Dynamic Formation of the Micro Data-Centers
Towards Edge Computing as a Service: Dynamic Formation of the Micro Data-Centers
 
Signotron Software India Projects
Signotron Software India ProjectsSignotron Software India Projects
Signotron Software India Projects
 
Page Fault Support for Network Controllers
Page Fault Support for Network ControllersPage Fault Support for Network Controllers
Page Fault Support for Network Controllers
 
M tech published paper
M tech published paperM tech published paper
M tech published paper
 
PERFORMANCE EVALUATION OF PARALLEL INTERNATIONAL DATA ENCRYPTION ALGORITHM ON...
PERFORMANCE EVALUATION OF PARALLEL INTERNATIONAL DATA ENCRYPTION ALGORITHM ON...PERFORMANCE EVALUATION OF PARALLEL INTERNATIONAL DATA ENCRYPTION ALGORITHM ON...
PERFORMANCE EVALUATION OF PARALLEL INTERNATIONAL DATA ENCRYPTION ALGORITHM ON...
 
Privacy-Preserving Public Auditing for Regenerating-Code-Based Cloud Storage
Privacy-Preserving Public Auditing for Regenerating-Code-Based Cloud StoragePrivacy-Preserving Public Auditing for Regenerating-Code-Based Cloud Storage
Privacy-Preserving Public Auditing for Regenerating-Code-Based Cloud Storage
 
DEF CON 27 - BRENT STONE - reverse enginerring 17 cars
DEF CON 27 - BRENT STONE - reverse enginerring 17 carsDEF CON 27 - BRENT STONE - reverse enginerring 17 cars
DEF CON 27 - BRENT STONE - reverse enginerring 17 cars
 

Similar to Microkernels in the Era of Data-Centric Computing

FOSDEM 2013: Operating Systems Hot Topics
FOSDEM 2013: Operating Systems Hot TopicsFOSDEM 2013: Operating Systems Hot Topics
FOSDEM 2013: Operating Systems Hot Topics
Martin Děcký
 
onur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptx
onur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptxonur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptx
onur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptx
sivasubramanianManic2
 
Privacy protection domain-user integra tag deduplication in cloud data server
Privacy protection domain-user integra tag deduplication in  cloud data serverPrivacy protection domain-user integra tag deduplication in  cloud data server
Privacy protection domain-user integra tag deduplication in cloud data server
IJECEIAES
 
A New Direction for Computer Architecture Research
A New Direction for Computer Architecture ResearchA New Direction for Computer Architecture Research
A New Direction for Computer Architecture Research
dbpublications
 
ISC 2016 Day 3 Recap
ISC 2016 Day 3 RecapISC 2016 Day 3 Recap
ISC 2016 Day 3 Recap
OpenPOWERorg
 
Scalable Algorithm Design with MapReduce
Scalable Algorithm Design with MapReduceScalable Algorithm Design with MapReduce
Scalable Algorithm Design with MapReduce
Pietro Michiardi
 
Big Data is changing abruptly, and where it is likely heading
Big Data is changing abruptly, and where it is likely headingBig Data is changing abruptly, and where it is likely heading
Big Data is changing abruptly, and where it is likely heading
Paco Nathan
 
Big Data in a neurophysiology research lab… what?
Big Data in a neurophysiology research lab… what?Big Data in a neurophysiology research lab… what?
Big Data in a neurophysiology research lab… what?
J On The Beach
 
Automata Processing: Accelerating Big Data
Automata Processing: Accelerating Big DataAutomata Processing: Accelerating Big Data
Automata Processing: Accelerating Big Data
MicronTechnology
 
CDP_2(1).pptx
CDP_2(1).pptxCDP_2(1).pptx
CDP_2(1).pptx
Sameer Ali
 
Self-Tuning Data Centers
Self-Tuning Data CentersSelf-Tuning Data Centers
Self-Tuning Data Centers
Reza Rahimi
 
Automatic generation of hardware memory architectures for HPC
Automatic generation of hardware memory architectures for HPCAutomatic generation of hardware memory architectures for HPC
Automatic generation of hardware memory architectures for HPC
Facultad de Informática UCM
 
Trends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMP
Trends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMPTrends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMP
Trends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMP
Christian Esteve Rothenberg
 
Smart storage 2011
Smart storage 2011Smart storage 2011
Smart storage 2011
Pini Cohen
 
CSIT 534 Presentation Cherri_edmond
CSIT 534 Presentation Cherri_edmondCSIT 534 Presentation Cherri_edmond
CSIT 534 Presentation Cherri_edmondlowedmond
 
Exascale Capabl
Exascale CapablExascale Capabl
Exascale Capabl
Sagar Dolas
 
Improving availability and reducing redundancy using deduplication of cloud s...
Improving availability and reducing redundancy using deduplication of cloud s...Improving availability and reducing redundancy using deduplication of cloud s...
Improving availability and reducing redundancy using deduplication of cloud s...
dhanarajp
 
Data Engineer's Lunch #85: Designing a Modern Data Stack
Data Engineer's Lunch #85: Designing a Modern Data StackData Engineer's Lunch #85: Designing a Modern Data Stack
Data Engineer's Lunch #85: Designing a Modern Data Stack
Anant Corporation
 

Similar to Microkernels in the Era of Data-Centric Computing (20)

FOSDEM 2013: Operating Systems Hot Topics
FOSDEM 2013: Operating Systems Hot TopicsFOSDEM 2013: Operating Systems Hot Topics
FOSDEM 2013: Operating Systems Hot Topics
 
onur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptx
onur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptxonur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptx
onur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptx
 
Privacy protection domain-user integra tag deduplication in cloud data server
Privacy protection domain-user integra tag deduplication in  cloud data serverPrivacy protection domain-user integra tag deduplication in  cloud data server
Privacy protection domain-user integra tag deduplication in cloud data server
 
A New Direction for Computer Architecture Research
A New Direction for Computer Architecture ResearchA New Direction for Computer Architecture Research
A New Direction for Computer Architecture Research
 
ISC 2016 Day 3 Recap
ISC 2016 Day 3 RecapISC 2016 Day 3 Recap
ISC 2016 Day 3 Recap
 
BigDataCSEKeyNote_2012
BigDataCSEKeyNote_2012BigDataCSEKeyNote_2012
BigDataCSEKeyNote_2012
 
Scalable Algorithm Design with MapReduce
Scalable Algorithm Design with MapReduceScalable Algorithm Design with MapReduce
Scalable Algorithm Design with MapReduce
 
Big Data is changing abruptly, and where it is likely heading
Big Data is changing abruptly, and where it is likely headingBig Data is changing abruptly, and where it is likely heading
Big Data is changing abruptly, and where it is likely heading
 
Big Data in a neurophysiology research lab… what?
Big Data in a neurophysiology research lab… what?Big Data in a neurophysiology research lab… what?
Big Data in a neurophysiology research lab… what?
 
Automata Processing: Accelerating Big Data
Automata Processing: Accelerating Big DataAutomata Processing: Accelerating Big Data
Automata Processing: Accelerating Big Data
 
CDP_2(1).pptx
CDP_2(1).pptxCDP_2(1).pptx
CDP_2(1).pptx
 
Self-Tuning Data Centers
Self-Tuning Data CentersSelf-Tuning Data Centers
Self-Tuning Data Centers
 
Automatic generation of hardware memory architectures for HPC
Automatic generation of hardware memory architectures for HPCAutomatic generation of hardware memory architectures for HPC
Automatic generation of hardware memory architectures for HPC
 
Trends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMP
Trends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMPTrends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMP
Trends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMP
 
Par com
Par comPar com
Par com
 
Smart storage 2011
Smart storage 2011Smart storage 2011
Smart storage 2011
 
CSIT 534 Presentation Cherri_edmond
CSIT 534 Presentation Cherri_edmondCSIT 534 Presentation Cherri_edmond
CSIT 534 Presentation Cherri_edmond
 
Exascale Capabl
Exascale CapablExascale Capabl
Exascale Capabl
 
Improving availability and reducing redundancy using deduplication of cloud s...
Improving availability and reducing redundancy using deduplication of cloud s...Improving availability and reducing redundancy using deduplication of cloud s...
Improving availability and reducing redundancy using deduplication of cloud s...
 
Data Engineer's Lunch #85: Designing a Modern Data Stack
Data Engineer's Lunch #85: Designing a Modern Data StackData Engineer's Lunch #85: Designing a Modern Data Stack
Data Engineer's Lunch #85: Designing a Modern Data Stack
 

More from Martin Děcký

Code Instrumentation, Dynamic Tracing
Code Instrumentation, Dynamic TracingCode Instrumentation, Dynamic Tracing
Code Instrumentation, Dynamic Tracing
Martin Děcký
 
Nízkoúrovňové programování
Nízkoúrovňové programováníNízkoúrovňové programování
Nízkoúrovňové programování
Martin Děcký
 
Porting HelenOS to RISC-V
Porting HelenOS to RISC-VPorting HelenOS to RISC-V
Porting HelenOS to RISC-V
Martin Děcký
 
What Could Microkernels Learn from Monolithic Kernels (and Vice Versa)
What Could Microkernels Learn from Monolithic Kernels (and Vice Versa)What Could Microkernels Learn from Monolithic Kernels (and Vice Versa)
What Could Microkernels Learn from Monolithic Kernels (and Vice Versa)
Martin Děcký
 
FOSDEM 2014: Read-Copy-Update for HelenOS
FOSDEM 2014: Read-Copy-Update for HelenOSFOSDEM 2014: Read-Copy-Update for HelenOS
FOSDEM 2014: Read-Copy-Update for HelenOS
Martin Děcký
 
HelenOS: State of the Union 2012
HelenOS: State of the Union 2012HelenOS: State of the Union 2012
HelenOS: State of the Union 2012
Martin Děcký
 

More from Martin Děcký (6)

Code Instrumentation, Dynamic Tracing
Code Instrumentation, Dynamic TracingCode Instrumentation, Dynamic Tracing
Code Instrumentation, Dynamic Tracing
 
Nízkoúrovňové programování
Nízkoúrovňové programováníNízkoúrovňové programování
Nízkoúrovňové programování
 
Porting HelenOS to RISC-V
Porting HelenOS to RISC-VPorting HelenOS to RISC-V
Porting HelenOS to RISC-V
 
What Could Microkernels Learn from Monolithic Kernels (and Vice Versa)
What Could Microkernels Learn from Monolithic Kernels (and Vice Versa)What Could Microkernels Learn from Monolithic Kernels (and Vice Versa)
What Could Microkernels Learn from Monolithic Kernels (and Vice Versa)
 
FOSDEM 2014: Read-Copy-Update for HelenOS
FOSDEM 2014: Read-Copy-Update for HelenOSFOSDEM 2014: Read-Copy-Update for HelenOS
FOSDEM 2014: Read-Copy-Update for HelenOS
 
HelenOS: State of the Union 2012
HelenOS: State of the Union 2012HelenOS: State of the Union 2012
HelenOS: State of the Union 2012
 

Recently uploaded

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
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
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
 
Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.
ViralQR
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
Vlad Stirbu
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
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
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
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
 
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
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
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
 

Recently uploaded (20)

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 !
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
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
 
Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
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
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
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...
 
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...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
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
 

Microkernels in the Era of Data-Centric Computing

  • 1. Microkernels in the Era of Data-Centric Computing Martin Děcký martin.decky@huawei.com February 2018
  • 2. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 2 Who Am I Passionate programmer and operating systems enthusiast With a specific inclination towards multiserver microkernels HelenOS developer since 2004 Research Scientist since 2006 Charles University (Prague), Distributed Systems Research Group Senior Research Engineer since 2017 Huawei Technologies (Munich), Central Software Institute
  • 3. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 3 Motivation3
  • 4. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 4 Memory Barrier
  • 5. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 5 LaMarca, Ladner (1996) Quick Sort O(n×log n) operations Radix Sort O(n) operations 4 8 16 32 64 128 256 512 1024 2048 4096 0 200 400 600 800 1000 1200 Quick Sort Radix Sort Thousands of items Instructions/item
  • 6. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 6 LaMarca, Ladner (1996) Quick Sort O(n×log n) operations Radix Sort O(n) operations 4 8 16 32 64 128 256 512 1024 2048 4096 0 200 400 600 800 1000 1200 1400 1600 1800 2000 Quick Sort Radix Sort Thousands of items Clockcycles/item
  • 7. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 7 LaMarca, Ladner (1996) Quick Sort O(n×log n) operations Radix Sort O(n) operations 4 8 16 32 64 128 256 512 1024 2048 4096 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 Quick Sort Radix Sort Thousands of items Cachemisses/item
  • 8. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 8 The Myth of RAM Accessing a random memory location requires O(1) operations Accessing a random memory location takes O(1) time units
  • 9. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 9 The Myth of RAM Accessing a random memory location requires O(1) operations Accessing a random memory location takes O(1) time units
  • 10. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 10 The Myth of RAM Accessing a random memory location requires O(1) operations Accessing a random memory location takes O(√n) time units
  • 11. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 11 Breaking the Barrier
  • 12. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 12 Von Neumann Forever? Data Control Status ALU Input peripheral Output peripheral RAM Controller
  • 13. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 13 Von Neumann Forever? New emerging memory technologies Bridging the gap between volatile and non-volatile memory No longer necessary to keep the distinction between RAM and storage (peripherals) Single-level memory (universal memory) See also the talk by Liam Proven (The circuit less traveled), Janson, Sat 13:00 Many technologies in development Magnetoresistive random-access memory (MRAM) Racetrack memory Ferroelectric random-access memory (FRAM) Phase-change memory (PCM) Nano-RAM (Nanotube RAM)
  • 14. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 14 Less Radical Solution Near-Data Processing Moving the computation closer to the place where the data is Not a completely new idea at all Spatial locality in general GPUs processing graphics data locally Breaking the monopoly of CPU on data processing even more CPUs are fast, but also power-hungry CPUs can only process the data already fetched from the memory/storage The more data we avoid moving from the memory/storage to the CPU, the more efficiently the CPU runs
  • 15. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 15 Near-Data Processing Benefits Decreased latency, increased throughput Not necessarily on an unloaded system, but improvement under load [1] Gu B., Yoon A. S., Bae D.-H., Jo I., Lee J., Yoon J., Kang J.-U., Kwon M., Yoon C., Cho S., Jeong J., Chang D.: Biscuit: A Framework for Near-Data Processing of Big Data Workloads, in Proceedings of 43rd Annual International Symposium on Computer Architecture, ACM/IEEE, 2016
  • 16. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 16 Near-Data Processing Benefits (2) Decreased energy consumption [2] Kim S., Oh H., Park C., Cho S., Lee S.- W.: Fast, Energy Efficient Scan inside Flash Memory SSDs, in Proceedings of 37th International Conference on Very Large Data Bases (VLDB), VLDB Endowment, 2011
  • 17. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 17 In-Memory Near-Data Processing Adding computational capability to DRAM cells Simple logical comparators/operators that could be computed in parallel on individual words Filtering based on bitwise pattern Bitwise operations Making use of the inherent parallelism Avoiding moving unnecessary data out of DRAM Avoiding linear processing of independent words of the data in CPU
  • 18. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 18 Dynamic RAM memory matrix rowdecoder ⁞ controllogic Sense amps ......... address data Y-gating ......... Y RAS CAS WE
  • 19. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 19 Dynamic RAM with NDP memory matrix rowdecoder ⁞ controllogic Sense amps ......... address data Filtering / Computing ......... opcode RAS CAS WE
  • 20. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 20 In-Storage Near-Data Processing Adding computational capability to SSD controllers Again, making use of inherent parallelism of flash memory But SSD controllers also contain powerful embedded cores Flash Translation Layer, garbage collection, wear leveling Thus computation is not limited to simple bitwise filtering and operations Complex trade-offs between computing on the primary CPU and offloading to the SSD controller
  • 21. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 21 Our Prototype Based on OpenSSD http://openssd.io/ Open source (GPL) NVMe SSD controller Hanyang University (Seoul), Embedded and Network Computing Lab FPGA design for Xilinx Xynq-7000 ONFI NAND flash controller with ECC engine PCI-e NVMe host interface with scatter-gather DMA engine Controller firmware ARMv7 Flash Translation Layer, page caching, greedy garbage collection
  • 22. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 22 Our Prototype (2) NVMe NDP extensions NDP module deployment Static native code so far, moving to safe byte-code (eBPF) NDP datasets Safety boundaries for the NDP modules (for multitenancy, etc.) NDP Read / Write Extensions of the standard NVMe Read / Write commands NDP module executed on each block, transforms/filters data NDP Transform Arbitrary data transformations (in-place copying, etc.) Flow-based computational model
  • 23. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 23 Our Prototype (3) Fast prototyping QEMU model of the OpenSSD hardware (for running the OpenSSD firmware on ARMv7) Connected to a second host QEMU/KVM (as a regular PCI-e NVMe storage device) Planned evaluation Real-world application proof-of-concept Custom storage engine for MySQL with operator push-down Ceph operator push-down Key-value store Generic file system acceleration Still a very much work-in-progress Preliminary results quite promising
  • 24. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 24 How Microkernels Fit into this?
  • 25. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 25 Future Vision Not just near-data processing, but data-centric computing As opposed to CPU-centric computing Running the computation dynamically where it is the most efficient Not necessarily moving the data to the central processing unit The CPU is the orchestrator Massively distributed systems Within the box of your machine (desktop, laptop, smartphone) Outside your machine (edge cloud, fog, cloud, data center) Massively heterogeneous systems Different ISAs Fully programmable, partially programmable, fixed-function
  • 26. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 26 Future Vision & Microkernels file system driver server CPU microkernel application application application privileged mode unprivileged mode memory mgmt scheduler IPC naming server location server device driver server device driver server device driver server file system driver server file system driver server device multiplexer file system multiplexer network stack security server ...
  • 27. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 27 Future Vision & Multi-Microkernels file system driver server Primary CPU microkernel distributed application distributed application distributed application privileged mode unprivileged mode memory mgmt scheduler IPC naming server location server device driver server device driver server device driver server file system driver server file system driver server device multiplexer file system multiplexer network stack security server ... SSD CPU NIC CPU GPU microkernelmemory mgmt scheduler IPC microkernelmemory mgmt scheduler IPC microkernelmemory mgmt scheduler IPC ... ... compositor distributed application
  • 28. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 28 Microkernels for Data-Centric Computing Multiserver microkernels Naturally support distribution and heterogeneity IPC is a well-defined mechanism to communicate across isolation boundaries Communicating between multiple (heterogeneous) computing cores is just a different transport Message passing as the least common denominator – But also memory coherency emulation is possible Multiserver designers are used to think in terms of fine-grained components Composing an application from multiple components Missing piece: Framework for automatic workload migration
  • 29. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 29 Microkernels for Data-Centric Computing (2) Why not multikernels? Yes, why not! Many multikernels (i.e. Barrelfish) are essentially microkernels to the extreme Each core running its independent microkernel No memory coherency assumed Why not unikernels? OK, if you insist A microkernel running a single fixed payload (e.g. a virtual machine) could be considered a unikernel
  • 30. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 30 Road Forward As usual, incremental steps Start with just the basic workload off-loading to the SSD, NIC, etc. Gradually transform the run-time for the workload off-loading into a proto-microkernel Consider the dynamic workload migration framework Gradually move to a full-fledged multi-microkernel
  • 31. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 31
  • 32. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 32 Summary There are potential ways of abandoning the von Neumann architecture Revolutionary: Single-level (universal) memory Evolutionary: Near-Data Processing Near-Data Processing is beneficial in terms of performance and energy consumption Data-centric computing leads to massively distributed and heterogeneous systems Multi-microkernels are a natural match for such architectures
  • 33. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 33 Acknowledgements Huawei Technologies in-storage NDP team Antonio Barbalace Martin Decky Anthony Iliopoulos Javier Picorel Dmitry Voytik Hangjun Zhao References & Inspiration Mark Silberstein (Technion) Biscuit framework (Samsung Electronics)
  • 34. Martin Děcký, FOSDEM 2018, February 3rd 2018 Microkernels in the Era of Data-Centric Computing 34 Q&A