YoVDO

coIOMMU - A Virtual IOMMU with Cooperative DMA Buffer Tracking for Efficient Memory Management in Direct I/O

Offered By: USENIX via YouTube

Tags

USENIX Annual Technical Conference Courses Virtualization Courses

Course Description

Overview

Explore a 25-minute conference talk from USENIX ATC '20 that introduces coIOMMU, a novel virtual IOMMU architecture designed for efficient memory management in direct I/O scenarios. Delve into the challenges of static pinning in direct I/O and how coIOMMU addresses them through a cooperative DMA buffer tracking mechanism. Learn about the dedicated interface for hypervisor and guest communication, the shared DMA tracking table (DTT), and techniques like smart pinning and lazy unpinning. Discover how coIOMMU significantly enhances memory management efficiency in various direct I/O use cases with minimal performance impact, while maintaining DMA remapping semantics. Gain insights into the architecture, implementation, and evaluation of this innovative solution that promises to revolutionize memory management in virtualized environments.

Syllabus

Intro
Static Pinning in Direct I/O
The Problem of Static Pinning
Virtual IOMMU (VIOMMU)
The Reality
Motivation
Cooperative DMA Buffer Tracking
colOMMU Architecture
DMA Tracking Table (DTT)
Fine-grained Pinning
Guest Mapping Operations
Lazy Unpinning & Speculative Pinning
DMA Tracking vs. DMA Remapping
Implementation
Evaluation
Performance
Memory Footprint
Memory Overcommitment
DMA Temporal Locality
Future Work
Conclusions


Taught by

USENIX

Related Courses

Amazon DynamoDB - A Scalable, Predictably Performant, and Fully Managed NoSQL Database Service
USENIX via YouTube
Faasm - Lightweight Isolation for Efficient Stateful Serverless Computing
USENIX via YouTube
AC-Key - Adaptive Caching for LSM-based Key-Value Stores
USENIX via YouTube
The Future of the Past - Challenges in Archival Storage
USENIX via YouTube
A Decentralized Blockchain with High Throughput and Fast Confirmation
USENIX via YouTube