Punto informatico Network
Canali
20080829220708

Guida definitiva all'ottimizzazione della memoria

04/10/2006
- A cura di
Zane.
Trucchi & Suggerimenti - La gestione della memoria di Windows può essere realmente migliorata, ma fra bufale, utility fasulle e suggerimenti ormai obsoleti sono molte le procedure che possono sortire l'effetto esattamente contrario. Ecco una guida ragionata e pesata alla gestione della memoria.

Tag

Passa qui con il mouse e visualizza le istruzioni per utilizzare i tag!

memoria (2) , utility (1) , ottimizzazione (1) , swap (1) .

Valutazione

  •  
Voto complessivo 5 calcolato su 545 voti

Prima di procedere con i suggerimenti per ottimizzare la gestione della nostra memoria vediamo di sfatare qualche mito.

Memory Optimizer

Chi non ha mai visto quelle piccole utility che promettono di liberata la memoria? Ce ne sono a bizzeffe, alcune gratuite altre addirittura a pagamento.

Si tratta di programmi in cui viene mostrata una barra che indica la quantità di memoria disponibile: con un click su un pulsante la memoria viene "magicamente" liberata. Insomma, sembra che sia stata fatta pulizia e che vi sia più RAM a disposizione dei programmi.

In realtà non solo questo trucchetto non funziona, ma può addirittura peggiorare (molto) le prestazioni del sistema! Infatti quando questi programmini fanno "il proprio lavoro", scaricano quanto più possibile in memoria virtuale: insomma, di fatto RAM viene liberata.... ma dai programmi attualmente in esecuzione!

Se avete una di queste utility installate, fate una prova: aprite qualche programma un po' pesante (come Photoshop, Dreamweaver, 3D Studio Max o altro) e lanciate quindi la procedura "magica" della vostra utility. Tornate quindi ad uno dei programmi aperti: notate una pesantezza inaspettata ed il disco comincia a rumoreggiare? Si tratta di Windows che ripristina in RAM il programma appena swappato su disco dall'utility...

Potrebbe anche andare peggio: queste utility potrebbero essere anche più aggressive, e tentare di swappare intere porzioni di kernel. Questo si traduce in un aumento pauroso del ritardo di risposta del sistema operativo... ed anche in un crash del sistema, in caso qualcosa vada storto!

Insomma, i magici ottimizzatori di memoria nella mia esperienza non solo non funzionano, ma addirittura possono peggiorare le cose... statene lontani!

Deframmentatori di RAM

Sono simili agli ottimizzatori di memoria, ma questi promettono di deframmentare RAM, di fatto spostando le parti degli stessi programmi caricati in memoria in locazioni contigue.

Anche in questo caso si tratta di una cosa ben poco utile: contrariamente al disco, in cui i dati vengono letti da una testina motorizzata che, in caso di frammentazione, deve effettivamente saltare da parte a parte, la lettura di dati RAM avviene mediante trasferimento diretto di cariche elettriche: lo stesso acronimo "RAM" significa "Random Access Memory" ovvero "Memoria ad Accesso Casuale" (in cui il "casuale" deve intendersi come "non-sequenziale", ovvero "impiega lo stesso tempo a accedere all'inizio, alla fine o dalla parte opposta della locazione correte").

Anche i deframmentatori sono quindi inutili: anzi, sebbene meno peggio degli ottimizzatori, anche i deframmentatori fanno qualche piccolo danno: poiché essi stessi devono essere caricati in RAM per poter funzionare, occupano una porzione di memoria che il sistema avrebbe invece potuto utilizzare per caricare programmi utili!

Eliminare la cartella Prefetch

In molti parlano di come eliminare la cartella windowsprefetch possa portare a miglioramenti delle performance. Nel mio articolo "Pulizia di Windows XP" io stesso raccomando di eliminarne di tanto il contenuto.

Questa però è una procedura che può liberare alcuni megabyte di spazio su disco, ma non migliorare la gestione della memoria: anzi (come preciso anche nel suddetto articolo) la pulizia della cartella prefetch porterà ad un rallentamento nell'avvio dei programmi, almeno fino a quando i file eliminati non verranno ricreati. Quindi in questo caso sta a voi scegliere se preferite un sistema più veloce o risparmiare qualche megabyte di spazio su disco: personalmente prediligo la seconda, ma è una scelta strettamente soggettiva.

