Le faible espace disque affecte-t-il les performances du SSD?


16

Je me demandais si avoir moins de 5 à 10 Go d'espace libre sur un SSD affecterait les performances. Est-ce spécifique au SSD ou s'agit-il plutôt d'un aspect de système d'exploitation?

Par exemple, sur un Intel X-25 G2 qui prend en charge TRIM (sous Windows 7).

Réponses:


14

La plupart des SSD ralentissent à mesure qu'ils se remplissent. Les SSD ont tendance à choisir des blocs vides pour écrire, car ils ne peuvent modifier un bloc qu'en effaçant et en réécrivant tout le bloc. Une fois que tous ces blocs sont partiellement remplis, chaque opération d'écriture nécessite un effacement et une réécriture, ce qui signifie que le SSD doit lire le bloc dans le cache, modifier le cache avec les nouvelles données, puis effacer le bloc et écrire le cache. Cela revient à une lecture et deux opérations de programmation pour chaque bloc qui doit être modifié. De plus, bien que la fragmentation ait très peu d'effet sur les SSD, une fragmentation élevée et le fait que la plupart des systèmes d'exploitation ignorent les SSD peuvent faire en sorte que le système d'exploitation émette plus d'écritures que nécessaire. Les blocs du SSD sont généralement plus grands que les unités d'allocation du système d'exploitation, donc si le SSD ne s'attend pas à des écritures supplémentaires, il pourrait finir par répéter le même processus en trois étapes plusieurs fois par bloc, ralentissant ainsi encore plus les écritures. Même la suppression de fichiers ne résout pas ce problème, car les données restent là et le SSD ne sait pas qu'il n'est plus utilisé et continue de réécrire ces données supprimées.

L'opération TRIM, prise en charge par votre lecteur, permet au système d'exploitation de dire au lecteur de se débarrasser des données supprimées. Cela permet au lecteur de récupérer des blocs vides. Cependant, les seuls systèmes d'exploitation qui prennent en charge TRIM sont Windows 7, Windows Server 2008 R2 et les distributions Linux utilisant le noyau 2.6.33 ou version ultérieure.

Puisque vous avez Windows 7, votre système utilise la commande TRIM et est capable de récupérer les blocs inutilisés. Cependant, TRIM ne réorganise pas les données, donc si le lecteur est presque plein, une fragmentation élevée peut toujours entraîner l'occupation partielle des blocs de données et limite l'efficacité de TRIM. Pour autant que je sache, la meilleure chose à faire est de libérer autant d'espace disque que possible. Si vous pouvez libérer suffisamment d'espace, des blocs entiers peuvent être coupés et votre lecteur récupérera de la vitesse. De plus, il existe des programmes de défragmentation qui sont orientés vers les SSD, ce qui signifie qu'ils ne défragmentent que suffisamment pour couper quelques blocs supplémentaires, mais je n'en connais pas de gratuits. Je pense que Diskeeper est censé faire cela, mais c'est cher et j'ai entendu des critiques très mitigées.


1
La couche FTL se situe en dessous du niveau du système de fichiers. Bien qu'il puisse sembler que le système de fichiers est fragmenté, cela ne signifie PAS que la couche FTL est fragmentée. Ces programmes de défragmentation SSD sont sans valeur, ils ne peuvent pas accéder à la couche FTL, c'est de l'huile de serpent. Maintenant, le manque d'espace libre rend les SSD plus lents, en ce sens qu'il a moins de place pour faire la collecte des ordures et porter le nivellement, et tout ça. Les SSD ne choisissent pas automatiquement les blocs vides en soi, ils doivent également prendre en compte le niveau d'usure. En fin de compte, le système de fichiers ne sait rien de la façon dont il stocke les choses sur la couche FTL
Time Twin

Les systèmes de fichiers non optimisés pour SSD ne parviennent pas à réduire autant, ce qui a le même effet qu'un espace libre plus petit.
Basilevs

4

Dans cet excellent article d'AnandTech, ils explorent la relation entre la zone de réserve et les performances du SSD. L'essentiel est que tous les SSD gagnent / conservent leurs performances lorsqu'ils laissent une partie de leur espace inutilisé. Parfois, il y a même une différence entre 25% d'espace libre et 50% d'espace libre.


3

Cela dépend d'un modèle SSD, d'un fournisseur et de modèles d'utilisation spécifiques.

