De nombreuses personnes apprennent comment fonctionne la mise en cache du gestionnaire de mémoire Windows en lisant les livres blancs de Microsoft, etc. Cependant, il existe relativement peu de documents décrivant les problèmes de performances du monde réel (lenteur) liés aux fichiers mappés et aux listes de secours très volumineux / en croissance.
J'ai un PC Win7 64 bits (8 Go de RAM) qui fait office de serveur. Je ne peux plus y ajouter de mémoire. Il dispose d'un tas de tuners TV qui enregistrent / écrivent plusieurs fichiers mpeg2 gigantesques simultanés (au moins 3-8 Go chacun) sur un disque dur 24/7. Selon la façon dont mon ordinateur enregistre des émissions de télévision, après 1 à 3 jours, mon ordinateur devient lent.
En regardant simplement le Gestionnaire des tâches de Windows, il semble que je n'ai pas beaucoup de grandes applications ouvertes; et, beaucoup de "mémoire disponible". Même si je ferme tous les processus actifs, le PC reste lent. Cependant, lorsque j'utilise RamMap, je peux voir que ces gros fichiers mpeg2 deviennent des fichiers mappés dans la liste de veille active; ce qui au fil du temps rend mon PC très lent. Si je sélectionne "Liste d'attente vide" dans RamMap, mon PC devient immédiatement extrêmement réactif; comme si je venais de le redémarrer. Je ne peux rien faire d'autre pour remédier à la lenteur. En fait, le PC ne se remettra jamais de cette lenteur à moins de vider la liste de secours ou de redémarrer.
J'ai un utilitaire de ligne de commande, EmptyStandbyList.exe, que j'ai trouvé qui purge silencieusement la liste de secours au lieu d'avoir à le faire dans l'interface graphique de RamMap. Cependant, malheureusement, il purge également les petits éléments de la liste de veille qui sont très utiles à des fins de performances pour rester dans la liste de veille.
Lors d'une recherche sur Google, j'ai trouvé d'autres personnes qui ont presque le même problème que moi. Cependant, la plupart de leurs questions restent sans réponse; sans réelle explication de pourquoi cela se produit; et, aucun moyen définitif de résoudre le problème autre que la technique "Empty standby list".
J'ai vu des mentions d'un utilitaire / service MS appelé "Dynamic Cache"; mais je ne sais pas si ça guérit spécifiquement ce que je veux En outre, la version Win7 / Win2008 R2 de celui-ci semble être uniquement disponible via le support MS. J'ai également vu quelques utilitaires qui définissaient les "limites de cache NT min / max"; mais ceux-ci semblent être spécifiques aux ensembles de travail pour les processus, pas aux listes de secours.
J'espère que quelqu'un qui peut sortir des sentiers battus peut penser à un remède plus gracieux pour moi au lieu de devoir utiliser brutalement vider régulièrement la liste d'attente complète; et j'espère avoir une explication définitive du symptôme que moi (et d'autres personnes) voyons. La raison pour laquelle j'ai mentionné "hors des sentiers battus" est qu'il y a déjà beaucoup de gens qui aiment simplement dire comment les fichiers mappés et les priorités des listes de réserve "devraient" fonctionner sur papier; ce qui n'est pas très utile pour moi.
la source
Réponses:
La liste d'attente est le cache Superfetch et le «cache dynamique» corrige un problème différent. Le service résout un problème où le cache des métadonnées NTFS est trop élevé. Mais Stadnbylist et ce cache sont deux choses différentes. Le cache NTFS est affiché en tant que mémoire utilisée, tandis que le cache de secours contient des données, mais peut être vidé très rapidement si vous créez vraiment cette mémoire pour y stocker des données.
Sur le forum sysinternals, l'utilisateur wj32, l'auteur de Process Hacker, a créé un outil en ligne de commande qui fait ce que vous voulez:
http://forum.sysinternals.com/rammap-empty-standby-list_topic27297_post132769.html#132769
Essayez-le s'il "résout" votre problème.
la source
Se pourrait-il que la lenteur vienne de Windows forçant des choses à être chargées / enregistrées à partir du lecteur Swap, qu'à chaque vidéo enregistrée, la liste de veille s'allonge et avec un gros lecteur Swap, d'autres programmes (d'arrière-plan) sont maintenant poussés vers le lecteur Swap, ralentir la machine.
Si ce PC n'est utilisé que pour enregistrer des émissions de télévision, une solution pourrait être de rendre le lecteur Swap aussi petit que Windows le permet, ce qui est, je crois, de 16 Mo. Ne désactivez pas totalement le lecteur Swap, car Windows créera alors un lecteur Swap en secret.
Certains comment je ne peux pas imaginer que Windows deviendrait lent, s'il ne faisait que lire les données de la RAM, alors qu'aucun nouveau programme n'est chargé à partir du disque.
Qoute à partir du document MS http://download.microsoft.com/download/7/E/7/7E7662CF-CBEA-470B-A97E-CE7CE0D98DC2/MemorySizingGuidanceWin7.docx :
"Windows 7 SuperFetch ™ fonctionne avec le gestionnaire de mémoire pour définir les priorités des pages de la liste de veille. Les pages récemment placées dans la liste de veille commencent avec une priorité élevée, qui diminue lentement avec le temps.
Si le système ne dispose pas de suffisamment de mémoire pour gérer la charge de travail, seul un petit pourcentage des pages de la liste de secours ont une priorité faible. En surveillant le nombre de pages à différentes priorités, vous pouvez déterminer si le système gagnerait à augmenter la quantité de RAM installée. "
Globalement, l'objectif est de garantir que le système peut conserver en mémoire les pages récemment référencées et disposer de suffisamment de mémoire disponible pour répondre à tout besoin de mémoire immédiat. "
Peut-être que le programme d'enregistrement TV, car il continue de fonctionner et ne s'arrête pas, a chaque page qui va à la liste de veille marquée comme la priorité la plus élevée en poussant d'autres choses, ce qui accélérerait normalement Windows. Vous pourriez penser que ces choses sont libérées lorsque la mémoire est insuffisante et / ou lorsqu'il n'y a pas de fichier Swap que Windows ne peut pas secrètement commencer à utiliser massivement le lecteur Swap, ce qui ralentit les choses. Cela suppose que les données de la liste de secours ne seront pas chargées sur le lecteur Swap.
la source