Ik heb me altijd afgevraagd waarom Windows je niet toestaat om een willekeurige grootte in te stellen voor de bestandssysteemcache. Wat als uw laptop een trage harde schijf heeft, maar veel beschikbaar systeemgeheugen? Zou u dat geheugen niet moeten kunnen maximaliseren om de toegang tot de harde schijf te versnellen?
Ik heb een licht gedocumenteerde tweak gevonden waarmee je Windows kunt vertellen meer cache te gebruiken voor de NTFS-"pool", wat de prestaties zou moeten verbeteren als je systeem de hele tijd veel bestanden opent en sluit zoals het mijne.
Volgens de Microsoft-documentatie :
Door het fysieke geheugen te vergroten, neemt niet altijd de hoeveelheid wisselgeheugengeheugen toe die beschikbaar is voor NTFS. Instelling geheugengebruik naar 2 verhoogt de limiet van het wisselbare poolgeheugen. Dit kan de prestaties verbeteren als uw systeem veel bestanden in dezelfde bestandsset opent en sluit en nog geen grote hoeveelheden systeemgeheugen gebruikt voor andere toepassingen of voor cachegeheugen. Als uw computer al grote hoeveelheden systeemgeheugen gebruikt voor andere toepassingen of voor cachegeheugen, kunt u door het verhogen van de limiet van NTFS-wisselgeheugen en niet-wisselbaar poolgeheugen het beschikbare poolgeheugen voor andere processen verminderen. Dit kan de algehele systeemprestaties verminderen.
Ik ga deze wijziging zelf testen en ik hoop echt feedback te krijgen van onze uitstekende lezers hierover. Houd er rekening mee dat ik nog geen benchmarks heb uitgevoerd, dus ik kan nog niet bevestigen dat dit een groot voordeel oplevert voor de prestaties in de echte wereld.
Commandoregel Hack
Open een opdrachtprompt in de beheerdersmodus door met de rechtermuisknop te klikken en Uitvoeren als beheerder te kiezen, of typ cmd in het startmenu zoekvak en gebruik Ctrl + Shift + Enter.
Typ de volgende opdracht om de cache-instelling te verhogen:
fsutil gedrag ingesteld geheugengebruik 2
Typ deze opdracht om de huidige waarde te controleren:
fsutil gedrag opvragen geheugengebruik
Gebruik deze opdracht om de instelling terug te zetten naar de standaardinstelling:
fsutil gedrag ingesteld geheugengebruik 1
Zoals altijd kunnen deze ‘lichtjes’ gedocumenteerde instellingen uw systeem verknoeien, dus voer het op eigen risico uit. U zult waarschijnlijk ook de machine opnieuw moeten opstarten om enig verschil te zien.
Handmatige registerhack
U kunt deze waarde ook instellen door een registerparameter te wijzigen. Open regedit.exe via het zoek- of uitvoervak van het startmenu en navigeer vervolgens naar de volgende sleutel:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ FileSystem
Dubbelklik op de NtfsMemoryUsage-toets aan de rechterkant en verander de waarde in 2. Hier zijn de beschikbare waarden:
- Niet ingesteld: 0
- Standaard instellen: 1
- Cache verhogen: 2
Volgens de documentatie is de standaardinstelling “1”, maar standaard staat de sleutel op “0”. Typisch in dat scenario betekent de instelling "0" "Niet ingesteld", wat betekent dat het systeem de standaardinstelling gebruikt. U zou de waarde moeten kunnen veranderen in "0" of "1" om dit terug te zetten naar de standaardwaarde.
Deze instelling werkt ook in Windows Server 2003.