Turning a cloud of erase counts into a single, comparable number.
"The wear is more even" is a claim you need to measure. Given the erase count of every
block, how do you summarize how balanced (or lopsided) the wear is? EyanaSSDSim uses several
complementary metrics.
Coefficient of Variation (CV)
CV = standard deviation of erase counts / mean erase count
CV is the spread relative to the average. CV = 0 means perfectly even wear (every block erased the same number of times). Higher CV = more lopsided. Because it's normalized by the mean, you can compare CV across drives of different ages.
Gini coefficient
Borrowed from economics (where it measures income inequality), the Gini coefficient ranges
from 0 (perfect equality — all blocks worn equally) to 1 (total inequality — one block does all the
work). It's robust and intuitive: a Gini of 0.1 is very even; 0.6 is badly skewed.
The further the red curve bows from the diagonal, the more unevenly the erases are distributed.
Fourier / spatial spread
CV and Gini tell you how much wear varies, but not where. Two drives can share a CV
yet wear very differently in space — one with a few scattered hot blocks, another with a whole hot
region. A Fourier analysis of the erase-count map captures this spatial structure: it reveals
periodic or clustered wear patterns that a single spread number would miss.
Analogy. CV and Gini are like reporting a city's income inequality. Fourier is like the map of where the rich and poor neighborhoods actually are — same inequality number, very different city layouts.
In the EyanaSSDSim paper & simulator. The paper reports Degree of Erase-Count balance via CV and Gini, plus a Fourier amplitude spread, to argue that a chosen allocation scheme spreads wear both evenly (low CV/Gini) and without spatial hot-spots (low Fourier spread). The Live Simulator shows the CV curve in real time.