ウェアレベリング(Wear Leveling:摩耗平準化)とは、フラッシュメモリの書き換えが一部のブロックに集中しないように、書き込む場所を全体に散らして、すべてのブロックが同じペースで劣化するようにする技術です。NANDフラッシュのセルは書き換えのたびに少しずつ傷み、書き換えられる回数に上限(エンデュランス)があります。同じ場所ばかり使うと、そこだけ先に寿命が尽きてしまいます。
SSDやUSBメモリ、スマートフォンのストレージでは、コントローラが論理アドレスと実際のブロックの対応表(FTL:フラッシュ変換層)を持っています。OSから同じアドレスへの書き込みが来ても、コントローラは毎回別の空きブロックに書き、対応表を書き換えます。よく書き換えられるデータを空きブロックに回す「ダイナミック」方式と、ほとんど書き換えられないデータを動かして、使われていないブロックも書き換えに参加させる「スタティック」方式があります。
ウェアレベリングは寿命を延ばす一方で、データを移すための余分な書き込み(書き込み増幅)を生みます。SSDの寿命の目安であるTBW(総書き込み量)やDWPD(1日あたりの全容量書き換え回数)は、セルのエンデュランス、ウェアレベリングとガベージコレクションの効率、予備領域(オーバープロビジョニング)の大きさで決まります。1セルあたりのビット数が多いQLCほど書き換えに弱いため、制御の重要性が増しています。