2 votes

MacOS gaspille de la RAM sur un Mac avec 64 Go de RAM

La semaine dernière, je suis passé de mon vieux Macbook 15" 2014 16Gb au Macbook 16" 64Gb. Avec mon ancien mac, j'étais assez à l'aise pour faire tourner Chrome, Lightroom, VSCode et même VM en même temps.

Un Mac frais de 2 jours juste après le redémarrage du système consomme ~16Gb de RAM... Ce n'est pas un cache de fichiers, c'est la mémoire des applications qui est réservée et non disponible pour les autres applications. Aucun logiciel installé, aucune application en autorun, seulement des services Apple.

Voici la liste des processus juste après un redémarrage du système.

Pourquoi opendirectoryd utilise 800Mb ? Je n'utilise même pas la fonctionnalité Open Directory. Pourquoi loginwindow nécessite 800 Mo de mémoire ? A corebrightnessd responsable de la fonctionnalité Night Shift - 420Mb ?

Mais qu'est-ce qui se passe ? Pourquoi un nouveau système gaspille-t-il 16 Go ( !!!) de RAM pour rien ? Cette RAM est suffisante pour exécuter plusieurs applications gourmandes en RAM.

Pouvons-nous contrôler cela d'une manière ou d'une autre en utilisant des paramètres internes tels que sysctl ?

2voto

Oskar Points 1242

Non - à ma connaissance, il n'y a pas de sysctl pour changer cela sous MacOS. La première solution pour les charges de travail de serveur est d'activer plus de processus, mais cela n'affectera pas l'allocation de vm ou la recompilation des frameworks.

Si, pour une raison ou une autre, vous exécutez une charge de travail plus importante sur le serveur et que vous souhaitez sacrifier un peu de performances mono-thread pour permettre à de nombreux démons de bien fonctionner, essayez d'activer le mode de performance pour le serveur et obtenez les réglages d'Apple pour cette charge de travail.

Je considère qu'il s'agit d'une utilisation efficace de la RAM, car il y a une longue histoire de mise en cache agressive et de chargement des frameworks depuis le disque lorsqu'ils sont référencés, puis d'équilibrage ultérieur sur MacOS :

Pour vous convaincre que tout se passe comme prévu, vous pouvez créer un nouveau compte utilisateur, désactiver la connexion automatique pour tous les comptes migrés et redémarrer proprement. Selon mes commentaires, rien ne semble être radicalement en dehors de l'intention de conception de MacOS. Si vous voulez creuser plus profondément dans votre allocation de mémoire exacte :

  1. Prenez un sysdiagnose du tout nouveau compte
  2. Prenez un sysdiagnose de votre compte maintenant et dans quelques jours, une fois que toutes les applications tierces que vous avez installées seront mises à jour / stables.
  3. Poussez un peu le noyau et le sous-système de mémoire virtuelle avec des applications en cours d'exécution - le système va utiliser de la RAM pour tout, puisque vous en avez tellement. Je vois cela plus du point de vue du gaspillage que représente le fait de disposer de 64 Go de RAM et de ne pas les allouer.

Le système n'a pas besoin de RAM libre pour quoi que ce soit, sauf pour une nouvelle allocation.

Il n'y a aucune chance que votre Mac ne puisse pas allouer une quantité ridicule de RAM instantanément dans l'instantané ci-dessus avec >32 Go encore libres.

Il y a une longue histoire d'attentes concernant la gestion de la mémoire du point de vue d'autres systèmes d'exploitation / d'autres noyaux / et des courbes d'apprentissage légitimes sur MacOS, donc je ne doute pas que vous soyez un peu inquiet, mais nous pourrions avoir besoin d'entrer dans un problème réel.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X