Despite flash memory’s promise, it suffers from many
idiosyncrasies such as limited durability, data integrity problems, and
asymmetry in operation granularity. As architects, we aim to find ways to
overcome these idiosyncrasies while exploiting flash memory’s useful
characteristics. To be successful, we must understand the trade-offs between
the performance, cost (in both power and dollars), and reliability of flash
memory. In addition, we must understand how different usage patterns affect
these characteristics. Flash manufacturers provide only vague guidelines about
these metrics, and this lack of detail makes it difficult to design systems
that fully exploit flash memory’s capabilities. We have empirically
characterized flash memory technology from five manufacturers by directly
measuring the performance, power, and reliability. We demonstrate that
performance varies significantly between vendors, devices, and from the
data-sheet. We also demonstrate and quantify some unexpected device
characteristics and show how we can use them to improve responsiveness and
energy consumption of solid state disks by 44\% and 13\%, respectively, as well
as increase flash device lifetime by 5.2x.
Pre-2018 CSE ID: CS2009-0946