Ingin Visual Studio 2010 berhenti menggunakan drive ketika ada banyak RAM di Windows 7 64 bit

11

Saya akan memutakhirkan sistem saya untuk menggunakan RAM DDR3 16GB dalam Windows 7 64 bit dan Visual Studio 2010 Ultimate. CPU akan menjadi 6 core 3.2Ghz. Saya melakukan banyak kompilasi / hari dan tujuan saya untuk VS adalah untuk menampilkan halaman web dalam hitungan detik setelah membuat perubahan dalam kode di belakang.

Saya perhatikan Visual Studio melakukan banyak operasi I / O (dari HD led) dengan drive selama bekerja. Saya ingin meletakkan semua kebutuhan VS dalam memori termasuk folder sementara, file sistem, kode saya, .. apa pun. Saya hanya ingin VS menyala cepat . Drive utama saya adalah SSD, yang cepat, dan saya bahkan ingin VS tidak menggunakannya. RAM sangat cepat dibandingkan dengan yang lain.

Saya tahu VS 2010 masih 32bit sehingga akan menggunakan maks 4GB namun semua aplikasi lain yang dibuka (browser, Outlook, File Explorer..etc) dapat menggunakan apa pun yang tersisa dari 12GB dan membiarkan VS bebas berkeliaran di ruang memori khusus 4GB.

Pertanyaan saya : Pengaturan dan penyesuaian apa yang dapat saya lakukan untuk Windows 7 dan VS 2010 sehingga VS 2010 mendedikasikan dan menggunakan memori sebanyak mungkin dan memblokirnya dan sehingga menggunakan hard drive sesedikit mungkin? Apakah Windows 7 64 & VS sudah dioptimalkan untuk itu dan tidak banyak lagi yang bisa dilakukan. Apakah disk RAM membantu? Pikirkan ini seolah-olah saya sedang berusaha menghilangkan drive.

Saya sadar mungkin lebih tinggi dari kehilangan data dengan kehilangan daya tapi itu bukan masalah saat ini. Asumsikan tidak ada dependensi eksternal (database, kecepatan jaringan ...) yang mungkin memperlambat VS. Disk defragmentasi tidak banyak membantu.

Tony_Henrich
sumber
Karena ini lebih terkait dengan cara mengatur disk RAM dan penggunaan memori yang dapat dieksekusi daripada pemrograman, pemungutan suara untuk pindah ke superuser.
jball
1
@ jball saya tidak setuju, itu terkait dengan pemrograman yang cukup untuk warrent bertahan, IMHO, karena banyak VS devs bisa mendapat manfaat dari konfigurasi seperti itu.
Saya mengajukan pertanyaan di sini karena saya membutuhkan orang yang tahu bagaimana Visual Studio bekerja secara intim. Jika hanya ada di serverfault, saya mungkin akan mendapatkan tip optimasi umum tentang Windows (tip yang masih bagus). Namun saya tidak keberatan meletakkannya di kedua situs.
Tony_Henrich
Saya punya pertanyaan terkait di serverfault. serverfault.com/questions/142203/…
Tony_Henrich

Jawaban:

6

Anda sudah mendapatkan apa yang Anda minta. Dengan RAM sebesar itu, Anda akan memiliki cache sistem file yang sangat besar. Terlihat dari Taskmgr.exe, tab Performance, Cached. Disk apa pun yang menulis bahwa Visual Studio berkinerja akan sepenuhnya instan saat data ditulis ke RAM. Manajer cache kemudian akan dengan malas menulisnya ke disk, membuat lampu akses drive Anda berkedip dalam proses tentu saja.

Demikian pula, membaca disk akan mempercepat. Itu masih harus keluar dari disk tetapi akan membaca seluruh trek, bukan hanya sektor file yang diminta oleh Visual Studio. Membuatnya sangat mungkin bahwa pembacaan berikutnya akan keluar dari RAM daripada harus diambil dari disk.

Ini berfungsi dengan baik (dan aman) sehingga disk RAM tidak lagi digunakan.

Hans Passant
sumber
Saya juga melihat VS membuat disk menulis dan saya memiliki 6 GB yang tidak penuh. Saya pikir VS mungkin menggunakan flag yang memaksa data ke penyimpanan disk. Pasti mengira file output adalah barang berharga!
Zan Lynx
Hmm, proyek seperti apa yang menghasilkan kode eksekusi 6 gigabytes?
@Hans: Mengulangi. Sistem saya memiliki 6 GB RAM yang tidak sepenuhnya habis dan harus tersedia sebagai cache tulis disk untuk 100 MB file output yang dihasilkan oleh proyek build.
Zan Lynx
1
@zan - gunakan ProcMon SysInternals untuk mencari tahu apa yang dilakukan disk.
Hans Passant
2

Sepertinya Anda perlu terlebih dahulu membuat disk RAM. Tidak yakin alat untuk melakukan ini di Windows 7; mungkin orang lain akan punya ide. Tetapi ini harus menangani semua penyesuaian yang diperlukan di sisi Windows, sejauh disk berjalan. Satu-satunya hal yang saya tambahkan adalah mengatur direktori sementara Anda ke disk RAM. Ini disimpan dalam variabel lingkungan sebagai TMP dan TEMP. Biasanya juga dalam variabel sistem dan pengguna; pastikan untuk mengubah keduanya.

Di dalam Visual Studio, Anda perlu memastikan bahwa semua yang Anda dapat tetapkan sebagai opsi jalur di Visual Studio menunjuk ke disk RAM. Ini termasuk direktori input dan output proyek, dan direktori sementara yang mungkin diperlukan, meskipun secara teoritis ini semua harus dikunci dari variabel lingkungan TMP / TEMP.

jdmichal
sumber