/Prefetch: 1

Si dice che aggiungendo questo fantomatico switch dopo un programma si migliori l'avvio.

In realtà questo non è assolutamente vero: si tratta di uno switch utilizzato da Windows Media Player che ben poco ha a che vedere con le prestazioni! Per maggiori informazioni al riguardo rimando a questo articolo su blogs.msdn.com, in questa sede mi limito ad affermare solo che lo switch /Prefetch: 1 è del tutto inutile!

EnablePrefetcher

Alcuni siti suggeriscono di modificare un valore nel registro, impostando EnablePrefetcher=4/5/6 alla voce

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control Session Manager\Memory Management\Prefetch\Parameters

http://msdn.microsoft.com documenta che gli unici valori disponibili per quel valore sono da 0 (disattivato) fino a 3 (valore di default e il più performante). Anche in questo caso si tratta quindi di una bufala: i valori maggiori di tre non hanno alcun significato per il kernel.

EnableSuperfetch

Un altro falso mito narra che sarebbe possibile abilitare la funzionalità di Superfetch anche nelle versioni correnti di Windows, semplicemente modificando un valore del registro.

Se è vero che Windows Vista includerà una funzionalità di ottimizzazione chiamata appunto Superfetch, è stato ormai ampiamente confermato che questa funzionalità non è presente nel kernel di Windows 2000/XP/2003. Aggiungere la chiave suddetta è quindi del tutto inutile.

Disabilitare la memoria virtuale

È una dei consigli più vecchi del mondo per chi dispone di molta memoria... ma anche uno dei sbagliati!

Il supporto Microsoft documenta da tempo e con grande chiarezza come funzioni realmente l'indirizzamento della memoria nei sistemi Windows: il presupposto è sempre che la memoria virtuale sia presente, anche in caso non venga utilizzata.

Spostare il file di paging su un'altra partizione

Anche in questo caso si tratta di una vecchia ed erronea credenza: se è vero che spostando la memoria virtuale su di una unità a disco diversa da quella su cui risede il sistema operativo porta ad interessanti vantaggi, lo stesso non si può dire se semplicemente si sposta il file su di un'altra partizione sul medesimo disco.

Di più, alcuni riferimenti sul sito Microsoft fanno notare che spostando lo swap su di un'altra partizione ma nella stessa unità disco del sistema operativo si potrebbero addirittura peggiorare le cose, poiché la testina dovrebbe fare sempre molti spostamenti fra sistema operativo e swap...

IoPageLockLimit, SecondLevelDataCache, AlwaysUnloadDLL, LargeSystemCache

Si tratta di altri settaggi per il registro: è sufficiente però fare un giro sul sito di supporto di Microsoft per scoprire che se le prime tre voci sono assolutamente obsolete ed ormai non più usate da tempo, l'ultima è ideonea unicamente per i sistemi utilizzati come server (equivale tra l'altro ad impostare Cache di sistema nella finestra raggiungibile da Pannello di Controllo -> Sistema -> Avanzate -> Prestazioni -> Avanzate).

Insomma, nessuna delle quattro sortisce alcun miglioramento!

ClearPageFileAtShutdown

Si tratta di un settaggio veramente funzionante, ma che porta a notevoli riduzioni nella velocità di spegnimento: impostando una nuova entry chiamata ClearPageFileAtShutdown di tipo decimale ed impostata ad 1 in

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet Control\SessionManager\Memory Management

Si fa si che il sistema riempia di 0 il file di swap poco prima dello specgnimento, cancellando quasliasi traccia presente.

Un interessante tweak per gli ambienti in cui la riservatezza delle informazioni debba essere mantenuta ad altissimi livelli (penso in particolare a governi o istituti di credito) ma che può essere tranquillamente ignorata altrove.

Pagina successiva
Ottimizziamo davvero
Pagina precedente
Guida definitiva all'ottimizzazione della memoria

 

Segnala ad un amico

Tuo nome Tuo indirizzo e-mail (opzionale)
Invia a:
    Aggiungi indirizzo email
    Testo

    © Copyright 2021 BlazeMedia srl - P. IVA 14742231005

    • Gen. pagina: 0.17 sec.
    •  | Utenti conn.: 67
    •  | Revisione 2.0.1
    •  | Numero query: 42
    •  | Tempo totale query: 0