Che cos'è Windows Prefetch e Superfetch?

Prefetch è una funzionalità, introdotta in Windows XP e ancora utilizzata in Windows 10, che memorizza dati specifici sulle applicazioni eseguite per aiutarli ad avviarsi più rapidamente. Prefetch è un algoritmo che aiuta ad anticipare i problemi di cache (le volte in cui Windows richiede i dati che non sono memorizzati nella cache del disco) e memorizza i dati sul disco rigido per un facile recupero.

Superfetch è una funzionalità che tenta di determinare quali applicazioni verranno lanciate e quindi carica tutti i file e i dati necessari in memoria. Entrambe queste funzionalità richiedono alcune operazioni di lettura e scrittura per funzionare.

Questi dati si trovano in C: \ Windows \ Prefetch e, come la teoria va, la cancellazione periodica dei dati in questa cartella (diciamo, una volta al mese) migliorerà le prestazioni. I file di prefetch sono file con estensione "PF" all'interno della directory di Prefetch:

Quando vengono successivamente avviate nuove applicazioni, verranno creati nuovi dati di prefetch, il che potrebbe significare inizialmente prestazioni leggermente ridotte. Tuttavia, con le voci meno recenti eliminate, ci saranno meno dati da analizzare e Windows dovrebbe essere in grado di localizzare i dati di cui ha bisogno più rapidamente. Eventuali guadagni di prestazioni che potresti vedere saranno minori (se ne vedi affatto), ma gli utenti che desiderano spremere ogni ciclo della CPU dai loro computer vorranno provare questo.

Si noti che l'eliminazione dei dati di prefetch può aumentare leggermente il tempo di avvio, ma solo la volta successiva che si avvia Windows. Ogni avvio successivo dovrebbe procedere normalmente, poiché i dati di precaricamento saranno già presenti per i programmi che Windows carica all'avvio.

La configurazione di Prefetcher è memorizzata nel registro di Windows nel seguente percorso:

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Gestione memoria \ PrefetchParameters.

Il EnablePrefetcher il valore può essere impostato come uno dei seguenti:

  • 0 = Disabilitato
  • 1 = Prefetch di avvio dell'applicazione abilitato
  • 2 = Boot prefetching abilitato
  • 3 = Applaunch e Boot abilitati (Ottimale e Predefinito)

Dovresti disabilitare Prefetch e Superfetch?

È un mito noto modificare il valore predefinito in qualsiasi valore diverso da 3 per accelerare le prestazioni. Se si nota un problema di prestazioni causato da un software "optimizer" che ha modificato questo valore del Registro di sistema su un valore diverso da 3, modificarlo nuovamente.

C'è un'eccezione a questa regola e cioè se stai usando un'unità SSD sul tuo computer. Se si dispone di un disco rigido tradizionale, assicurarsi di mantenere prefetcher abilitato con un valore di 3. Tuttavia, se si dispone di un'unità SSD, i benefici del miglioramento delle prestazioni vengono persi a causa di operazioni di scrittura non necessarie. Con i dischi rigidi allo stato solido, le operazioni di scrittura aggiuntive consumeranno più velocemente il disco. Inoltre, poiché gli SSD sono così veloci, le applicazioni si caricano altrettanto velocemente senza prefetch e superfetch.

Per disabilitare il precaricamento, basta modificare il valore del registro su 0. Per disabilitare il superfetch, devi fare clic su start e type in services.msc. Scorri verso il basso fino a quando vedi Superfetch e fai doppio clic su di esso. Per impostazione predefinita, Windows 7/8/10 dovrebbe disabilitare automaticamente il prefetch e il superfetch se rileva un'unità SSD, ma questo non era il caso sul mio PC con Windows 10.

Se la Stato è In esecuzione, quindi fare clic su Stop pulsante e quindi modificare il Tipo di avvio a Disabilitato. Anche in questo caso, è sufficiente disabilitare il prefetch e il superfetch per i computer con hard disk allo stato solido. Per i normali dischi rigidi, possono effettivamente contribuire ad aumentare le prestazioni nel tempo. Se avete domande, sentitevi liberi di commentare. Godere!