2009-02-26 10 views
2

Derlemeyi hızlandırmak istedim, bu yüzden dosyalarımın bir ramdisk üzerinde oluşturulmasını sağlayabileceğimi düşünüyordum, aynı zamanda dosya sistemine otomatik olarak akıttım ve yeterli ram yoksa dosya sistemini kullanabiliyordum.ramdisk bir dosya aynası ile

Bir uygulama için benzer bir şeye ihtiyacım olabilir; ben, dosyaların ram'da önbelleğe alınmasını ve FS'ye atılmasını istiyorum. Seçeneklerim nelerdir? Zaten böyle bir şey var mı? (belki de sigorta?) Uygulama bir oyuncak uygulaması (şimdilik) ve tekrar tekrar C++ kodunu derlemem gerekecek. Bildiğimiz gibi, ilerlemeden önce çözülmesi gereken belirli bir problem olduğunda, derleme yapmak ne kadar uzun sürer. Daha az yapabiliriz.

cevap

3

Ram diskler dosya sistemi önbelleği ile dodo'nun yoluna gitti. Statik bir önbellekten çok daha iyi kararlar verebilir, diğer programlar tarafından RAM kullanımı ve disk yazma kafasının konumu hakkında farkındalık sahibi olur. Tembel geri-yazma ücretsizdir.

+0

Pencerelerin benim dosyalarımı önbelleğe alacağını mı söylüyorsunuz? –

+0

Evet, öyle. Hem okuma hem yazma. –

+0

Bu genel olarak doğru mu, yoksa yazılımı yazan geliştiricinin Windows'a dosya sistemi önbelleğini kullanması gerektiğini söylemek için bir şey yapması gerekiyor mu? Başka bir deyişle, basit C kodum, büyük dosyalar yazdığında sistem önbelleğinden yararlanabilir mi? Ve eğer öyleyse, o zaman neden bir RAMDISK'a yazdığımda dramatik bir hızlanma görüyorum? (Büyük video dosyalarını bir kerede bir çerçeve yazmak için OpenCV kullanıyorum). – AndyL

1

Derleme, CPU'ya bağlı değil, disk bağlı değil. Tüm işlemci çekirdeklerini uygun yapı bayrağını kullanarak kullanırsanız, bunları tipik PC'lerde kolayca doyurabilirsiniz. Bir çeşit süperbilgisayarınız olmadıkça, bunun işleri hızlandıracağını düşünmüyorum.

VS2008 için bu bayrak /MP dur. Ayrıca VS2005'da bulunmaktadır.