-
Oyun konsolları, TV'ler, set üstü kutular ve streaming stick'ler dahil 8.000 cihazı destekliyor
-
Her güncellemede her biri için ayrı bir native sürüm yayınlamak gerekiyordu
→ Bunun için JavaScript yerine WASM kullanarak kararlılığı artırıp hızı iyileştirdi
- Önceden C++ ile yazılmış bir JavaScript VM ve JavaScript ile geliştirilmiş bir uygulama kullanılıyordu
→ Şu anda JavaScript VM ile WebAssembly VM aynı anda çalışıyor (WASM'in henüz desteklenmediği eski cihazlarda yalnızca JavaScript kullanılıyor)
→ Düşük seviyeli sistemler JavaScript'ten WASM'e taşındı ve WASM binary'si de güncellendi
→ Rust ile yazılan kod WASM'e derlenip çalıştırılıyor (JavaScript'ten 10 ila 25 kat daha hızlı)
-
60FPS'e ulaşmak ve input latency'yi iyileştirmek için daha fazla sistemi WASM'e taşımayı planlıyor
-
WASM VM'in kendi modülü ve tüm instance'ı yaklaşık 7,5MB olduğundan JavaScript heap belleğinde 30MB tasarruf sağlanıyor
→ Dağıtım yapılan birçok cihazın belleği çok küçük olduğundan bellek kullanımı önemli bir unsur
-
WASM modülü sıkıştırıldığında yaklaşık 150kb kadar küçük olduğu için startup süresi de çok düşük
-
Rust kullanmanın avantajlarından biri, yüksek kaliteli kütüphanelerden yararlanabilmek (ör. egui)
-
Rust ve WebAssembly'e yapılan yatırımın karşılığı alındı
→ Yaklaşık 1 yıl boyunca 37.000 satırlık Rust koduyla performans, kararlılık ve CPU tüketimi iyileştirildi; bellek kullanımı da azaldı
Henüz yorum yok.