flashblox · research

FlashBlox

FlashBlox is a research SSD virtualization design that assigns channels or dies to tenants and periodically migrates data to balance wear.

Channel isolation reserves transfer paths; die isolation still shares a channel bus. Soft-planes are software regions striped across physical planes, not independent NAND planes. [1]

Wear balancing swaps heavily worn resources with low-wear-rate ones. Requests to the erase-blocks being swapped wait; other blocks remain serviceable. The API requires log compaction aligned with the virtual SSD's erase granularity, and tenants cannot borrow one another's pre-erased blocks. [1]

Evidence boundary: the 2017 prototype's migration measurements are distinct from its simulated lifetime results. The reported 95% of ideal lifetime is a model result, not observed fleet survival or a guarantee against arbitrary changing adversarial traffic. [1]

Relations

related
Open-channel SSD, NAND channel, NAND plane, Wear leveling, Inter-flow interference, Slowdown fairness

Limitations

  • Physical partitioning does not remove migration pauses or every device-wide shared resource. [1]

Citations

  1. Huang et al. FlashBlox: Achieving Both Performance Isolation and Uniform Lifetime for Virtualized SSDs. FAST 2017, sections 2-4. (accessed 2026-11-10)

Further reading

  1. Hesela: FlashBlox, isolation and its migration window (accessed 2026-11-10)
Sources & caveats
  • Full primary-paper review, including the adversarial-workload caveat in section 3.1.4 footnote 2. No FlashBlox execution, performance replication or device-lifetime measurement.

JSON: /data/terms/flashblox.json

Published by Hesela team · Updated

Report a correction · Editorial standards · Reuse guidance

Cite this page
Hesela team. FlashBlox. Hesela. 2026-11-10. https://hesela.dev/terms/flashblox/