Vuoi che Visual Studio 2010 smetta di usare l'unità quando c'è molta RAM in Windows 7 a 64 bit


11

Aggiornerò il mio sistema per utilizzare 16 GB di RAM DDR3 in Windows 7 a 64 bit e Visual Studio 2010 Ultimate. La CPU sarà di 6 core 3.2Ghz. Faccio molte compilazioni / giorno e il mio obiettivo per VS è mostrare una pagina Web in pochi secondi dopo aver apportato una modifica al codice dietro.

Ho notato che Visual Studio esegue molte operazioni di I / O (da led HD) con l'unità durante il suo lavoro. Vorrei mettere in memoria tutto ciò di cui VS ha bisogno, comprese le cartelle temporanee, i file di sistema, il mio codice, ecc. Voglio solo che VS sia velocissimo . Il mio disco principale è un SSD, che è veloce e voglio persino che VS non lo usi. La RAM è super veloce rispetto a qualsiasi altra cosa.

So che VS 2010 è ancora a 32 bit, quindi utilizzerà un massimo di 4 GB, tuttavia tutte le altre app aperte (browser, Outlook, File Explorer ... ecc.) Possono utilizzare qualsiasi cosa rimanga dai 12 GB e consentire a VS di spostarsi liberamente nel suo spazio di memoria dedicato da 4 GB.

La mia domanda : quali impostazioni e modifiche posso eseguire su Windows 7 e VS 2010 in modo che VS 2010 dedichi e utilizzi più memoria possibile e la blocchi e in modo che utilizzi il disco rigido il meno possibile? Windows 7 64 e VS sono già ottimizzati per questo e non si può fare molto altro. Un disco RAM sarebbe d'aiuto? Pensa a questo come se stessi cercando di eliminare l'unità.

Sono a conoscenza di maggiori probabilità di perdita di dati con perdita di potenza, ma al momento non è un problema. Supponiamo che non siano presenti dipendenze esterne (database, velocità di rete ...) che potrebbero rallentare VS. La deframmentazione del disco non aiuta molto.


Poiché ciò si riferisce più a come impostare i dischi RAM e all'utilizzo della memoria eseguibile che alla programmazione, votando per passare al superutente.
jball,

1
@jball Non sono d'accordo, è correlato alla programmazione abbastanza da rimanere in agguato, IMHO, dal momento che molti sviluppatori VS potrebbero beneficiare di una tale configurazione.

Ho messo la domanda qui perché ho bisogno di persone che sappiano come Visual Studio funzioni intimamente. Se è solo in serverfault, probabilmente otterrò suggerimenti di ottimizzazione generici su Windows (ancora buoni consigli). Non mi dispiace metterlo in entrambi i siti comunque.
Tony_Henrich,

Ho una domanda correlata in serverfault. serverfault.com/questions/142203/…
Tony_Henrich il

Risposte:


6

Hai già quello che stai chiedendo. Con così tanta RAM, avrai una cache di file system davvero grande. Visibile da Taskmgr.exe, scheda Prestazioni, cache. Qualsiasi disco che Visual Studio esegue sarà completamente istantaneamente man mano che i dati vengono scritti nella RAM. Il gestore della cache lo scriverà pigramente sul disco, facendo lampeggiare la spia di accesso all'unità durante il processo.

Allo stesso modo, le letture del disco accelereranno. Deve ancora uscire dal disco ma leggerà un'intera traccia anziché solo il settore file richiesto da Visual Studio. Rendendo molto probabile che la prossima lettura uscirà dalla RAM invece di dover essere recuperata dal disco.

Funziona così bene (ed è sicuro) che i dischi RAM non vengono più utilizzati.


Ho anche visto VS mentre scrivevo il disco e ho 6 GB che non sono pieni. Penso che VS possa usare le bandiere che impongono i dati all'archiviazione su disco. Deve pensare che i file di output siano cose preziose!
Zan Lynx,

Hmm, che tipo di progetto genera 6 gigabyte di codice eseguibile?

@Hans: per riformulare. Il mio sistema ha 6 GB di RAM che non sono completamente esauriti e dovrebbero essere disponibili come cache di scrittura su disco per i 100 MB di file di output generati dalla build del progetto.
Zan Lynx,

1
@zan - usa ProcMon di SysInternals per scoprire cosa sta facendo il disco.
Hans Passant,

2

Sembra che tu debba prima creare un disco RAM. Non sono sicuro degli strumenti per farlo in Windows 7; forse qualcun altro avrà un'idea. Ma questo dovrebbe gestire tutte le modifiche necessarie sul lato Windows, per quanto riguarda il disco. L'unica cosa che aggiungerei è impostare la tua directory temporanea sul disco RAM. Questo è memorizzato in variabili d'ambiente come TMP e TEMP. Di solito è anche nelle variabili di sistema e utente; assicurati di cambiare entrambi.

All'interno di Visual Studio, è quindi necessario assicurarsi che tutto ciò che è possibile impostare come opzioni di percorso in Visual Studio faccia riferimento al disco RAM. Ciò include le directory di input e output del progetto e qualsiasi directory temporanea di cui potrebbe aver bisogno, sebbene teoricamente queste dovrebbero essere tutte escluse dalle variabili di ambiente TMP / TEMP.

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.