Go to Top

Kingston guest blog: What is Over-Provisioning and how does it benefit a SSD?

To begin with, let’s look at how an SSD works and the limits of non-volatile NAND flash memory, so you can understand why an SSD is configured with over-provisioning and what it does for the SSD controller:

Solid state drives (SSDs) are not often different in size (i.e., height, width, and length) and external interfaces (e.g., SATA or SAS interface) to hard drives (HDDs). But the inner workings of an SSD, its workings and components are significantly different from the rotating magnetic disk design of a HDD.

Each NAND flash cell has a limited lifetime based on the lifetime of its program and erase cycles (P/E). It is determined during manufacturing by the NAND manufacturer, because any program or erase function performed on a NAND flash cell can reduce the ability of the cell to reliably store an electrical charge and thus compromise data integrity.

This is how OP improves the lifespan of a SSD

Each NAND flash memory die consists of several blocks each containing a plurality of pages. NAND Flash is described and read at the page level, but can only be deleted at the block level.

If a single page on a programmed page within a block is to be modified or deleted, first the entire contents of all pages of the block must be copied to a cache and deleted before the new block contents can be programmed to the same block address.

A page can only be written directly to a block in a NAND flash without this lengthy read-modify-write cycle if the page is already empty.

So, if many blocks are empty and over-provisioned, they will contribute to consistent performance, especially in random write scenarios that have the highest Write Amplification Factor (WAF).

Over-Provisioning (OP) in detail

After assembling an SSD, the SSD manufacturer can assign an additional percentage of the total capacity of the memory to over-provisioning (OP) when programming the firmware. Over-provisioning not only improves performance, but often increases the life of an SSD. With more flash NAND space available to the SSD controller and less load on the NAND results to less flash wear over its lifetime, the drive is more durable.

Over-provisioning of 7 percent is often not unusual in SSDs. The figure below shows a breakdown of the amount of physical memory present in an SSD versus the amount of available memory available to the user after over-provisioning.

 

Physical storage User storageOver-Provisioning in %Application class
64 GB60 GB7%Intensive reading
96 GB90 GB7%Intensive reading
128 GB120 GB7%Intensive reading
128 GB100 GB28%Rather write intensive
256 GB240 GB7%Intensive reading
256 GB200 GB28%Rather write intensive
512 GB480 GB7%Intensive reading
512 GB400GB28%Rather write intensive
1024GB960GB7%Intensive reading
1024GB800GB28%Rather write intensive
2048GB1800GB14%Intensive reading
2048GB1600GB28%Rather write intensive

 

Figure: Over-provisioning based on storage capacity and application class

 

The applications, such as typical client workloads, can be read-intensive, in which the user generally uses 20% for writing and 80% for reading. Enterprise applications that use memory for read caching are read-intensive. If these applications were to write more data to memory they would be more write intensive.

 

Over-Provisioning (OP) summerized easily understandable

 

The SSD manufacturer can set up the OP capacity differently depending on the SSD application class and the total capacity of the NAND flash memory.

Higher capacities and drives with different user classes are typically configured with proportionally larger over provisioning. This is due to the resource requirements for managing more NAND Flash and the application of garbage collection, free blocks, and advanced privacy features.

This over-provisioning storage space is inaccessible to the user and is not displayed in the host operating system. It is reserved exclusively for use with the SSD controller.

 

Picture and article copyright: Kingston Technology