Dans certaines situations, un SSD utilisé intensivement peut fournir une performance considérablement dégradée, sans tenir compte de la quantité d'espace disque utilisé nécessitant un nettoyage de bas niveau pour restaurer à un niveau de performance comme neuf.


Par exemple, sur un Intel X-25 G2 qui prend en charge TRIM (sous Windows 7).
Gabe

0

J'ai entendu dire que les SSD ont tendance à ralentir lorsqu'ils sont presque pleins, mais je suppose qu'il faudrait moins de 5 à 10 Go d'espace libre pour que vous ressentiez quelque chose comme ça. Peut-être quand il vous reste moins de 1 Go ou quelque chose.


0

Les systèmes de fichiers en général deviennent lents lorsqu'ils sont pleins. C'est dû à la fragmentation. Sur un disque vide, vous pouvez être sûr de pouvoir écrire un fichier dans un bloc. Au fur et à mesure que le système de fichiers se remplit, les chances de pouvoir adapter le fichier dans un seul bloc contigu diminuent, et vous devez faire de plus en plus de recherches pour trouver les données, convertir ce qui était à l'origine un accès séquentiel de données en un plus comme un accès aléatoire aux données, et donc plus lent.


2
Cela ne s'applique pas aux SSD car il n'y a pas de pièces mobiles, donc les accès aléatoires ajoutent un temps d'accès négligeable. Vous devrez peut-être avoir un fichier qui saute avec des milliers de fragments placés au hasard pour avoir un impact notable, qui proviendrait principalement du système d'exploitation lui-même qui planifie ses lectures et ses écritures.
TuxRug

1
Il existe toujours une différence entre les lectures séquentielles et les lectures aléatoires. Par exemple, codinghorror.com/blog/2008/06/… donne 26 Mo / s pour la lecture séquentielle et 6 Mo / s pour la lecture aléatoire.
gorille

@TuxRug: les lecteurs sont regroupés en blocs d'effacement de centaines de kilo-octets ou plus; une fois qu'une page (représentant 512 ou 4096 octets de données de "disque logique") est écrite, elle ne peut être réécrite qu'en effaçant toutes les pages de son bloc. Lorsqu'un secteur de "disque logique" est écrasé, le lecteur alloue une page anciennement vierge pour contenir son nouveau contenu et note que l'ancienne page peut être considérée comme obsolète. Plutôt que d'effacer immédiatement les pages obsolètes, la plupart des lecteurs attendent jusqu'à ce qu'ils aient besoin d'espace, puis recherchent un bloc où la plupart ou la totalité des pages sont obsolètes.
supercat

@TuxRug: Si le nombre de pages vides devient extrêmement bas, les performances du lecteur seront proportionnelles au plus grand nombre de pages libres ou obsolètes dans un bloc [s'il y a 10 blocs chacun avec 15 pages obsolètes, alors pour les 150 prochaines écritures, une écriture / un cycle d'effacement sera nécessaire tous les 15. S'il y avait trois blocs chacun avec 50 pages obsolètes, alors un cycle d'écriture / effacement ne serait nécessaire qu'à chaque 50ème écriture.] La fragmentation rend plus probable que l'on se retrouve avec beaucoup de blocs qui n'ont que quelques pages obsolètes chacun.
supercat

0

Un autre facteur important est de savoir si et combien de surprovisionnement est défini par le fabricant du SSD, comme expliqué ici . Un surapprovisionnement signifie qu'un espace est réservé aux activités d'arrière-plan telles que la récupération de place et n'est pas mis à la disposition de l'utilisateur. Par exemple, un SSD annoncé comme 256 Go peut en fait être de 282 Go si un surprovisionnement de 10% est défini.

Si le fabricant de SSD a été généreux avec un espace de surprovisionnement, un espace disque faible peut ne pas affecter considérablement les performances, par exemple, même un SSD qui semble 100% plein peut en fait être seulement 85% plein. Mais si vous êtes en mesure de remplir votre SSD à près de 100%, cela entraînerait une dégradation significative des performances.

En bref, la quantité de l'effet et s'il sera perceptible est spécifique au SSD. Mais en règle générale, les SSD fonctionnent mieux lorsqu'ils sont pour la plupart vides et leurs performances se détériorent au fur et à mesure qu'ils se remplissent, pour des raisons expliquées dans d'autres réponses et dans le lien.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.