Multi-Queue SSD I/O Modeling & Its Implications for Data Structure Design
By: Erin Ransom, Andrew Lim, Michael Mitzenmacher
Potential Business Impact:
Makes computer storage faster by understanding new parts.
Understanding the performance profiles of storage devices and how best to utilize them has always been non-trivial due to factors such as seek times, caching, scheduling, concurrent access, flash wear-out, and garbage collection. However, analytical frameworks that provide simplified abstractions of storage performance can still be accurate enough to evaluate external memory algorithms and data structures at the design stage. For example, the Disk Access Machine (DAM) model assumes that a storage device transfers data in fixed-size blocks of size B and that all transfers have unit latency. This abstraction is already sufficient to explain some of the benefits of data structures such as B-trees and Log-Structured Merge trees (LSM trees); however, storage technology advances have significantly reduced current models' accuracy and utility. This paper introduces the Multi-Queue Solid State Drive (MQSSD) model, a new storage abstraction. This model builds upon previous models and aims to more accurately represent the performance characteristics of modern storage hardware. We identify key performance-critical aspects of modern multi-queue solid-state drives on which we base our model and demonstrate these characteristics on actual hardware. We then show how our model can be applied to LSM-tree-based storage engines to optimize them for modern storage hardware. We highlight that leveraging concurrent access is crucial for fully utilizing the high throughput of multi-queue SSDs, enabling designs that may appear counterintuitive under traditional paradigms We then validate these insights through experiments using Facebook's LSM-tree-based key-value store, RocksDB. We conclude that the MQSSD model offers a more accurate abstraction of modern hardware than previous models, allowing for greater insight and optimization.
Similar Papers
Performance Models for a Two-tiered Storage System
Distributed, Parallel, and Cluster Computing
Makes computers store and find information faster.
Intent-Driven Storage Systems: From Low-Level Tuning to High-Level Understanding
Hardware Architecture
Helps computers store data smarter using AI.
Managing Hybrid Solid-State Drives Using Large Language Models
Hardware Architecture
Makes computer storage faster and hold more data.