Tout d'abord, ne placez pas votre fichier de page sur un SSD. Bien que les SSD se soient améliorés en matière de nivellement de l'usure, le fichier de page est écrit fréquemment et il dégradera votre SSD beaucoup plus rapidement que lors d'une utilisation générale.
Ce que beaucoup de gens ne comprennent pas, c'est que Windows n'a jamais vraiment de mémoire libre. Il y a quelques mégaoctets qui sont conservés libres pour des demandes ponctuelles, mais par ailleurs, la différence entre la mémoire d'application active en cours d'utilisation et la mémoire totale est généralement consommée par ce qu'on appelle la mémoire "standby".
Il s'agit de pages mémoire qui peuvent être vidées si nécessaire (la mémoire standby est un grand cache), donc du point de vue de l'application, elle est disponible, mais elle n'est en aucun cas inutilisée. Habituellement, elle fonctionne en tant que cache disque ou cache de fichier d'échange.
L'objectif de Windows est de conserver les données les plus susceptibles d'être utilisées dans ce cache standby, en fonction des schémas d'utilisation. Pour prendre un exemple construit, comparons la valeur relative de la mémoire privée d'un programme comme Windows Update (généralement configuré pour s'exécuter une fois par semaine), par rapport au fait de mettre en cache le contenu de votre bureau dans cette mémoire standby :
La plupart du temps, Windows Update est inactif. Il occupe de la mémoire et pour la plupart, ne fait absolument rien de précieux avec, en attendant que l'horaire arrive. En revanche, le contenu de votre dossier de bureau pourrait être consulté constamment, surtout si vous aimez y enregistrer des fichiers.
Dans ce cas, ce que fera Windows, c'est de supprimer de la mémoire allouée à Windows Update (même si la mémoire n'est pas "pleine"), et d'utiliser l'espace ainsi libéré en RAM pour mettre en cache le contenu de votre bureau. Cela se traduit par de meilleures performances pour vous.
Windows prend des milliers de décisions comme celles-ci et gère un cache disque pour des centaines de fichiers constamment écrits par des services en arrière-plan tout en essayant d'équilibrer cela avec les demandes de mémoire des applications actives. Parfois, il se trompe momentanément, et nous devons peut-être attendre qu'il ramène les données en mémoire lorsque nous passons à une application qui dormait en arrière-plan depuis un certain temps. Mais ce à quoi vous devez penser, c'est si cela avait conservé cette application entièrement en mémoire, combien d'autres applications seraient alors ralenties en attendant que les écritures et lectures sur disque se terminent, ou seraient elles-mêmes contraintes de libérer de l'espace ? Et si c'étaient des applications que vous utilisiez entre-temps ?
Les applications allouent fréquemment des pages mémoire qui sont très rarement utilisées, telles que le code de démarrage (utilisé une fois puis plus nécessaire), le code d'arrêt (utilisé une fois puis plus nécessaire), ou le code de mise à jour. Il n'est pas pratique de tout conserver en mémoire lorsqu'il y a des utilisations bien plus importantes, donc une fois que Windows identifie des sections de code qui n'ont pas été nécessaires pour l'opération actuelle d'une application, il les envoie joyeusement dans le fichier de page, même s'il aurait techniquement pu les garder en mémoire.
(Et en fait, en fonction des applications, les systèmes peuvent souvent allouer plus de mémoire que ce qu'ils ont réellement, en s'attendant à ce que la majeure partie soit mise en cache. Si vous regardez un détail du décompte de mémoire, la "Commit" ou "Charge de commit" est la quantité de mémoire que Windows a allouée à diverses applications. Le fichier de page est utilisé pour garantir cette mémoire, même s'il n'y a pas assez de RAM physique pour la couvrir.)
Je viens de remarquer que vous avez fait une distinction entre la mémoire disponible et la mémoire libre dans votre question ; mes excuses si vous vous sentez sermonné et connaissiez déjà la différence. Idéalement, la mémoire libre est toujours de 0. Cependant, bien que la mémoire standby soit une mémoire pouvant être libérée, elle n'est pas toujours une mémoire qui peut être libérée rapidement. Si j'essaie d'écrire un fichier de 1 Go sur le disque, Windows va le stocker dans un cache disque en mémoire s'il le peut, puis l'écrire lentement sur le disque dur en arrière-plan. Si une application a besoin de demander 50 Mo de mémoire supplémentaire, mais qu'il n'y en a pas de disponible car ce cache disque énorme est encore en cours de vidage, l'application va être gelée jusqu'à ce qu'elle soit disponible. Avoir un petit tampon à disposition permet au système de résoudre ce problème avec un minimum de latence du point de vue de l'utilisateur. Vous pourriez aussi vous retrouver avec des tampons plus grands que la normale si Windows vient d'effacer une partie du cache standby ou a libéré beaucoup de mémoire en cours d'utilisation, mais n'a pas encore rempli avec de nouvelles données de cache.