[SOLVED] Samsung Magician "over provisioning"

fzabkar

Illustrious
BANNED
I'm a little confused as to how Samsung defines "over provisioning".

According to Samsung Magician ...

Over Provisioning - Allocates a certain capacity of the SSD to an available space to improve the performance and lifetime of the SSD.

AIUI, a 1TB (= 931GiB) drive created from 1TiB of NAND flash is inherently overprovisioned by 7% 9%.This area is unavailable to the user and is used exclusively by the firmware.

EDIT: That should be 9%, not 7%.

  • (1TiB - 1TB) / 1TiB x 100 = 9%
However, Samsung Magician allows the user to "over provision" their SSD, with the default OP space being 10%. After allowing Samsung Magician to do its thing, the OP space changes from 0 to 10%, not 9% to 19%.

Code:
OP Setting for C:

Disk 1 | Total Capacity 931GB

OP Setting Partition    Over Provisioning (Unallocated)
C:Boot_Disc             OP
838GB NTFS              93GB Unallocated

The result of the procedure is that the original 1TB NTFS partition is shrunk to 838GiB, and the NTFS metadata adjusted accordingly. The OP area is now reported as an unallocated space of 93GiB.

I presume that the reference to "an available space" is actually an error and is meant to be "unavailable space". This is where it becomes confusing for me. AISI, this OP space is still available to the user, however it is unallocated. That's not the same thing. I was expecting that Samsung's tool would shrink the reported capacity of the drive to 900GB and hide the additional OP space from the OS, just as it hides the initial 9% of OP space.

So how does this "logical" overprovisioning work? Is the additional OP space simply TRIM-ed, and is the drive's firmware then free to do anything it likes with these blocks?
 
Last edited:
Solution
There's several types of OP and I think I understand your question. One, as you acknowledge, is physical and marketed OP, reserved space you cannot change - physical is going from base-2 to base-10 while marketed is additional space the manufacturer may cordon off. One type is limiting through partitioning, that is unallocating space but the OS can still see all of it. There's also a method of limiting specific applications to a given LBA range. The type that "hides" the unallocated space is when you limit the maximum LBA so it appears as a lower-capacity drive to the OS. That last method is typically for datacenter/enterprise drives with specific firmware.

Space beyond the physical/marketed OP, which includes unallocated space...
AFAIK, that just displays to the user an available space. An SSD needs free space for TRIM to do its thing.
A clueless or unknowing user might fill up the available space, leaving nothing for the drive to work with.
If, instead, you present the user with a slightly smaller space, they might fill THAT, and still leave some free for the firmware to work with TRIM.

I don't think they wall off certain cells or blocks in the OP space...just that it is not available for the OS and the user, no matter what they want to do.

Of course, I could be wrong, and welcome any clarification.
 
I don't think they wall off certain cells or blocks in the OP space...just that it is not available for the OS and the user, no matter what they want to do.
The difference is that I can defeat this additional 10% "overprovisioning" simply by creating a new partition in this unallocated space, whereas the original 9% of OP space (not 7% as I stated before my recent edit) cannot be touched. Therefore ISTM that the term "overprovisioning" is either a misnomer, or is at least ambiguous in this context.
 
Last edited:
Last edited:
There's several types of OP and I think I understand your question. One, as you acknowledge, is physical and marketed OP, reserved space you cannot change - physical is going from base-2 to base-10 while marketed is additional space the manufacturer may cordon off. One type is limiting through partitioning, that is unallocating space but the OS can still see all of it. There's also a method of limiting specific applications to a given LBA range. The type that "hides" the unallocated space is when you limit the maximum LBA so it appears as a lower-capacity drive to the OS. That last method is typically for datacenter/enterprise drives with specific firmware.

Space beyond the physical/marketed OP, which includes unallocated space, utilizes dynamic overprovisioning. Most typically people would leave some space unpartitioned/unallocated to serve as additional overprovisioning, however that is still dynamic OP, and on modern controllers the GC and TRIM are aggressive enough that any free space could fall under that category, certainly with consumer usage. While all flash and OP is logically addressed with some exceptions (static SLC), I wouldn't call physical and dynamic OP equivalent either because the user and OS is still aware of this space. However, a modern consumer drive generally has dynamic SLC and wear-leveling algorithms such that effectively leaving space free will reduce write amplification and improve write performance.
 
Solution

TRENDING THREADS