Overview
Explore the challenges and complexities of the RDMA (Remote Direct Memory Access) subsystem in Linux in this comprehensive conference talk from the Linux Plumbers Conference. Gain insights into RDMA technology, its expanding use beyond traditional HPC applications, and the resulting demands for new kernel interactions. Delve into topics such as the complex user API, DMA from user space programming model, user space and kernel driver development, security delegation to hardware, and interactions with file systems. Examine the growing overlap with other networking functionalities, fragmentation of wire protocols, and the impact of prioritizing high performance on hardware design. Learn valuable lessons applicable to emerging drivers for new general computation acceleration hardware. Benefit from the speaker's extensive experience in Linux kernel development and RDMA technologies to better understand RDMA's role in kernel decision-making processes.
Syllabus
What is RDMA
Elevator Pitch
Why does it exist?
Use Case Examples
Broad Elements
Not so Unique Anymore
Challenge: What is ROMA
Challenge: User/Kernel ABI
ABI: Toolbox vs midlayer
Challenge: Security
What's in a driver anyhow?
Containers
Challenge: DMA from user-space
DMA between other devices
Challenge: Overlap with netdev
DPDK and RDMA
Taught by
Linux Plumbers Conference