Rust ile Docker’da hızlı derleme yapmak zor olabilir, çünkü değişiklik yaptıkça tüm bağımlılıklar yeniden derlenebiliyor.
cargo-chef aracı, bağımlılıkları önbelleğe alarak sadece proje kodunu yeniden derlemeye yardımcı oluyor.
rustc’nin -Zself-profile, flamegraph ve llvm-time-trace gibi profil araçları ile derleyici içindeki zaman harcamaları analiz edilebiliyor.
Link Time Optimization (LTO) ve yüksek opt-level değerleri derleme süresini önemli ölçüde uzatıyor.
LTO, debug sembolleri ve opt-level ayarlarını uygun biçimde düzenleyerek derleme süresi 175s’den 50s’ye indirilebiliyor.
LLVM içindeki InlinerPass ve OptFunction adımları en çok zaman alan işlemler; inline eşiğini düşürmek işe yarıyor.
Büyük async fonksiyonlar derleme süresini uzatıyor; Pin<Box<dyn Future>> ile future’ları soyutlayarak hız kazanılabiliyor.
Projede ve bağımlılıklarda generik yapıları azaltmak ya da özel versiyonlar kullanmak derleme süresini kısaltıyor.
Yapılan optimizasyonlarla derleme süresi nihai olarak 32s’ye kadar düşürülebiliyor.
Get notified when new stories are published for "🇹🇷 Hacker News Türkçe"