Virtio/Vhost Status Quo and Near-term Plan

Slides:



Advertisements
Similar presentations
Device Virtualization Architecture
Advertisements

Virtual Switching Without a Hypervisor for a More Secure Cloud Xin Jin Princeton University Joint work with Eric Keller(UPenn) and Jennifer Rexford(Princeton)
Accelerating Network Intensive Workloads Using the DPDK netdev
Topics Changes Risk Assessments Cloud Data Security / Data Protection Licenses, Copies, Instances Limits of Liability and Indemnification Requests for.
© 2014 Microsoft Corporation. All rights reserved.
Keith Wiles DPACC vNF Overview and Proposed methods Keith Wiles – v0.5.
Accelerating the Path to the Guest
HEVC Commentary and a call for local temporal distortion metrics Mark Buxton - Intel Corporation.
A Move Toward Agile APM: Application Performance Management Frank Ober, Performance Engineer June 2012.
Intel ® Server Platform Transitions Nov / Dec ‘07.
Intel® Education Read With Me Intel Solutions Summit 2015, Dallas, TX.
Yabin Liu Senior Program Manager Business Intelligence and Reporting.
Intel® Education Learning in Context: Science Journal Intel Solutions Summit 2015, Dallas, TX.
Scott Tucker Program Manager Customer and Loyalty.
Evaluation of a DAG with Intel® CnC Mark Hampton Software and Services Group CnC MIT July 27, 2010.
Intel® Education Learning in Context: Concept Mapping Intel Solutions Summit 2015, Dallas, TX.
© 2010 IBM Corporation Plugging the Hypervisor Abstraction Leaks Caused by Virtual Networking Alex Landau, David Hadas, Muli Ben-Yehuda IBM Research –
Enterprise Platforms & Services Division (EPSD) JBOD Update October, 2012 Intel Confidential Copyright © 2012, Intel Corporation. All rights reserved.
IBIS-AMI and Direction Decisions
IBIS-AMI and Direction Indication February 17, 2015 Michael Mirmak.
Recognizing Potential Parallelism Introduction to Parallel Programming Part 1.
The Drive to Improved Performance/watt and Increasing Compute Density Steve Pawlowski Intel Senior Fellow GM, Architecture and Planning CTO, Digital Enterprise.
Boxed Processor Stocking Plans Server & Mobile Q1’08 Product Available through February’08.
Josef Schauer Program Manager Commerce Data Exchange.
INTEL CONFIDENTIAL Intel® Smart Connect Technology Remote Wake with WakeMyPC November 2013 – Revision 1.2 CDI/IBP #:
Copyright ® Intel Corporation All rights reserved. Intel and the Intel logo are trademarks of Intel Corporation in the U.S. and/or other countries.
Only Use FD.io VPP to Achieve high performance service function chaining Yi Intel.
Lecture 15: IO Virtualization
TLDK Transport Layer Development Kit
Virtualization for Cloud Computing
New Approach to OVS Datapath Performance
TLDK overview Konstantin Ananyev 05/08/2016.
Agenda About us Why para-virtualize RDMA Project overview Open issues
Towards a single virtualized data path for VPP
6WIND MWC IPsec Demo Scalable Virtual IPsec Aggregation with DPDK for Road Warriors and Branch Offices Changed original subtitle. Original subtitle:
DPDK API and Virtual Infrastructure
Legal Notices and Disclaimers
BLIS optimized for EPYCTM Processors
Microsoft Dynamics Retail Conference 2014
Next Gen Infrastructure Core (NGIC) Hands-On Demo
Virtio ring and virtio-net
Multi-PCIe socket network device
The Small batch (and Other) solutions in Mantle API
Many-core Software Development Platforms
Networking overview Sujata
Virtio Inline Accelerator
Get the best out of VPP and inter-VM communications.
A Proposed New Standard: Common Privacy Vulnerability Scoring System (CPVSS) Jonathan Fox, Privacy Office/PDIT Harold A. Toomey, PSG/ISecG Jason M. Fung,
CS 258 Reading Assignment 4 Discussion Exploiting Two-Case Delivery for Fast Protected Messages Bill Kramer February 13, 2002 #
Virtio Keith Wiles July 11, 2016.
Xen Network I/O Performance Analysis and Opportunities for Improvement
vDPA for Vhost Acceleration
DPDK Accelerated Load Balancer
Open vSwitch HW offload over DPDK
12/26/2018 5:07 AM Leap forward with fast, agile & trusted solutions from Intel & Microsoft* Eman Yarlagadda (for Christine McMonigal) Hybrid Cloud – Product.
Ideas for adding FPGA Accelerators to DPDK
Accelerate Vhost with vDPA
Enabling TSO in OvS-DPDK
By Vipin Varghese Application Engineer (NCSD)
Building continuously available systems with Hyper-V
IBM Global Technology Services
A Scalable Approach to Virtual Switching
Fast Userspace OVS with AF_XDP
Expanded CPU resource pool with
Monitor VMware with SC2012 SP1 Operation Manager & Veeam Microsoft Tools for VMware Integration & Migration Symon Perriman Michael Stafford Senior.
Microsoft Virtual Academy
Microsoft Virtual Academy
Interrupt Message Store
Figure 3-2 VIM-NFVI acceleration management architecture
Openstack Summit November 2017
Presentation transcript:

Virtio/Vhost Status Quo and Near-term Plan Zhihong Wang <zhihong.wang@intel.com> Jianfeng Tan <jianfeng.tan@intel.com>

