HyperTracing Tracing Through Virtualization Layers Abderrahmane - - PowerPoint PPT Presentation

hypertracing
SMART_READER_LITE
LIVE PREVIEW

HyperTracing Tracing Through Virtualization Layers Abderrahmane - - PowerPoint PPT Presentation

HyperTracing Tracing Through Virtualization Layers Abderrahmane Benbachir Linux Plumbers Conference, September, 2017 cole Polytechnique de Montral Laboratoire DORSAL What is hypertracing? Hy Hypertra racing cing = Offloading traces from


slide-1
SLIDE 1

HyperTracing

Tracing Through Virtualization Layers

Abderrahmane Benbachir

Linux Plumbers Conference, September, 2017 École Polytechnique de Montréal Laboratoire DORSAL

slide-2
SLIDE 2

What is hypertracing?

Hy Hypertra racing cing = Offloading traces from virtual machine to host

POLYTECHNIQUE MONTREAL – Abderrahmane Benbachir (Abder)

Host

Qemu

Virtual Machine L0 L1

Guest kernel

App Hypervisor

tracer

App

probes

  • ffloader

Qemu

Nested Virtual Machine

Guest kernel

App

probes

L2

probes buffer

async sync

tracer tracer

Trace Synchronization

data data data

slide-3
SLIDE 3

Communication Channels

POLYTECHNIQUE MONTREAL – Abderrahmane Benbachir (Abder)

Hypercall Socket (Virtio-serial) Shared Memory Network TCP/IP

Host

Qemu

Virtual Machine

kernel

tracer

  • ffloader

probes buffer

async sync

data

consumer

How to do hypertracing ?

slide-4
SLIDE 4

Hypertracing With Hypercall

POLYTECHNIQUE MONTREAL – Abderrahmane Benbachir (Abder)

slide-5
SLIDE 5

Nested Virtualization

POLYTECHNIQUE MONTREAL – Abderrahmane Benbachir (Abder)

Hardware Host Hypervisor

Qemu (not involved)

VM #1 VM #2 VM #3 VM #n-1 ... VM #n ... ... Single level Two levels Three levels L0 L1 L2 L3 Ln-1 Ln Remove Exit Multiplication

Patch

slide-6
SLIDE 6

Micro-Benchmarks

Hypercall Overhead

POLYTECHNIQUE MONTREAL – Abderrahmane Benbachir (Abder)

Exit-handling code in the hypervisor is slower when run in L1 or L2 than the same code running in L0 Transition between L1, L2, ... Ln involve an exit to L0 and then an entry.

Hardware : Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz (x86_64) EPT-on-EPT-on-EPT x33 x33

[+ patch] [+ patch]

slide-7
SLIDE 7

Demo Hypergraph

POLYTECHNIQUE MONTREAL – Abderrahmane Benbachir (Abder)

slide-8
SLIDE 8

Feedbacks & Questions

abderrahmane.benbachir@polymtl.ca https://github.com/abenbachir

POLYTECHNIQUE MONTREAL – Abderrahmane Benbachir (Abder)