Skip to download

hesela.dev

Storage glossary · datasets · llms.txt · hesela.com

Analytical reproduction / no device measurements

SSD over-provisioning: analytical model values

Seven computed reserve-to-write-amplification cases with explicit logical and physical capacity denominators. Analytical model evaluation, not SSD measurements.

Download CSV7 rows / 6 columns

JSON and provenance / Evaluator code / Research explanation

Method

Evaluate Xiang and Kurkoski arXiv:1110.4245v1 equation 12 by solving A*log(1-1/A)+(1+rho)=0 for finite A>1. Bisection uses log1p, an expanding upper bracket and at most 100 steps, stopping at floating-point resolution. rho=(P-L)/L; supported domain 0.01 to 1. Capacity units are identical. No random sampling or device I/O.

Computed values; percentages label their own denominator. Display rounding only.
Reserve / logicalReserve / physicalWrite amplificationVictim pages reclaimed
7%6.54%7.81712.79%
10%9.09%5.67717.61%
20%16.67%3.18831.37%
25%20.00%2.69337.14%
30%23.08%2.36442.30%
50%33.33%1.71658.28%
100%50.00%1.25579.68%

Interpretation

A 20% physical-capacity reserve is a 25% logical-capacity reserve. WAF is physical page writes per host page write in the stated model. It is not IOPS, bytes per second, a guarantee, or a recommendation to change a drive's capacity.

Reproduce

The linked module prints the exact CSV with Node.js and no external packages. Provenance JSON records SHA-256 hashes of code and CSV. This command performs no drive I/O:

node --input-type=module -e 'import { toCsv } from "./ssd-overprovisioning.mjs"; process.stdout.write(toCsv())'

Limits

Column definitions

opUserPercent
100*(P-L)/L; reserve divided by logical capacity.
sparePhysicalPercent
100*(P-L)/P; the same reserve divided by physical capacity.
physicalPerLogical
P/L = 1 + rho; dimensionless.
waf
Model physical page writes per host page write; dimensionless, not measured.
reclaimedFraction
Fraction q of victim pages freed for new host writes; 1/waf.
validFraction
Fraction of victim pages relocated; 1-q.

Sources and license

CC0-1.0 for Hesela's original implementation and computed rows; source papers retain their rights.

  1. Luojie Xiang and Brian M. Kurkoski. An Improved Analytic Expression for Write Amplification in NAND Flash. arXiv:1110.4245v1 (19 October 2011), sections II-IV, equation 12 and Table I.
  2. Peter Desnoyers. Analytic Modeling of SSD Write Performance. SYSTOR 2012, sections 2-6, Tables 1-2. DOI: 10.1145/2367589.2367603.

Corpus: over-provisioning, greedy garbage collection and hot/cold data separation.