3 votes

Pourquoi la vitesse de transfert du SSD NVMe diminue-t-elle lors du transfert de grandes données?

Mon ordinateur portable dispose d'un SSD PCIe NVMe de 512 Go M.2. Et lorsque je transfère des données de moins de 7 Go, il me donne une vitesse de transfert d'environ 400 MB/s à 500 MB/s. Mais lorsque je transfère de grandes données comme 35 Go, sa vitesse diminue jusqu'à 50 Mo/s et parfois elle descend à 25 Mo/s. Je veux juste savoir pourquoi cela se produit.

7voto

Dj S Points 101

Résumé

La plupart des SSD modernes utilisent des mémoires NAND TLC relativement lentes. Pour compenser cela, un petit tampon de mémoire NAND SLC beaucoup plus rapide est utilisé, ce qui masque cette performance plus lente dans la plupart des conditions d'utilisation. Ce tampon peut être épuisé lors de l'écriture de grandes quantités de données sur le lecteur en peu de temps, entraînant une réduction des performances lors de transferts importants.


Détails techniques

La mémoire flash NAND, le type de mémoire utilisé dans presque tous les SSD aujourd'hui, existe en plusieurs variétés. Notamment, la NAND peut être configurée pour stocker entre un et quatre bits de données par cellule de mémoire :

  • Un bit par cellule : SLC
  • Deux bits par cellule : MLC
  • Trois bits par cellule : TLC
  • Quatre bits par cellule : QLC

Avec plus de bits par cellule, plus de données peuvent être stockées dans une puce mémoire flash NAND unique, et moins il en coûte de fabriquer un lecteur avec une capacité de stockage donnée. Cependant, les performances et l'endurance en écriture diminuent avec plus de bits stockés dans chaque cellule. (C'est la différence de performance qui importe ici ; avec quelques exceptions impliquant généralement de très petits lecteurs, la plupart des consommateurs n'ont pas besoin de se soucier de l'endurance en écriture car ils n'écrivent pas suffisamment pour user même la NAND QLC sur un lecteur de taille raisonnable dans sa durée de vie prévue). En effet, la SLC est extrêmement difficile à trouver en dehors des lecteurs pour des applications industrielles spécialisées nécessitant une très haute endurance en écriture, et les lecteurs MLC (par exemple, le Samsung SSD 970 PRO) sont rares et très chers.

Par conséquent, la plupart des lecteurs utilisent la NAND TLC, et quelques-uns commencent à utiliser la NAND QLC. Avec les deux types de NAND, les performances en écriture sont suffisamment lentes pour être généralement inacceptables pour les PC grand public. Heureusement, les cellules de mémoire NAND peuvent être configurées pour stocker moins de bits, par exemple la NAND TLC peut être configurée pour stocker un bit par cellule comme si c'était de la NAND SLC au lieu de trois bits. Sur presque tous les lecteurs utilisant de la NAND TLC ou QLC, un petit espace, généralement de quelques gigaoctets, est réservé en interne pour fonctionner dans ce mode SLC beaucoup plus rapide. Cela crée un tampon ou une cache rapide vers lequel les données sont toujours écrites en premier.1 (La NAND MLC est généralement assez rapide pour ne pas nécessiter de tampon SLC, mais je m'égare.)

Lorsque le lecteur est inactif, les données de ce tampon SLC sont automatiquement déplacées vers la NAND TLC ou QLC sous-jacente. Comme la plupart des charges de travail des consommateurs accèdent au lecteur par courtes rafales, le lecteur aura largement le temps libre pendant lequel il peut vider le tampon SLC, il est donc rare qu'il se remplisse complètement. Par conséquent, vous ne remarquerez généralement pas les performances plus lentes de la NAND TLC ou QLC. Cependant, ce tampon peut s'épuiser lorsque de grandes quantités de données sont écrites en peu de temps, par exemple lors de l'installation de grands jeux ou de transferts de fichiers importants. C'est pourquoi vous rencontrez une performance dégradée.


1Une partie fixe de la capacité brute du lecteur est dédiée au tampon SLC ; les lecteurs plus grands auront généralement un tampon plus grand. De nombreux lecteurs plus récents peuvent étendre automatiquement ce tampon en profitant de l'espace libre du lecteur : les cellules mémoire inutilisées peuvent être configurées pour fonctionner en mode SLC de sorte que des performances plus élevées puissent être maintenues plus longtemps. Lorsque cet espace est réellement nécessaire pour stocker des données, ces cellules sont converties en mode TLC ou QLC. Cette fonctionnalité dépend du système d'exploitation envoyant des commandes TRIM au lecteur qui spécifient quels blocs ne sont pas utilisés, et est conçue pour être transparente pour l'utilisateur. Samsung appelle cela Intelligent TurboWrite, et il est plus généralement désigné comme un tampon SLC dynamique.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X