J'ai lu cette question et elle contient beaucoup d'informations intéressantes.
Mais en supposant que vous avez plus qu'assez de RAM, je pense que le fichier d'échange devrait être désactivé sur SSD pour prolonger la durée de vie. Je sais que vous perdriez le vidage de mémoire en cas de crash, mais peu de gens ont besoin de ces informations.
D'après ma compréhension, sans fichier d'échange, lorsque vous atteignez la limite de votre RAM, cela pourrait déclencher un thrash sur le disque. Mais pour les SSD, il n'y a pas de concept de thrashing, les lectures sont rapides.
Qu'en pensez-vous?
Réponses:
Cela ressemble plutôt à une optimisation prématurée. Vous n'avez pas discuté des SSD que vous prévoyez d'utiliser, et sans regarder réellement la charge de travail de votre serveur et la fiche technique de votre SSD prévue, vous ne pouvez avoir aucune idée de l'effet qu'un fichier d'échange aura sur la durée de vie de votre SSD.
Il y a aussi un grand volume de désinformation, à la fois sur le grand Internet et ici sur Server Fault, sur les SSD souffrant d'une mauvaise durée de vie. Les premiers SSD peuvent avoir eu des problèmes et les lecteurs flash USB commencent certainement à se dégrader, mais les SSD de classe entreprise ont de bien meilleurs algorithmes de nivellement de l'usure et certains utilisent un flash de rechange pour améliorer les performances et l'usure.
Les lecteurs Intel X25-E , par exemple, revendiquent une durée d'écriture de 1 pétaoctet d'écritures aléatoires pour le lecteur de 32 Go. Si vous saturez sans interruption l'interface d'écriture (200 Mo / sec), avec écrasement, mon estimation est que cela vous durera environ 58 jours. Mais cela écrit quelque chose comme 17 To de données par jour sur ce disque.
La charge de travail typique du serveur sur le lecteur du système d'exploitation sera beaucoup, beaucoup moins, même si vous avez un fichier d'échange. Appelez-le 50 Go par jour. Si le chiffre de 1 PB est exact (et je sais qu'il peut être considéré comme un chiffre moyen, plus de discussion plus tard), c'est toujours quelque part au nord de 50 ans.
Ces chiffres semblent évidemment exagérément élevés, alors regardons les chiffres réels cités par Intel pour la longévité attendue des disques . Intel était heureux de qualifier les disques MLC (non-entreprise) pour écrire 100 Go de données, chaque jour, pendant cinq ans. La compréhension standard du flash SLC vs MLC dit que le flash SLC dure environ 10 fois plus longtemps que le MLC (le lien ci-dessus le montre également sur un graphique).
La vérité sera confirmée par le temps, bien sûr - nous commencerons à voir les disques échouer tôt ou nous ne le ferons pas. Mais les chiffres derrière les disques ajoutent à la longévité d'entraînement ne pas être un problème avec les disques SSD de qualité décente à tous .
Si vous utilisez un SSD MLC, vous avez peut-être raison de vous inquiéter. Mais gardez à l'esprit que si Intel est heureux d'évaluer le disque à 100 Go / jour pendant cinq ans, cela reste fondamentalement le même que 50 Go / jour pendant 10 ans. Et, pour revenir à mon point de départ, vous devez toujours savoir quel type de charge de travail réelle vous allez faire sur le disque.
Personnellement, je dirais fortement de ne pas utiliser de SSD MLC dans un environnement de serveur de production. Si un SSD SLC décent est trop cher, restez fidèle aux disques en rotation pour l'instant.
(Soit dit en passant, si vous faites les chiffres, disons 100 Go par jour pendant 50 ans, ce qui est la note «SLC dure 10 fois plus longtemps que MLC», il semble qu'Intel dise que leur disque de 32 Go a en fait une durée de vie totale en écriture de près de 2 PB de données, pas le 1 PB cité dans la spécification du produit. Même si je ne fais confiance qu'à la plus petite de ces deux valeurs pour être heureux que mes disques X25-E durent bien au nord de 10 ans.)
la source
En plus de la longévité qui n'est probablement pas un problème, comme le mentionne Daniel Lawson, et les commentaires de l'équipe MS elle-même (ci-dessous), envisagez
Support et Q&A pour les disques SSD (MSDN)
la source
Plutôt que de désactiver complètement le fichier d'échange, il peut être utile de dire au système d'exploitation de ne pas l'utiliser (par exemple,
sysctl vm.swappiness=0
).Le système d'exploitation évitera de l'utiliser à moins que nécessaire, en enregistrant les écritures inutiles du SSD.
la source
Je laisserais toujours le fichier d'échange activé; certaines parties de votre système d'exploitation ou de vos applications peuvent être écrites pour s'attendre à ce qu'il y en ait, et en tant que telles peuvent se comporter mal s'il n'y en a pas.
Cela dit, j'ai utilisé Windows (XP) sans fichier d'échange dans le passé, et il a été parfaitement satisfait de tout ce que j'ai lancé. Il y avait toujours le doute insignifiant que quelque chose arriverait qui ne l'aimerait pas.
Une option pourrait être de le régler très petit.
la source
Ce n'est pas directement sensible à l'OP, mais je voulais corriger une impression erronée dans la réponse / commentaires ci-dessus par Ronald et Daniel. (Je suis nouveau, donc je n'ai pas assez de points pour commenter.)
TRIM est en fait la plus grande chose que vous puissiez faire pour prolonger la durée de vie d'un SSD. Voici pourquoi: les disques SSD «récupèrent régulièrement» - copiez les données (fragmentées) de blocs d'effacement partiellement vides et écrivez-les de manière contiguë dans un bloc nouvellement effacé.
Les adresses sont remappées afin que l'hôte ne soit pas au courant de cela. Cette activité d'écriture supplémentaire, non directement associée aux écritures de l'hôte, est appelée "amplification d'écriture". Dans le pire des cas, un SSD complètement complet avec une petite quantité d'espace sur-provisionné (de secours caché), l'amplification d'écriture peut facilement être comprise entre 500% et 700% du taux d'écriture de l'hôte!
Lors de la récupération de place, le SSD ne prend pas la peine de copier et réécrire les pages qui ont été invalidées (écrasées ou TRIMmed), économisant ainsi beaucoup de travail et d'écriture. Si le système de fichiers efface un fichier volumineux, mais qu'il n'informe pas le lecteur via TRIM, le lecteur continuera à copier ces données effacées, gaspillant les écritures, indéfiniment (ou jusqu'à ce que ces adresses de bloc soient affectées à un autre fichier, ce qui pourrait être long).
En résumé, TRIM est vraiment important à la fois pour la longévité et les performances.
la source
Je l'ai indiqué sur l'autre post que vous avez lié, mais nous exécutons un serveur très principal sans fichier d'échange et tout ici semble bien. En fait, cela semble plus rapide sans lui. Nous avons 8 Go de RAM et je dirais que vous devriez décider si vous avez beaucoup de RAM, pas si votre disque dur est un SSD ou non. Bien que je puisse comprendre le désir d'en sauver la vie en ne faisant pas d'écritures inutiles.
la source
Utilisez simplement un deuxième disque dur pour la mémoire virtuelle.
la source
J'utilise un ordinateur portable avec 8 Go de RAM, un seul disque SSD et aucun fichier d'échange, depuis plus d'un an maintenant, aucun problème. J'ai rencontré un jeu qui nécessitait le fichier d'échange, je suis allé sur le site Web du logiciel et j'ai obtenu la commande run pour le désactiver, le problème a été résolu.
Mon ordinateur portable a quatre ans. Ancien, mais il s'exécute plus rapidement que certains ordinateurs de bureau plus récents. Les fuites de mémoire, ou fichier SWAP, sont le problème avec le système d'exploitation Windows depuis la création de la technique. Malheureusement, les développeurs Linux ont suivi ses traces. Moins vous exécutez de logiciels en arrière-plan, mieux c'est (surtout si c'est Microsoft).
la source
Je dirais de ne pas utiliser le swap, si vous pouvez vous en tirer. Ou peut-être baisser le chemin de l'échange. Bien qu'il soit difficile d'en porter un (combien de temps faudrait-il pour écrire sur le disque entier 100 000 fois, avec la bande passante maximale dont vous disposez?), Si vous n'en avez pas besoin.
Là encore, l'hibernation (suspension sur disque) ne fonctionne pas sans une sorte de swap.
Auparavant, il y avait un comportement étrange sans échange (comme dans un disque RAM de 50 Mo pour un échange, ce serait une victoire), mais cela a été corrigé l'été dernier (ou était-ce 2007?), Donc un système d'exploitation actuel devrait convenir.
Maintenant, tout ce dont nous avons besoin est du matériel qui prend en charge la commande d'effacement (Linux l'a prise en charge depuis des mois), et la vie sur SSD sera tout simplement dandy.
la source
J'ai eu deux SSD de classe entreprise qui m'ont grillé très prématurément (c'est-à-dire bien pendant la période de garantie). Je pense que la raison en était un échange important à cause de la raclée. Je me suis souvent rendu compte que j'avais des processus inutiles exécutant des démons / buggy avec des fuites de mémoire, de sorte qu'il y avait une forte activité de permutation presque continue.
iostat -n9 -w 10
De temps en temps, je cours en arrière-plan et je remarque qu'il y a souvent une activité continue et intense sur le disque. L'activité du processus du noyau (swap) a également été consignée comme source de la plupart des E / S. Je me souviens d'un démon qui avait une fuite de mémoire pendant des mois et avait besoin d'être tué périodiquement. Souvent, je ne dépanne pas à moins que le système ne soit ennuyeusement lent, si souvent que le thrashing a duré longtemps avant de prendre le temps de redémarrer le démon. Et plus longtemps pour que la fuite soit réparée.Bien que la désactivation de l'échange attirerait mon attention sur la raclée, le problème serait donc résolu avant qu'une usure importante du SSD ne se produise, c'est loin d'être le meilleur moyen de prévenir de tels dommages; tout outil de surveillance / alerte décent serait préférable.
Une mise en garde que la plupart des réponses ne parviennent pas à reconnaître est que si un serveur nettoie un SSD en continu, il s'éteindra assez rapidement - des burnouts dans un an dans cette situation sont courants. Le thrashing classique se produit généralement lorsque l'échange de mémoire virtuelle est suffisamment lourd pour garder le lecteur (d'échange) principalement occupé - bien dans un ordre de grandeur de sa bande passante d'E / S maximale, et qu'il y a au moins un processus en attente d'un E / S lié à l'échange O pour terminer la plupart du temps que le système est dans cet état. Les autres réponses supposent que le système n'est pasraclée, du moins pas de manière classique; ou compter sur une mauvaise compréhension de ce qu'est la raclée. Et cette fausse hypothèse, malgré d'autres données précises, conduit à des réponses incorrectes quant à la POURQUOI la pagination, même lorsqu'un SSD est le seul emplacement possible pour le fichier d'échange, est préférable de le laisser activé.
la source
Désactivez le fichier d'échange sur le disque lorsque vous avez beaucoup de mémoire inutilisée. Certains anciens programmes exigent une fonctionnalité de fichier d'échange et pour ceux-ci, Windows créera une petite fonctionnalité de fichier d'échange en mémoire.
la source