Inside each SSD is a reserved section of storage that the controller can use for management and performance optimisation. It is also used for wear levelling, and accounts for the difference between the estimated and actual figures we saw in the previous post. We can estimate how large this space is from the measurements we taken so far, but first we need to know exactly how large the user area of the disk is. SMART helps with this by reporting 'User Capacity':
Device Model: Samsung SSD 850 PRO 1TB Firmware Version: EXM01B6Q User Capacity: 1,024,209,543,168 bytes [1.02 TB] Sector Size: 512 bytes logical/physical ATA Version is: 8 ATA Standard is: ATA-8-ACS revision 4c
Previously, we saw that writing 179.91TiB of data led to an increase in wear levelling count of 182. From this, we can calculate that each increment in the count is equivalent to:
179.91TiB / 182 = 0.9885TiB = 1086885367874 bytes.
Subtracting the user capacity, we get:
(1086885367874 - 1024209543168) / (1024 * 1024 * 1024) = 58.4GiB.
Working this out as a proportion of the overall disk capacity:
(58.4GiB / 1086885367874) * 100 = 5.77%.
That's a reasonable amount of space to set aside, and helps ensure that the disk runs efficiently, but according to Samsung does not include any room for over-provisioning - the user should allocate additional space for this.