Gestion mémoire sous XP

Démarré par Gér@rd, Novembre 14, 2011, 15:02:22

« précédent - suivant »

Gér@rd


Récemment, j'ai augmenté la mémoire physique de mon vieux PC Windows (HP sous Windows XP, Pentium IV à 3Ghz, 1 Go mémoire, disques SATA) que je soupçonnais d'être un peu juste en taille mémoire.

Un copain m'ayant passé 2 barettes adéquates de 1 G0, je suis donc passé de 1 Go à 2,5 Go cad 2 fois (1Go + 256Mo). Je n'ai constaté aucune amélioration (par exemple en vitesse d'affichage d'une série d'images).

Hier, j'ai fait un essai en désactivant complétement la mémoire virtuelle (fichier d'échange à zéro) et là j'ai constaté une nette amélioration ! Quelqu'un aurait-il une idée de taille optimale (du fichier de swap) à déclarer permettant à la fois l'utilisation de la mémoire physique réelle ET la mémoire virtuelle .


Jean-Claude Gelbard

#1
Salut, Gér[at]rd ! Toi, le gourou des appareils de collection, tu cales sur un problème de gestion mémoire sous Windows...
Je constate donc que tu avais 4x256 Mo et que tu as remplacé 2 barrettes de 256 par des 1 Go.
Pour savoir où tu en es, côté mémoire, le plus simple est encore, si tu ne l'as jamais fait, de lancer le gestionnaire des tâches en appuyant simultanément sur les touches CTRL+ALT+SUPPR de ton clavier. Tu ouvriras une fenêtre ressemblant à celle ci-dessous. En cliquant sur l'onglet "Performance", tu pourras voir ce qui se passe dans ton PC :
1. UC utilisée (à l'instant T) : info intéressante mais pas forcément utile.
2. Historique de l'utilisation du processeur : autant de fenêtres que tu as de "coeurs". Si ton P IV en a 2, tu auras 2 fenêtres ; le Core i7/820 en a 4, chacun pouvant traiter 2 "threads" en parallèle : donc, 8 fenêtres.
3. Fenêtre mémoire : ça, c'est plus intéressant ! C'est la mémoire utilisée à l'instant T ; l'historique, à côté, te permet de repérer la valeur max en un temps donné ; juste en dessous, il y a une case Mémoire Physique (Mo) ; en face de "Totale", tu devrais voir la valeur 2560. S'il y a moins, c'est que toute la mémoire que tu as installée n'est pas prise en compte : problème !
Ce qui est important, c'est que la mémoire utilisée (max) soit toujours inférieure à la mémoire totale ! Sinon, le proc va passer plus de temps à faire des échanges de pages mémoire avec le disque, évidemment, qu'à faire des calculs, et les perfs s'effondrent : entre 10 nanosecondes de temps d'accès mémoire et 15 millisecondes de temps d'accès disque,  le rapport est quand même de 1,5 millions...
Ce qui est possible, c'est qu'en supprimant le fichier d'échange, tu forces le proc à n'utiliser que la mémoire vive, mais c'est quand même assez surprenant... Tiens-nous au courant !
NB : dans l'exemple ci-dessous, je traitais un batch d'environ 160 fichiers RAW de 24 Mpixels (Sony Alpha 900) avec DxO, qui utilise à fond les ressources à disposition, y compris le proc graphique (AMD Mobility Radeon HD 4650) pour le traitement des pixels, et traite 8 fichiers en parallèle. Il est clair que sous un Windows 32 bits, j'étais dans les choux, avec une limite à 3 Go de RAM. Ici, sans rien faire d'autre, j'en suis déjà à 3,49 Go !

Gér@rd


Citation de: JCGelbard le Novembre 14, 2011, 16:56:32"Ce qui est possible, c'est qu'en supprimant le fichier d'échange, tu forces le proc à n'utiliser que la mémoire vive, mais c'est quand même assez surprenant... "

En fait, pour surveiller les tâches, l'UC, la mémoire, etc... j'emploie depuis des années Procexp.exe de Sysinternals (qui a d'ailleurs dû être repris par Microsoft). Et mes 2,5 Go sont bien là et la demande est toujours très inférieure (même quand je constatais des ralentissements).

Comme tu le dis, j'ai plutôt l'impression que Windows XP utilise la mémoire virtuelle alors qu'il reste encore plein de mémoire physique libre ! Ce que je ne sais pas (je ne suis pas spécialiste Windows), c'est s'il y a un moyen de lui faire utiliser la mémoire physique en priorité !