Pourquoi les disques SSD ralentissent lorsque vous les remplissez
Les points de repère sont clairs: les disques SSD ralentissent au fur et à mesure que vous les remplissez. Remplissez votre lecteur à semi-conducteurs presque à pleine capacité et ses performances en écriture diminueront considérablement. La raison en est la manière dont les disques SSD et le stockage Flash NAND fonctionnent.
Remplir le disque au maximum est l’une des choses que vous ne devriez jamais faire avec un disque SSD. Un lecteur à semi-conducteurs presque complet aura des opérations d'écriture beaucoup plus lentes, ce qui ralentira votre ordinateur.
Blocs vides et blocs partiellement remplis
Lorsque vous écrivez un fichier sur votre disque SSD, il recherche les blocs vides et les remplit. L'écriture dans un bloc vide est l'opération d'écriture la plus rapide possible. C'est pourquoi les nouveaux systèmes d'exploitation (Windows 7 et versions ultérieures) prennent en charge la fonctionnalité TRIM, qui supprime automatiquement les données d'un fichier du disque SSD dès que vous supprimez le fichier dans votre système d'exploitation. Cela fonctionne différemment des disques durs magnétiques, où des morceaux de fichiers supprimés restent sur le disque dur.
Ils ne restent pas sur un lecteur à semi-conducteurs - TRIM veille à ce que le bloc soit vidé afin que le SSD puisse écrire rapidement de nouvelles données dans le bloc vide à l'avenir. Écrire sur un secteur déjà écrit est aussi rapide que d’écrire sur un secteur vide d’un disque dur mécanique, mais un disque SSD doit effacer un bloc avant de pouvoir y écrire..
La mémoire Flash NAND écrit les données dans des pages de 4 Ko à l'intérieur de blocs de 256 Ko. Pour ajouter des pages supplémentaires à un bloc partiellement rempli, le lecteur SSD doit effacer tout le bloc avant de pouvoir y réécrire des données..
Au fur et à mesure que votre lecteur à semi-conducteurs se remplit, de moins en moins de blocs vides sont disponibles. À leur place sont des blocs partiellement remplis. Le disque SSD ne peut pas simplement écrire les nouvelles données sur ces blocs partiellement remplis, ce qui effacerait les données existantes. Au lieu d'une simple opération d'écriture, le disque SSD doit lire la valeur du bloc dans son cache, modifier la valeur avec les nouvelles données, puis l'écrire. Gardez à l'esprit que l'écriture d'un fichier impliquera probablement l'écriture sur plusieurs blocs, ce qui peut entraîner un délai supplémentaire considérable..
TRIM ne consolide pas les blocs partiellement remplis
Si vous remplissez un lecteur à pleine capacité ou presque, il est probable que vous obtiendrez de nombreux blocs partiellement remplis après la suppression de fichiers. La commande TRIM demande simplement à un disque SSD de supprimer les données de fichier lorsque le fichier est supprimé. Cela ne force pas le lecteur à effectuer une opération de nettoyage.
En d'autres termes, remplissez un disque SSD à sa capacité maximale avant de supprimer des fichiers et vous obtiendrez probablement de nombreux blocs partiellement remplis. Le lecteur ne fera pas son possible pour consolider ces blocs partiellement remplis en blocs complets, libérant ainsi des blocs vides. Le lecteur sera toujours rempli de blocs partiellement remplis et les performances en écriture seront dégradées.
Surapprovisionnement et ramassage des ordures
Pour empêcher les consommateurs de remplir leurs disques SSD et de se retrouver avec des performances gravement dégradées, les fabricants de disques SSD s'efforcent de contrer ce problème..
Les disques à semi-conducteurs grand public réservent souvent environ 7% de leur stockage flash total et le rendent indisponible pour l'utilisateur. C'est ce que l'on appelle le «surapprovisionnement» - du matériel de stockage supplémentaire est ajouté au lecteur mais n'est pas visible par l'ordinateur car il dispose du stockage disponible. La zone de réserve évite que le lecteur ne soit jamais complètement rempli - il y aura toujours une capacité de réserve pour aider à maintenir la performance en écriture stable.
Le contrôleur de chaque disque à semi-conducteurs dispose d'un algorithme de récupération de place pour tenter de résoudre ce problème. Lorsque le lecteur est plein, il recherche les blocs partiellement remplis et commence à les consolider, libérant autant de blocs vides que possible. Différents disques SSD exécutent ces opérations à des moments et des seuils différents - cela dépend du contrôleur du lecteur..
Preuve de référence
Anandtech a réalisé divers tests de performances avec différents lecteurs afin de déterminer la relation entre la zone de réserve d'un lecteur à semi-conducteurs et la cohérence de ses performances en écriture. Lors du remplissage d'un lecteur vide, ils ont constaté des performances d'écriture élevées très tôt dans le processus et une baisse importante du fait que les opérations d'écriture continuaient à remplir le lecteur..
La mise de côté de plus d'espace libre sur les disques a permis aux performances de rester cohérentes, car cela garantissait que le disque devrait toujours avoir suffisamment de blocs vides prêts..
Ils ont constaté que «les performances minimales s'amélioraient considérablement une fois que vous atteigniez 25% d'espace disponible pour ces disques [consommateurs]». Leur recommandation finale était que vous devriez «prévoir d'utiliser environ 75% de la capacité de [vos disques] si vous voulez un bon équilibre. entre la cohérence des performances et la capacité. "
Si vous possédez un disque SSD, vous devriez essayer d'éviter d'utiliser plus de 75% de sa capacité. Achetez un disque plus volumineux avec plus de stockage que nécessaire et vous aurez ainsi des performances constantes en écriture. Heureusement, les disques SSD sont de moins en moins chers, ce qui n’est pas aussi coûteux qu’auparavant..
Crédit d'image: Music Sorter sur Wikimedia Commons, Simon Wüllhorst sur Flickr