Ram da 16 GB: imponi a Windows 7 di utilizzare quanta più RAM possibile?


20

Mi chiedevo se c'è un modo per configurare Windows per consumare più RAM. Ho un PC desktop con 16 GB di RAM e solo 2 viene utilizzato su un normale carico di lavoro. Il massimo a cui ho assistito finora è di 6 GB. C'è un modo per dire a Windows di ottimizzare il suo funzionamento interiore per un tale ambiente?


4
Uh ... perché? Se non stai eseguendo nulla che BISOGNA di quella RAM, non la userà ...
Shinrai,

3
Non dimenticare che la memoria libera verrà utilizzata come cache dei file. Pertanto non è inutile ...
Robert,

1
Non dimenticare che la maggior parte dei programmi non sono scritti per sfruttare tutta quella RAM. Potresti lanciare 60 GB di RAM in un programma e non cambierà le sue abitudini. A meno che non si tratti specificamente di utilizzare tutta la RAM possibile (occorrenze rare in questi giorni), Windows non può fare nulla. Tutto ciò che il sistema operativo può fare è modificare i pollici e attendere l'applicazione. Ad esempio, supponiamo che qualcuno stia trasferendo un mucchio di note sul proprio computer. Bene, tutto quello che sanno fare è scrivere. Tutti i loro trucchi e scorciatoie sono orientati alla digitazione più veloce. Questo è ciò che sono stati programmati per fare.
surfasb,

1
Passa loro uno scanner e diranno "Non ero programmato per usarlo." e torna a digitare. Puoi mettere tutti i più recenti e grandi scanner e OCR davanti a loro, ma faranno quello che erano programmati, anche se ci avvii tutta la RAM. E non c'è nulla che il sistema operativo possa fare al riguardo. Gli unici programmi che useranno davvero tutta quella memoria sono i programmi server che caricano tutti i loro indici di database in memoria. Odio spezzartelo, ma la tendenza è scrivere programmi che usano meno memoria.
surfasb,

3
Usa Chrome e inizia ad aprire le schede. Non ti lamenterai a lungo della RAM inutilizzata.
Dan Dascalescu il

Risposte:


37

Probabilmente lo sta già usando. In questo esempio:

  • RAM totale: 12 GB
  • Usato: 4,45 GB

Si potrebbe pensare che ci siano 7,55 GB di RAM inutilizzata. Sbagliato. Windows lo utilizza come cache, mantenendo i dati precedentemente utilizzati che non sono più necessari o caricando in anticipo i dati a cui si accede frequentemente (principalmente roba del sistema operativo come librerie e prefetch - non sta caricando i file di parole o altro). Con un po 'di fortuna, alcuni di essi verranno riutilizzati per migliorare le prestazioni.

  • Memorizzato nella cache: 7,8 GB (il più contrassegnato come disponibile perché per altre cose può usarlo in qualsiasi momento)
  • In realtà gratuito: 16 megabyte.

inserisci qui la descrizione dell'immagine


3
caspita, non l'ho mai notato. Ciò spiega sicuramente perché "più RAM è sempre meglio"
kluka il

Temo che questa risposta sia errata. Ho 32 GB di RAM e in genere solo 8 GB vengono utilizzati per la memorizzazione nella cache dei file - non ne ho mai visti di più.
user626528

Allo stesso modo ... Ho 64 GB e non ho mai visto più di 13 GB utilizzati per la memorizzazione nella cache
Basic

Perché l'utilizzo del file di paging non viene mostrato qui?
skan,

12

Lo è già.

Ciò che è importante notare è la differenza tra la memoria che deve essere eseguita dal sistema e la memoria che è piacevole avere per la memorizzazione nella cache e simili. I 2 GB di memoria, a volte fino a 6 GB, sono la memoria che Windows deve conservare in memoria per eseguire i programmi o affrontare seri problemi di blocco dei file di paging. Tuttavia, ciò non significa che gli altri 14 GB non siano in uso! Al contrario, il resto della memoria viene utilizzato pesantemente per la memorizzazione nella cache dei file dal disco e da altri archivi di dati usati di frequente ma lenti. Tuttavia, poiché si tratta solo di cache, Windows non considera la memoria "in uso", ma può semplicemente scaricarla se ha bisogno di spazio per i dati effettivi dell'applicazione.

"Ma allora perché ho bisogno di un file di paging?"

Avere un file di paging consente a Windows di gestire la cache nel miglior modo possibile. Vedi, noi umani pensiamo di sapere una o due cose su come gestire al meglio circa 128 miliardi di bit di dati nel modo più efficace possibile. La verità è che non conosciamo lo squat rispetto all'efficienza algoritmica che un computer altrimenti tenta di utilizzare quando smettiamo di intrometterci e lasciamo che faccia la sua cosa.

