Adding Your Own Secret Sauce to SPDK!

Library Content Type:
Publish Date: 
Tuesday, September 25, 2018
Event Name: 
Focus Areas:

As the Storage Performance Development Kit (SPDK) continues to grow in popularity in both open source and proprietary projects in the storage industry, the SPDK Community continues to evolve and our focus areas continue to adapt to community needs. As many are already be aware, SPDK is an open source set of tools and libraries for writing high performance, scalable, user-mode storage applications. It achieves high performance by moving all of the necessary drivers into user space and operating in a polled mode instead of relying on interrupts.

The focus of this talk is on the Block Device Abstraction layer, also known simply as “the bdev layer”. The bdev layer provides a general abstraction for upper layers to interact with any number of lower level IO devices - and of particular interest to those looking to add value to their storage application, also provides a capability known as “The Virtual Bdev”. This talk will explain how virtual bdevs work, how to write one (with lots of example code), provide a few relevant examples, and explain how this capability can help your specific application reap the benefits of SPDK. Find out how to supercharge, add flexibility, and insert functionality for your storage solution with SPDK BDEVs.

Learning Objectives:
1. Provide an introduction to SPDK
2. Understand the nature of the virtual bdev
3. How to get started authoring a virtual bdev