Write amplification (WA, lett. "amplificazione della scrittura") è un fenomeno collaterale negativo legato alle modalità di scrittura delle memorie flash e dei dischi allo stato solido (solid state drives, SSDs) tale per cui il quantitativo di scritture fisiche sul chip di memoria è un multiplo rispetto alla quantità di dati effettivi da memorizzare.
Poiché una memoria di tipo flash richiede di essere cancellata prima di poter essere riscritta e poiché il processo di cancellazione possiede una granularità molto maggiore (più grossolana) rispetto a quello di scrittura, il risultato è che per ogni operazione di riscrittura diventa necessario spostare (o riscrivere) più volte i dati preesistenti e i relativi metadati. Questo comporta che le operazioni di riscrittura richiedono la rilettura, lo spostamento (ossia la riscrittura in una posizione di memoria diversa) e la cancellazione di una porzione di memoria più ampia di quella effettivamente necessaria. A sua volta, il processo di spostamento potrebbe richiedere l'esecuzione dello stesso tipo di operazione su un'altra area della memoria, con un effetto moltiplicativo che porta a coinvolgere all'interno del chip una quantità di dati (e quindi una quantità di celle di memoria) superiore a quella richiesta dai nuovi da memorizzare.
La conseguenza di questo moltiplicarsi delle operazioni di cancellazione e riscrittura ha un impatto sulla durata del componente stesso, che può tollerare un numero limitato, per quanto elevato, di scritture e riscritture, riducendone considerevolmente l'affidabilità. Questa proliferazione di scritture, inoltre, aumenta il quantitativo di banda utilizzata dalla memoria flash, comportando una evidente riduzione della velocità nell'accesso verso l'SSD.[1][2]
I fattori che possono condizionare la proliferazione di scritture di un SSD sono di varia natura. Alcuni possono essere controllati durante l'utilizzo mentre altri sono intrinseci alla tecnologia di scrittura di questo tipo di dispositivi.
Intel[3] e SiliconSystems (acquisita da Western Digital nel 2009)[4] usano il termine write amplification nella loro documentazione e nelle loro pubblicazioni già dal 2008. La write amplification è misurata tipicamente dal rapporto fra il numero di scritture realmente eseguite sulla flash e il numero scritture richieste dall'host. Senza algoritmi di compressione, la write amplification non può scendere sotto al valore di 1. Usando algoritmi di compressione, SandForce dichiara di raggiungere valori tipici di write amplification pari a 0.5,[5] con picchi che possono scendere fino a 0.14 con il controller SF-2281.[6]