Supponiamo che un programma abbia bisogno di 200 MB di memoria, ma accede frequentemente a 100 MB di quella memoria. Windows assegnerà 100 MB di memoria per l'applicazione (parte di quei 2 GB visualizzati), quindi allocerà 100 MB di file di pagina per il resto dello spazio necessario all'applicazione. E quando hai a disposizione la memoria di riserva, caricherà solo quei 100 MB dal file di pagina in memoria, in modo che sia seduto lì, sempre pronto. Quando Windows lo fa, sa che 100 MB di memoria sono ancora disponibili per esigenze più importanti: supponiamo che stai caricando un file di livello 100 MB per un gioco frequentemente, ogni paio di minuti circa, ma quell'applicazione utilizza solo quel extra memoria una volta al giorno (e mentre ci siamo, supponiamo che il resto della memoria sia già pieno di cache). Se quel ricordo restasse inattivo, mentre il livello di gioco viene caricato dal disco ogni volta? Ovviamente no! Windows scaricherà i dati dell'applicazione dalla cache e caricherà il livello di gioco nella cache, rendendo il gioco molto più veloce.


5

Con almeno 8 GB di memoria, ti suggerisco di provare a disabilitare il paging del kernel . Questo costringerà il tuo kernel in memoria invece di paginarne una parte e potresti ottenere un leggero aumento della reattività dal tuo sistema. Quello che non vorrei suggerire è disabilitare il file di paging, anche se probabilmente potresti cavartelo impostando un minimo di 1 GB e un massimo di 2 GB. Windows 7 è in realtà molto bravo a gestire la memoria e anche se probabilmente non si verificheranno problemi di memoria insufficiente disabilitando il file di paging, probabilmente avrà effetto su SuperFetch. Anche se 6 GB potrebbero essere utilizzati per l'esecuzione di programmi, Windows utilizzerà quasi tutto il resto della memoria per memorizzare nella cache i file che è probabile che si aprano in un determinato momento. Questo è SuperFetch (il fratello maggiore di Prefetch). Disabilitare il file di paging non ti darà quasi sicuramente alcun miglioramento nelle prestazioni e probabilmente ti sparerai ai piedi quando arriveranno i tempi di caricamento.


Mi dispiace ma impostare il valore del registro "DisablePagingExecutive" non è molto utile. Innanzitutto, tutto il codice critico in exec è già non tracciabile. In secondo luogo, qualsiasi cosa usata spesso non verrà pagata comunque (perché il cercapersone lo sa meglio). I tuoi commenti sul file di paging, tuttavia, sono corretti.
Jamie Hanrahan,

1

Disabilita il file di paging. Generalmente una cattiva idea, ma farà quello che vuoi.

Per fare ciò, vai su: Pannello di controllo \ Sistema e sicurezza \ Sistema \

Impostazioni di sistema avanzate \ impostazioni delle prestazioni \ scheda avanzata \ modifica (nella memoria virtuale) \ deselezionare automaticamente, fare clic su nessun file di paging

Questo è un esempio del perché è una cattiva idea non avere un file di paging. Se questo non può succedere a te (hai abbastanza RAM), allora non ci saranno problemi.

La rimozione completa del file di paging può causare un maggiore blocco del disco. Immagina uno scenario semplice in cui alcune app vengono avviate e richiedono l'80% della RAM esistente. Ciò costringerebbe l'attuale codice eseguibile a uscire dalla RAM, forse anche al codice del sistema operativo. Ora ogni volta che quelle altre app - o il sistema operativo stesso (!!) hanno bisogno di accedere a quei dati, il sistema operativo deve cercarle dall'archivio di backup su disco, portando a un notevole thrashing. Perché senza file di paging che fungono da archivio di backup per i dati transitori, le uniche cose che possono essere paginate sono eseguibili e DLL che avevano archivi di backup intrinseci per cominciare.

Da /server/23621/any-benefit-or-detriment-from-removing-a-pagefile-on-an-8gb-ram-machine


7
In generale, sconsiglioi di disabilitare il file di paging. I benefici che pensi di ottenere, in realtà non lo sei.
Darth Android,


Nel suo caso, se davvero non si avvicina mai, ci sono potenzialmente vantaggi significativi (niente più HD come un collo di bottiglia per molte cose può far sì che i processi funzionino MOLTO più velocemente). Potrebbe non valere la pena rischiare (quindi la mia "è generalmente una cattiva idea").
soandos,

Commento del downvoter?
soandos,

@soandos ho fatto un commento. La disabilitazione del file di paging peggiorerà le prestazioni.
Darth Android,

1

Non sono sicuro di questa risposta, ma mi sembrerebbe buon senso. Invece di disabilitare il file di paging, abbassalo alla dimensione minima consigliata di 200mb. Penso che il valore predefinito sia 3024mb? Ciò dovrebbe costringere la macchina a utilizzare più memoria fisica e aiutare anche le prestazioni HD.


1

Se disponi di Windows 7 Home Basic edition, il tuo sistema operativo non può comunque utilizzare più di 8 GB di RAM . Credo che nessuno lo abbia menzionato. Inoltre, alcuni processori non supportano anche 16 GB di RAM. Credo che sia necessario i5 o superiore per eseguire più di 8 GB di RAM. Non sono sicuro dei processori AMD, sebbene ci sia sicuramente un limite alla RAM indirizzato anche da un processore. Il tuo carico RAM sembra a posto e non fuori dal comune. Dovresti modificare un video o comporre musica a 24 bit per utilizzare 16 GB di RAM.


Vero per Windows 7 Home. Per Windows 10 Home Edition, tuttavia, il limite è di 128 GB su sistemi a 64 bit: msdn.microsoft.com/en-us/library/windows/desktop/…
Andreas Bergström
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.