Aumentare la dimensione della cache della memoria FileSystem in Vista
Mi sono sempre chiesto perché Windows non ti permette di impostare una dimensione arbitraria per la cache del filesystem. Cosa succede se si dispone di un disco rigido lento nel laptop, ma un sacco di memoria di sistema disponibile? Non dovresti essere in grado di massimizzare quella memoria per accelerare l'accesso al disco rigido?
Ho trovato un tweak leggermente documentato che ti consentirà di dire a Windows di usare più cache per il "pool" NTFS, che dovrebbe aumentare le prestazioni se il tuo sistema si apre e chiude un sacco di file tutto il tempo come il mio.
Secondo la documentazione di Microsoft:
L'aumento della memoria fisica non aumenta sempre la quantità di memoria del pool di paging disponibile per NTFS. Ambientazione utilizzo della memoria a 2 aumenta il limite della memoria del pool di paging. Ciò potrebbe migliorare le prestazioni se il sistema sta aprendo e chiudendo molti file nello stesso set di file e non sta già utilizzando grandi quantità di memoria di sistema per altre applicazioni o per la memoria cache. Se il computer utilizza già grandi quantità di memoria di sistema per altre applicazioni o per la memoria cache, l'aumento del limite della memoria del pool di paging e non di paging NTFS riduce la memoria del pool disponibile per altri processi. Ciò potrebbe ridurre le prestazioni generali del sistema.
Testerò questo cambiamento da solo, e spero davvero di ricevere feedback dai nostri eccellenti lettori su questo. Tieni presente che non ho ancora eseguito alcun benchmark, quindi non posso ancora confermare che ciò porti a grandi benefici nelle prestazioni del mondo reale.
Command Line Hack
Aprire un prompt dei comandi in modalità Amministratore facendo clic con il pulsante destro del mouse e scegliendo Esegui come amministratore o digitare cmd nella casella di ricerca del menu Start e utilizzare Ctrl + Maiusc + Invio.
Digitare il seguente comando per aumentare le impostazioni della cache:
comportamento di fsutil set memoryusage 2
Per verificare il valore corrente, digitare questo comando:
comportamento fsutil query memoryusage
Per ripristinare le impostazioni predefinite, utilizzare questo comando:
comportamento di fsutil impostare memoryusage 1
Come sempre, queste impostazioni "leggermente" documentate possono rovinare il sistema, quindi eseguire a proprio rischio. Inoltre, è probabile che tu debba riavviare la macchina per vedere le differenze.
Registro manuale Hack
È inoltre possibile impostare questo valore modificando un parametro di registro. Apri regedit.exe attraverso la ricerca del menu di avvio o la casella di esecuzione, quindi scorri verso il basso fino alla seguente chiave:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ FileSystem
Fare doppio clic sulla chiave NtfsMemoryUsage sul lato destro e modificare il valore su 2. Ecco i valori disponibili:
- Non impostato: 0
- Impostato su Default: 1
- Aumentare la cache: 2
Secondo la documentazione, l'impostazione predefinita è "1", ma per impostazione predefinita la chiave è impostata su "0". Tipicamente in quello scenario l'impostazione di "0" significa "Non impostato", il che significa che il sistema utilizza l'impostazione predefinita. Dovresti essere in grado di modificare il valore su "0" o "1" per ripristinare questo valore sui valori predefiniti.
Questa impostazione funziona anche su Windows Server 2003.