Extending and Programming the NVMe I/O Determinism Interface for Flash Arrays
dc.contributor.author | Li, Huaicheng | en |
dc.contributor.author | Putra, Martin | en |
dc.contributor.author | Shi, Ronald | en |
dc.contributor.author | Kurnia, Fadhil | en |
dc.contributor.author | Lin, Xing | en |
dc.contributor.author | Do, Jaeyoung | en |
dc.contributor.author | Kistijantoro, Achmad | en |
dc.contributor.author | Ganger, Gregory | en |
dc.contributor.author | Gunawi, Haryadi | en |
dc.date.accessioned | 2023-03-01T13:32:13Z | en |
dc.date.available | 2023-03-01T13:32:13Z | en |
dc.date.issued | 2023-01-11 | en |
dc.date.updated | 2023-03-01T01:40:50Z | en |
dc.description.abstract | Predictable latency on flash storage is a long-pursuit goal, yet unpredictability stays due to the unavoidable disturbance from many well-known SSD internal activities. To combat this issue, the recent NVMe IO Determinism (IOD) interface advocates host-level controls to SSD internal management tasks. Although promising, challenges remain on how to exploit it for truly predictable performance. We present IODA,1 an I/O deterministic flash array design built on top of small but powerful extensions to the IOD interface for easy deployment. IODA exploits data redundancy in the context of IOD for a strong latency predictability contract. In IODA, SSDs are expected to quickly fail an I/O on purpose to allow predictable I/Os through proactive data reconstruction. In the case of concurrent internal operations, IODA introduces busy remaining time exposure and predictable-latency-window formulation to guarantee predictable data reconstructions. Overall, IODA only adds five new fields to the NVMe interface and a small modification in the flash firmware while keeping most of the complexity in the host OS. Our evaluation shows that IODA improves the 95–99.99th latencies by up to 75×. IODA is also the nearest to the ideal, no disturbance case compared to seven state-of-the-art preemption, suspension, GC coordination, partitioning, tiny-tail flash controller, prediction, and proactive approaches. | en |
dc.description.version | Published version | en |
dc.format.extent | Pages 1-33 | en |
dc.format.mimetype | application/pdf | en |
dc.identifier.doi | https://doi.org/10.1145/3568427 | en |
dc.identifier.eissn | 1553-3093 | en |
dc.identifier.issn | 1553-3077 | en |
dc.identifier.issue | 1 | en |
dc.identifier.orcid | Li, Huaicheng [0000-0002-3155-0203] | en |
dc.identifier.uri | http://hdl.handle.net/10919/114012 | en |
dc.identifier.volume | 19 | en |
dc.language.iso | en | en |
dc.publisher | ACM | en |
dc.rights | In Copyright | en |
dc.rights.uri | http://rightsstatements.org/vocab/InC/1.0/ | en |
dc.subject | Software/hardware co-design | en |
dc.subject | predictable latency | en |
dc.subject | SSD | en |
dc.title | Extending and Programming the NVMe I/O Determinism Interface for Flash Arrays | en |
dc.title.serial | ACM Transactions on Storage | en |
dc.type | Article - Refereed | en |
dc.type.dcmitype | Text | en |
dc.type.other | Article | en |
pubs.organisational-group | /Virginia Tech | en |
pubs.organisational-group | /Virginia Tech/Engineering | en |
pubs.organisational-group | /Virginia Tech/Engineering/Computer Science | en |
pubs.organisational-group | /Virginia Tech/All T&R Faculty | en |
pubs.organisational-group | /Virginia Tech/Engineering/COE T&R Faculty | en |
Files
Original bundle
1 - 1 of 1
Loading...
- Name:
- ioda-tos.pdf
- Size:
- 1.64 MB
- Format:
- Adobe Portable Document Format
- Description:
- Published version