- 2023'te V8 motorunda elde edilen etkileyici iyileştirmelerin özeti
- Yeni bir orta kademe derleyicinin eklenmesi ve üst kademe derleyici, çalışma zamanı ve çöp toplayıcıdaki iyileştirmeler sayesinde genel hız artışı
- JavaScript ve WebAssembly için yeni özellikler eklendi ve WebAssembly çöp toplama (WasmGC) ile çöp toplamalı programlama dilleri web'e verimli biçimde taşındı
- Güvenliği artırmak için sandbox altyapısı geliştirildi ve V8'e kontrol akışı bütünlüğü (CFI) eklendi
Maglev: yeni orta kademe optimize edici derleyici
- Sparkplug ile TurboFan arasında çalışan yeni optimize edici derleyici Maglev tanıtıldı
- Maglev, Sparkplug'dan yaklaşık 20 kat daha yavaş kod üretse de TurboFan'dan 10 ila 100 kat daha hızlı kod üretiyor
- JetStream'de %8,2, Speedometer'da %6 performans artışı gözlemlendi
- Maglev'in hızlı derleme hızı ve TurboFan'a olan bağımlılığın azalması sayesinde enerji tasarrufu sağlandı
Turboshaft: üst kademe optimize edici derleyici için yeni mimari
- Üst kademe optimize edici derleyici TurboFan için yeni iç mimari Turboshaft tanıtıldı
- Yeni optimizasyonların eklenmesini ve daha hızlı derlemeyi mümkün kılıyor
- Chrome 120'den itibaren CPU'dan bağımsız tüm backend aşamaları Turboshaft kullanıyor; derleme önceye göre yaklaşık iki kat daha hızlı
Daha hızlı HTML ayrıştırıcısı
- HTML ayrıştırma süresini azaltmak için Blink'e daha hızlı bir HTML ayrıştırıcısı eklendi
- Speedometer puanı %3,4 arttı
- WebKit projesi bu değişikliği hemen entegre etti
Daha hızlı DOM tahsisi
- DOM tarafında yatırım ve optimizasyon yapıldı
- Oilpan allocator'a sayfa havuzu eklenerek çekirdekle gidiş geliş maliyeti azaltıldı
- Sıkıştırılmış ve sıkıştırılmamış pointer desteği ile Blink'te yüksek frekanslı alanların sıkıştırılmaması sağlandı
- Sık tahsis edilen sınıfların oilpanization süreciyle tahsis işlemleri 3 kat hızlandı ve DOM odaklı benchmark performansı arttı
Yeni JavaScript özellikleri
- Yeni standartlaşan JavaScript özellikleri kullanıma sunuldu
- resizable ArrayBuffers, ArrayBuffer transfer, String
isWellFormed ve toWellFormed, RegExp v bayrağı, kaynakla birlikte JSON.parse, Array grouping, Promise.withResolvers, Array.fromAsync ve daha fazlası eklendi
- Iterator helper özellikleri, web uyumluluğu sorunları nedeniyle geçici olarak geri çekildi ve yeniden dağıtılacak
- ES6+ JavaScript kodunun performansını artırmak için bazı gereksiz geçici ölü bölge kontrolleri atlandı
WebAssembly güncellemeleri
- Wasm için yeni özellikler ve performans iyileştirmeleri geldi
- Multi-memory, tail call ve relaxed SIMD desteğiyle performans artırıldı
- memory64 uygulaması tamamlandı ve teklif 4. aşamaya ulaştığında kullanıma sunulacak
- Exception handling teklifindeki en son güncellemeler yansıtıldı ve önceki format desteği korundu
- JSPI yatırımlarıyla web'de daha geniş bir uygulama sınıfı etkinleştirildi
WebAssembly çöp toplama
- WasmGC'nin kullanıma sunulmasıyla V8'in mevcut çöp toplayıcısı tarafından yönetilen nesne ve dizi tahsisi mümkün hale geldi
- Java, Kotlin, Dart gibi çöp toplamalı dillerle yazılmış uygulamalar Wasm'a derlendiğinde, JavaScript'e derlemeye kıyasla yaklaşık iki kat daha hızlı çalışıyor
Güvenlik
- Sandbox, fuzzing ve CFI bu yılın başlıca güvenlik başlıkları oldu
- Sandbox altyapısı kuruldu, fuzzing altyapısına yatırım yapıldı ve dil kapsamı geliştirildi
- CFI mimarisinin temeli atıldı ve çeşitli platformlarda uygulanabilir hale getirildi
the_hole etrafındaki popüler exploit teknikleri azaltıldı ve V8CTF biçiminde yeni bir exploit ödül programı başlatıldı
Sonuç
- Küçük performans artışı projelerinin birleşik etkisi önemli sonuçlar doğurdu
- 2023'te V8'in performans artışını gösteren benchmark skorları JetStream'de %14, Speedometer'da %34 büyüdü
- V8 artık daha hızlı ve daha güvenli; hızlı ve yoğun web'e doğru yolculuk daha yeni başlıyor
- V8 ekibi herkes için hızlı, güvenli ve harika bir web gezinme deneyimi diliyor
Henüz yorum yok.