Calcul de l'endurance d'un SSD (TBW, DWPD)

Un SSD s'use à chaque écriture. Les constructeurs expriment son endurance en TBW ou en DWPD : le calculateur passe de l'un à l'autre, estime combien d'années le disque tiendra sous votre charge réelle, et mesure son usure à partir de ses compteurs SMART.

Le calcul se fait dans votre navigateur : aucune valeur saisie n'est envoyée.

Conversion TBW ↔ DWPD

Vos paramètres

To
ans

Classes courantes

Résultat

Endurance (TBW)

7 008 TBW

Écritures autorisées par jour

3,84 To

pendant 5 ans

Durée de vie selon vos écritures

Vos paramètres

Go/jour

Volume écrit par les applications sur ce disque, avant amplification.

1 = écrit une fois. Les valeurs d'exemple sont expliquées sous le calculateur.

Exemples

TBW retenu : 7 008 To (calcul ci-dessus).

Résultat

Durée avant d'atteindre le TBW

19 ans

1 To écrits par jour sur le disque

Écritures complètes par jour

0,26 DWPD

Le disque atteindra la fin de sa garantie de 5 ans avant son TBW.

Usure réelle d'après les compteurs SMART

Vos paramètres

Ligne « Data Units Written » de smartctl -a, ou data_units_written de nvme smart-log.

h

« Power On Hours » en NVMe, attribut 9 (Power_On_Hours) en SATA.

TBW retenu : 7 008 To (calcul ci-dessus).

Résultat

Part du TBW consommée

8,8 %

Volume écrit : 614 To

Moyenne par jour

842 Go

Reste au rythme actuel

21 ans

En NVMe, « Percentage Used » donne directement l'estimation d'usure du constructeur : comparez-la à ce calcul.

Comment le calcul est fait

Le TBW (terabytes written) est le volume total que le constructeur garantit en écriture. Le DWPD (drive writes per day) dit la même chose rapporté à la capacité : combien de fois par jour on peut réécrire le disque entier pendant la garantie.

TBW          = DWPD × capacité (To) × 365 × années
DWPD         = TBW / (capacité × 365 × années)
durée de vie = TBW / (écritures par jour × amplification × 365)
NVMe         = Data Units Written × 512 000 octets
SATA         = attribut 241 × unité indiquée par son nom

Les deux conversions SMART ont été vérifiées dans les sources : la spécification NVMe définit « Data Units Written » en milliers d'unités de 512 octets, arrondis au supérieur, et smartctl applique le facteur 512 000 dans son affichage. En SATA, l'attribut 241 n'est pas normalisé : la base de disques de smartmontools lui donne selon le modèle le nom de Total_LBAs_Written (en secteurs logiques), Host_Writes_32MiB ou Host_Writes_GiB, et c'est ce nom qui donne l'unité.

Sources : spécification NVM Express Base, page SMART / Health Information, smartmontools, nvmeprint.cpp et drivedb.h.

Le facteur d'amplification : ZFS, Ceph, bases de données

Le TBW compte ce que le disque reçoit. Or entre l'application et le disque, la pile logicielle multiplie souvent les écritures. Le facteur du calculateur sert à en tenir compte ; les valeurs proposées sont des exemples.

  • ZFS : une écriture synchrone (base de données, NFS, machine virtuelle) part d'abord dans le journal ZIL, puis est réécrite à sa place définitive. Sans disque SLOG dédié, le ZIL est sur les disques du pool : les petites écritures synchrones y sont écrites deux fois. Un miroir écrit en plus tout sur chaque disque, ce qui ne change pas le volume par disque mais double celui du pool.
  • Ceph : avec la réplication par défaut (size = 3), chaque écriture d'un client est écrite sur trois OSD. Comptez trois fois le volume écrit par les clients, réparti sur l'ensemble des SSD du cluster, plus les métadonnées de BlueStore dans RocksDB.
  • Bases de données : chaque modification est d'abord écrite dans le journal (redo log d'InnoDB, WAL de PostgreSQL), puis dans les pages de données. InnoDB écrit en plus chaque page dans son tampon de double écriture avant de l'écrire à sa place.
Le plus fiable reste de mesurer : relevez le volume écrit dans SMART à une semaine d'intervalle, et comparez-le à ce que vos applications ont écrit. Le rapport des deux est votre facteur réel.

Après le calcul

Pour un pool de SSD, la capacité utile compte autant que l'endurance. Le calculateur ZFS / RAIDZ donne l'espace réellement disponible en miroir ou en RAIDZ, réserve de ZFS comprise, et le calculateur RAID la durée de reconstruction après la panne d'un disque.

Questions fréquentes

Comment convertir un DWPD en TBW ?

TBW = DWPD × capacité en To × 365 × années de garantie. Un SSD de 3,84 To garanti 1 DWPD sur 5 ans supporte 7 008 To écrits. Dans l'autre sens, un SSD de 1,92 To annoncé pour 600 TBW sur 5 ans correspond à 0,17 DWPD.

Comment lire le volume écrit d'un SSD NVMe dans SMART ?

Multipliez « Data Units Written » par 512 000 octets. La spécification NVMe compte en milliers d'unités de 512 octets, arrondis au supérieur, quelle que soit la taille de secteur du disque. 10 000 000 unités font donc 5,12 To. smartctl affiche déjà cette conversion entre crochets.

Et sur un SSD SATA ?

Le volume écrit figure en général dans l'attribut 241, mais son unité dépend du constructeur, et son nom dans smartctl l'indique : Total_LBAs_Written se multiplie par la taille de secteur logique, le plus souvent 512 octets ; Host_Writes_32MiB par 32 Mio ; Host_Writes_GiB ou Lifetime_Writes_GiB par 1 Gio. La taille de secteur s'affiche avec smartctl -i.

Qu'est-ce que l'amplification d'écriture ?

Le rapport entre ce qui est réellement écrit sur la mémoire flash et ce que l'application a demandé d'écrire. Celle du contrôleur est déjà comprise dans le TBW. Celle de la pile logicielle ne l'est pas : ZFS écrit deux fois les petites écritures synchrones sans SLOG, Ceph réplique chaque écriture sur trois OSD par défaut, et une base de données écrit son journal en plus des pages de données.

Que se passe-t-il quand un SSD atteint son TBW ?

La garantie prend fin, même avant la date prévue. Le disque ne s'arrête pas pour autant : la norme JEDEC JESD218 impose qu'à ce volume il conserve encore ses données hors tension pendant une durée définie. Au-delà, surveillez les blocs de réserve et, en NVMe, l'indicateur « Percentage Used », qui peut dépasser 100 %.

Contact

Adresse

5 B RUE DES NOYERS, 95300 PONTOISE, FRANCE

Téléphone

01 77 62 42 42

Parlons de votre projet

15 minutes pour comprendre vos besoins, sans engagement.

Réservez un créneau