-
Welcome
-
Subscribe to
Support for open-channel SSDs and flash-agnostic APIs
This proposal has been accepted as a session.
One Line Summary
Integration of flash-agnostic APIs (e.g., Key-value store, Object store, Atomic-IOs, etc.) with open-channel SSDs- status and discussion
Abstract
SSDs with intelligent host-side device drivers have been available for many years (e.g., FusionIO, Virident, Violin Memory). These device drivers offload placement of data to the host system. By moving flash management logic to the host, the design space for alternative storage interfaces that go beyond the traditional block device interface opens up. Examples of these interfaces include flash-optimized file-systems, key-value stores, and atomic IO accesses. Furthermore, block allocation and data placement policies could become pluggable, allowing end-users to select the best strategy for their workload.
Host-side SSD management is a great advantage for vendors implementing their own specialized APIs. However, it is not possible to leverage the alternative storage interfaces we mentioned before in a generic way. By having an open implementation that can be used by multiple SSD vendors, a generic, well-maintained infrastructure can be built. This infrastructure is paired with a new type of open-channel SSDs. These devices expose specific “open-channel” features, such as direct access to read/write/erase of flash pages and discovery of device configuration. Such an infrastructure enables: (I) higher performance than block-based SSDs, (II) more predictability in regards to latency and throughput, and (III) managing multiple SSDs (i.e. their flash) as a single pool.
In this context, we develop LightNVM, a host-side driver for open-channel SSDs. It implements logic, such as flash block management, data placement, bad block management, etc., for a single- or a pool of SSDs. It currently integrates with device drivers that support blk-mq and enables management of them from the host-side.The goal with LightNVM is to create a standard for host-managed SSDs that will make it easy to plug into the Linux ecosystem, and to provide an implementation for it.
We would like to discuss current and future design decisions and how the key-value/object-store/atomic IO/etc. APIs can be integrated into file-systems, such as Ceph, GlusterFS, F2FS; as well as database systems, such as MySQL-based, LevelDB, and others.
RFC patch has been posted here:
https://lkml.org/lkml/2014/10/8/414
Tags
kernel, SSD, open-channel, ceph, glusterfs, f2fs, dbms
Presentation Materials
slidesSpeakers
-
Matias Bjørling
IT University of CopenhagenBiography
Matias Bjørling is a Ph.D candidate at IT University of Copenhagen. He has a great interest in high-performance storage, network systems and databases.
Previously worked on performance characterization of flash-based SSDs, operating- and database-systems cross-layer optimizations, and the multi-queue block layer for the Linux kernel.
Spends his time implementing a host-side flash translation layer for open-channel SSDs.
Sessions
-
- Title: Support for open-channel SSDs and flash-agnostic APIs
- Microconference: File and Storage Systems
- Time: 2:15pm
-
One Line Summary:
Integration of flash-agnostic APIs (e.g., Key-value store, Object store, Atomic-IOs, etc.) with open-channel SSDs- status and discussion
- slides
- Speakers: Matias Bjørling, Jesper Madsen, Javier Gonzalez
-
-
Javier Gonzalez
IT Univeristy of Copenhagen- Website: http://www.javigon.com/
- Twitter: javigonnapster
Biography
I am a PhD student inside the Software and Systems Section at the IT University of Copenhagen, and Run-Time Security consultant at Xilinx. My research focuses on building system support for enforcing usage policies as a form of providing run-time security. I want to contribute designing and building technologies that make it easier for users to protect their privacy when they interact with digital services. I am also interested in storage systems, and hardware that can bridge security and performance.
I have worked extensively with ARM TrustZone, ARM processors, and the Zynq-7000 (Xilinx). In the last months I have spent time in building a generic TrustZone interface for the Linux Kernel. Here, I am looking for feedback to push it upstream.
Sessions
-
- Title: Generic Support for ARM TrustZone
- Microconference: BoF Track
- Room: Room 26
- Time: 4:30pm
-
One Line Summary:
Given the the momentum that TrustZone is having in the open source community, it is time to bring generic support to the Linux Kernel.
- slides
- Speakers: Javier Gonzalez
-
- Title: Support for open-channel SSDs and flash-agnostic APIs
- Microconference: File and Storage Systems
- Time: 2:15pm
-
One Line Summary:
Integration of flash-agnostic APIs (e.g., Key-value store, Object store, Atomic-IOs, etc.) with open-channel SSDs- status and discussion
- slides
- Speakers: Matias Bjørling, Jesper Madsen, Javier Gonzalez
-
Jesper Madsen
IT University of CopenhagenBiography
Jesper Madsen is a research assistant at IT University of Copenhagen. An avid Linux enthusiast and user, he is currently working on a host-side flash translation layer for open firmware SSDs.
Sessions
-
- Title: Support for open-channel SSDs and flash-agnostic APIs
- Microconference: File and Storage Systems
- Time: 2:15pm
-
One Line Summary:
Integration of flash-agnostic APIs (e.g., Key-value store, Object store, Atomic-IOs, etc.) with open-channel SSDs- status and discussion
- slides
- Speakers: Matias Bjørling, Jesper Madsen, Javier Gonzalez
-