Legal Disclaimers No license (express or implied, by estoppel or otherwise) to any intellectual property rights is granted by this document. Intel disclaims all express and implied warranties, including without limitation, the implied warranties of merchantability, fitness for a particular purpose, and non-infringement, as well as any warranty arising from course of performance, course of dealing, or usage in trade. This document contains information on products, services and/or processes in development. All information provided here is subject to change without notice. Contact your Intel representative to obtain the latest forecast, schedule, specifications and roadmaps. Intel technologies’ features and benefits depend on system configuration and may require enabled hardware, software or service activation. Performance varies depending on system configuration. No computer system can be absolutely secure. Check with your system manufacturer or retailer or learn more at intel.com. © 2018 Intel Corporation. Intel, the Intel logo, Intel. Experience What’s Inside, and the Intel. Experience What’s Inside logo are trademarks of Intel. Corporation in the U.S. and/or other countries. *Other names and brands may be claimed as the property of others.

Agenda Performance Efficiency Scalability Diversity Packed ring layout (Virtio 1.1) Dequeue zero-copy (BKC[1]) Efficiency Vhost interrupt Avoid memory pre-allocate (BKC) Scalability Vhost-pci / Virtio-vhost-user Diversity Vhost Data Path Acceleration Cross backend live migration (How-to) Availability (HA[2]) Virtio-user server mode Run-time memory provisioning [1] BKC: Best known configuration [2] HA: High availability

Packed ring layout (Virtio 1.1) Motivation Higher ring efficiency More hardware friendly Solution Ring layout evolution <TODO> Spec freeze (Target Mar 2018) Upstream DPDK (Target 18.05) Kernel QEMU Optimization Initial code 12% gain, optimization in plan Reference: http://dpdk.org/ml/archives/dev/2018-January/089417.html

Dequeue zero-copy (BKC) Motivation Improve performance for large packets Gaps Hard to enable due to lack of BKC BKC Set large enough virtio ring size > tx_free_thresh * tx_queue_num Prefer hugepages for performance: 1GB better than 2MB <TODO> Lock the guest memory to avoid DMAR fault (Target 18.05)

Vhost interrupt Motivation Solution <TODO> Avoid empty polling for low traffic ports for power & performance Solution Leverage interrupt mechanism <TODO> Support vhost interrupt (Target 18.05) Even 250 VMs in real world deployments ~60 cycles per empty poll

Avoid memory pre-allocate (BKC) Motivation Better memory utilization BKC No mandatory memory population in vhost-user lib (Target 18.05) No -mem-prealloc in QEMU command line No mlockall in vSwitch

Vhost-pci / Virtio-vhost-user Motivation Accelerate Inter VM communication Solution Peer to peer virtio/vhost Better resource efficiency and scalability Lower latency <TODO> Vhost-pci RFC (Stopped) http://dpdk.org/ml/archives/dev/2017-November/082615.html http://lists.nongnu.org/archive/html/qemu-devel/2017-12/msg00494.html Virtio-vhost-user (New direction) http://dpdk.org/ml/archives/dev/2018-January/088155.html https://stefanha.github.io/virtio/vhost-user-slave.html#x1-2830007 Peer to peer Centralized

Vhost Data Path Acceleration Motivation High performance + Cloud friendly Gaps SR-IOV: High performance, vender specific, live-migration unfriendly Virtio: Stock VM support, live-migration friendly, low performance Solution Virtio (Para-virtualization) with data path acceleration <TODO> Vhost-user lib support selective datapath (Target 18.05) A Better Virtio towards NFV Cloud – 2017 China DPDK Summit

Cross backend live migration (How-to) Motivation Enable the migration from kernel vSwitch to user space vSwitchs How-to Ensure feature parity (Done in 18.02) Use object QEMU RAM Adapt OpenStack/libvirt to different command lines VM 1.1.1.2/24 VM’ 1.1.1.2/24 vSwitch Live migration virtio virtio vhost-user DPDK0 vhost ko tap Destination VM: $(QEMU) ... -m 8G -numa node,memdev=mem \ -object memory-backend-file,id=mem,size=8G, \ mem-path=/path/to/tmpfs_or_ramfs_or_hugetlbfs,share=on \ -chardev socket,id=char0,path=/tmp/sock0 \ -netdev type=vhost-user,id=mynet1,chardev=char0,vhostforce \ -device virtio-net-pci,netdev=mynet1 \ -incoming tcp:0:4444 ... vSwitch eth0 Source VM: $(QEMU) ... -m 8G -numa node,memdev=mem \ -object memory-backend-file,id=mem,size=8G, \ mem-path=/path/to/tmpfs_or_ramfs_or_hugetlbfs,share=on \ -netdev tap,id=mynet1,vhost=on \ -device virtio-net-pci,netdev=mynet1 ... NIC NIC vhost-kernel vhost-user

Virtio-user server mode Motivation Enable reconnect for containers on both ends Solution Server mode for virtio-user just like in QEMU (Target 18.05) vSwitch reboot: vSwitch to reconnect VNF reboot: Vhost-user thread keep trying to reconnect Container virtio-user vhost-user vSwitch

Run-time memory provisioning Motivation Support run-time memory provisioning Gaps Lack of protection for active rings for memory region change (Fixed in 18.02) Reference: https://github.com/qemu/qemu/blob/master/docs/memory-hotplug.txt

Questions?