3 AĞUSTOS 2010, Salı
Ne zaman şablonları bir sürü ile)derleme g hızlandırmak için
Bu soru belki de garip bir şekilde, ama ne kadar hızlı g derleme miyim? C kodunu yoğun destek ve şablonlar kullanır. Ben zaten mümkün olduğunca üstbilgi dosyaları dışarı taşındı ve-j seçeneği, ama yine de uzunca bir süre derlemek için gereken (ve bağlantısı) kullanın.
Benim kod analiz ve şişe-boynu derleyici için işaret orada herhangi bir alet var mı? Ya da bir şekilde derleyici benim kod üzerinde çalışan profili? Bu bazen çok fazla zaman derleyici günlük konsolu ... baktım izlenim var, çünkü gerçekten güzel olurdu
CEVAP
3 AĞUSTOS 2010, Salı
Ne benim için çok yararlı oldu:
- RAM dosya sistemi üzerine inşa. Bu Linux üzerinde önemsiz. Ortak başlık dosyalarının bir kopyasını (önceden derlenmiş ya da gerçek .tutmak isteyebilirsiniz RAM h dosyaları) dosya sistemi.
- Precompiled headers. (Büyük) kütüphane (örneğin, Boost, Qt, stdlib) başına bir tane var.
- İlan yerine mümkünse sınıfları vardır. Bu bağımlılıkları azaltır, bir başlık dosyası değiştirdiğinizde çekirdekler için gereken dosya sayısını azaltır böylece.
- Parallelize make. Bu genellikle tarafından dava-dava olarak yardımcı oluyor, ama
-j3
küresel yapmak için var. Bağımlılık grafikler, Makefile doğru olduğundan emin olun, olsa da, ya da sorunlar olabilir. - Eğer yürütme hızını test ediyorsun yoksa
-O0
kullanın veya boyut Kodu (ve Bilgisayar hakkında çok şey (muhtemelen) küçük isabet performans bakımı için yeterince hızlı. - Seni kurtarmak her zaman derleme. Bazı kişiler bundan hoşlanmıyor, ama hataları daha erken görmenizi sağlar ve arka planda, yazı bitince beklenecek süreyi azaltma yapılabilir ve test için hazır.
Bunu PaylaÅŸ:
Teknikleri C derleme sürelerini hızlan...
Nasıl azaltmak için inşa kez böyle büy...
Bu özelliği ne zaman kendini vs $için?...
(Ya da ihmal) kullanmak için zaman var...
Nasıl Python ile şimdiki zaman almak i...