Vision and Goal
CLyDE (2011-2015) was a project funded by the Danish Council for Independent ResearchıTechnology and Production Sciences. CLyDE was a collaboration between IT University of Copenhagen and the SMIS project at INRIA. The goal of the project was to address the challenges caused by the advent of flash devices as replacement for hard disks as secondary storage of choice for data intensive systems. In the application, we define the following goal:
Our goal is to explore how database systems can collaborate with the software embedded in flash devices, through so-called cross-layer optimisations, in order to improve overall performance. Our approach is based on the insight that flash devices can be programmed to provide predictable, high performance as long as the database system respects a set of well-defined constraints
The premise of the CLyDE project was that the strict layering that has been so successful for designing database systems on top of magnetic disks is no longer applicable with SSDs based on existing observation that SSD performance varies a lot and in unpredictable ways. What was a slightly unconventional take on SSD performance characterisation has now become an accepted view in the storage industry.
CLyDe’s main achievements are the following:
- Matias Bjørling and Niv Dayan defended their PhDs in August 2015. Matias’ thesis is titled “Operating System Support for High-Performance Solid State Drives”. Niv’s thesis is titled “Modelling and Managing SSD Write Amplification”. After graduation, Matias joined CNEX Labs as Linux kernel developer and Niv joined the Data Systems Lab at Harvard University as a postdoc.
- Matias made two significant contributions to the Linux kernel in the context of CLyDe. First, he contributed in 2013, together with Jens Axboe, to the Multi-queue Block Layer. Second, he proposed in 2015 to incorporate support for open channel SSDs in the Linux kernel. This framework for host-based SSD programming is being integrated upstream. Matias work on the Multi-queue Block Layer is described in a paper published at Systor in 2013. His work on Open Channel SSDs is being described in a new paper.
- Matias Bjørling’s work on open channel SSDs is having a significant impact on the storage industry. A range of vendors are implementing support for open channel SSDs. Support for key-value stores and database systems is under development. Most of these efforts are open source and available on github.
- Niv Dayan developed a simulator to study the design space and experimenting with cross layer design involving the software embedded on a flash device (the so-called Flash Translation Layer). The simulator is called EagleTree. It is available on GitHub. It was described in a demo paper, presented at VLDB in 2013.
- The IT University of Copenhagen has joined the RapidIO industry consortium and contributes.RapidIO focuses on the convergence of networking and storage technologies. ITU contributes to the storage group together with IIT Madras and a range of companies.
- AppNVM: Software-Defined, Application-Driven SSD
M Bjørling, M Wei, J Madsen, J González, S Swanson, P Bonnet
Non Volatile Memory Workshop, 2015
- Linux Kernel Abstractions for Open-Channel Solid State Drives
M Bjørling, J Madsen, J González, P Bonnet
Non Volatile Memory Workshop, 2015
- Garbage Collection Techniques for Flash-Resident Page-Mapping FTLs
N Dayan, P BonnetarXiv preprint arXiv:1504.01666
- Modelling and Managing SSD Write-amplification
N Dayan, L Bouganim, P BonnetarXiv preprint arXiv:1504.00229
- I/O speculation for the microsecond era
M Wei, M Bjørling, P Bonnet, S SwansonProceedings of the USENIX conference on USENIX Annual Technical Conference, 201
- Linux block IO: introducing multi-queue SSD access on multi-core systems
M Bjørling, J Axboe, D Nellans, P Bonnet
Proceedings of the 6th International Systems and Storage Conference, 2013
- The necessary death of the block device interface
M Bjørling, P Bonnet, L Bouganim, N DayanProceedings of the 6th Biennial Conference on Data Systems Research, 2013
- EagleTree: exploring the design space of SSD-based algorithms
N Dayan, MK Svendsen, M Bjørling, P Bonnet, L BouganimProceedings of the VLDB Endowment 6 (12), 2013
- LightNVM: Lightning Fast Evaluation Platform for Non-Volatile Memories
M Bjørling, J Madsen, P Bonnet, A Zuck, Z Bandic, Q Wang
Non Volatile Memory Workshop, 2013
- CLyDE Mid-Flight: What We have Learnt about the SSD-Based I/O Stack.
Presented at EPFL, INRIA Montpellier, Spring 2014 (CLyDE-EPFL14)
- Host-SSD Co-Design: Lessons Learnt and Perspectives
Presented at 1st EMC Flash University Forum, Fall 2014 (EMC-flashuni14)
- CLyDE Project: Lessons Learnt and Perspectives
Presented to the board of the Technology and Production Sciences Committee of the Danish Independent Research Council, October 2014 (CLyDE-FTP)