Que vous utilisiez ou non une version des paramètres "officiels" pour désactiver le swap, il n'est jamais vraiment sûr de le faire.
Petit rappel sur le terme "swap". L'espace swap est le contenu de la mémoire stocké sur le disque. Afin d'exécuter plus de programmes que la mémoire physique ne le permet, le système d'exploitation peut "échanger" de la mémoire, c'est-à-dire écrire le contenu de la mémoire sur le disque, libérant ainsi la mémoire physique pour qu'elle puisse être utilisée par d'autres programmes. Lorsqu'un programme a besoin d'accéder à la mémoire qui a été échangée, le système d'exploitation "réintègre" la mémoire, c'est-à-dire qu'il relit les données du disque dans la mémoire physique. Si la mémoire est encore pleine, cela signifie que le système d'exploitation doit échanger d'autres données avant d'échanger la mémoire demandée. Ce système ne fonctionne que si de grandes parties de la mémoire ne sont pas utilisées pendant de longues périodes, ce qui peut être le cas sur Mac, où votre traitement de texte peut faire une pause pendant que vous lisez votre navigateur Web.
Avec l'échange, le système peut utiliser autant de "mémoire virtuelle" que vous avez d'espace disque disponible, et les performances se dégradent progressivement à mesure qu'un pourcentage plus élevé de mémoire est sur le disque. Sans swap, le système peut se retrouver brusquement à court de mémoire, et comme le swap est disponible depuis des décennies, les systèmes ne gèrent pas vraiment bien le manque de mémoire. Votre système et vos applications peuvent se retrouver dans toutes sortes d'états bizarres et malsains parce que le manque de mémoire n'est plus quelque chose que les gens prévoient ou, plus important, testent. Ainsi, même si le système d'exploitation et les applications sont censés gérer les situations de manque de mémoire, vous rencontrerez très probablement des bogues. Si vous désactivez la mémoire comprimée, il est encore plus probable que vous ayez besoin de swap. Vous pouvez lire témoignages de blocage du système en raison d'un manque de mémoire et de swap dans Yosemite .
L'échange est connu (par le système d'exploitation) pour être lent, donc le logiciel du système d'exploitation et les logiciels d'application concernés comme les lecteurs multimédias savent comment garder les données critiques en mémoire et hors de l'échange. Si vous constatez que le système utilise l'espace d'échange et que vous n'aimez pas cela, quittez certaines applications (ou fermez certains onglets de navigateur) jusqu'à ce que votre "mémoire utilisée" soit bien inférieure à votre "mémoire physique", puis l'espace d'échange sera progressivement vidé dans la mémoire réelle, car il doit être lu dans la mémoire réelle pour qu'un programme puisse l'utiliser, et le système d'exploitation ne rééchangera pas cette mémoire s'il y a beaucoup de mémoire physique libre disponible. (Il fut un temps où l'espace d'échange, une fois alloué, n'était jamais libéré du disque, mais ce n'est plus le cas, et même lorsque c'était le cas, il était toujours vrai que l'espace d'échange alloué serait "libre" ou inutilisé une fois que toute la mémoire utilisée tiendrait dans la mémoire physique réelle). C'est ce que vous auriez à faire sans espace d'échange, de toute façon.
La réponse est donc (a) non, il n'y a aucun moyen de désactiver l'échange et (b) s'il y avait un moyen, cela conduirait votre système à se figer et/ou à planter, et cela n'en vaut donc pas la peine.
En ce qui concerne la désactivation de la compression de la mémoire, ou comme vous le dites "Valeur 1 pour vm.compressor_mode
Cela fonctionnera-t-il sur MacOS 10.12 ou se plantera-t-il comme sur MacOS 10.11 ?", la réponse est beaucoup plus simple : vous ne pouvez pas désactiver la compression de la mémoire. À partir de MacOS 10.12 Sierra, si vous essayez de désactiver la compression en définissant l'option vm.compressor_mode
à 1, le noyau le traite comme si vous aviez mis vm.compressor_mode
à 4 et active quand même la compression de la mémoire. (Voir vm_pageout.c ). Ainsi, il ne se plantera pas, comme avec MacOS 10.11, mais il ne "fonctionnera" pas non plus pour désactiver la compression. (AFAIK, les modes "freezer" sont pour iOS, pour supporter une reprise rapide lors du changement d'application. Ils requièrent que le noyau soit compilé avec l'option CONFIG_EMBEDDED
ce qui n'est pas le cas du système d'exploitation de bureau).
2 votes
Il suffit d'acheter plus de mémoire vive. Essayer de devancer le système d'exploitation est un exercice vain.
0 votes
J'ai 16G ram avec le Macbook Pro de fin 2016, j'ai aussi un Macbook Air 2014 avec 8GB RAM. Croyez moi, je sens qu'il devient lent, quand de plus en plus d'éléments arrivent en mémoire compressée. J'ai aussi un iMac retina, là parfois Soundcloud commence à sauter des sons quand la mémoire est compressée, aussi le défilement de certaines pages devient plus lent, et ils sont bien quand la mémoire compressée est 0. Je veux juste que ce soit désactivé, même quand vous avez beaucoup de ram disponible, un sleep+wake ou une demi-journée d'inactivité ne fait que mettre des choses aléatoires là :(.
0 votes
En fait, c'est la raison pour laquelle je redémarre mon Macbook Air au moins une fois par jour. A la fin de la journée, il devient plus lent car malgré les 8 Go de mémoire vive et le fait que la plupart d'entre eux soient libres ou seulement utilisés pour le cache des fichiers, il y a quelque chose de compressé. Les appareils de 16 gb ram sont également redémarrés une fois par semaine et j'essaie de ne pas utiliser la mise en veille pour la même raison (écran de verrouillage uniquement).
1 votes
Il est certain que si vous avez désactivé la compression, vous manquerez plus rapidement de mémoire, ce qui n'est pas utile.
0 votes
Mark ne manque jamais de mémoire vive, même si c'était le cas, il serait évidemment plus optimal d'effacer le cache des fichiers. Il compresse aussi quand moins de la moitié de la ram est occupée, c'est ça qui est triste (y compris le cache de fichiers 100% largable) :(