- Ringkasan pencapaian peningkatan V8 yang mengesankan sepanjang 2023
- Peningkatan kecepatan secara keseluruhan melalui pengenalan compiler tahap menengah baru serta perbaikan pada compiler tahap atas, runtime, dan garbage collector
- Penambahan fitur baru untuk JavaScript dan WebAssembly, serta menghadirkan bahasa pemrograman dengan garbage collection ke web secara efisien melalui WebAssembly garbage collection (WasmGC)
- Peningkatan keamanan melalui perbaikan infrastruktur sandboxing dan penerapan control-flow integrity (CFI) di V8
Maglev: compiler optimasi tahap menengah yang baru
- Memperkenalkan compiler optimasi baru, Maglev, yang bekerja di antara Sparkplug dan TurboFan
- Maglev menghasilkan kode sekitar 20 kali lebih lambat daripada Sparkplug, tetapi 10 hingga 100 kali lebih cepat daripada TurboFan
- Teramati peningkatan performa sebesar 8.2% di JetStream dan 6% di Speedometer
- Efek penghematan energi dari kecepatan kompilasi Maglev yang tinggi dan berkurangnya ketergantungan pada TurboFan
Turboshaft: arsitektur baru untuk compiler optimasi tahap atas
- Memperkenalkan Turboshaft, arsitektur internal baru untuk compiler optimasi tahap atas TurboFan
- Memungkinkan penambahan optimasi baru dan kompilasi yang lebih cepat
- Mulai Chrome 120, semua tahap backend yang CPU-agnostic menggunakan Turboshaft, dengan kompilasi sekitar dua kali lebih cepat dibanding sebelumnya
Parser HTML yang lebih cepat
- Menambahkan parser HTML yang lebih cepat ke Blink untuk mengurangi waktu yang dibutuhkan untuk parsing HTML
- Skor Speedometer meningkat 3.4%
- Proyek WebKit segera mengintegrasikan perubahan ini
Alokasi DOM yang lebih cepat
- Investasi dan optimasi di sisi DOM
- Menambahkan page pool ke allocator Oilpan untuk mengurangi biaya bolak-balik dengan kernel
- Dukungan pointer terkompresi dan tidak terkompresi, serta pencegahan kompresi pada field berfrekuensi tinggi di Blink
- Oilpanization pada class yang sering dialokasikan mempercepat operasi alokasi 3 kali lipat dan meningkatkan performa benchmark yang berfokus pada DOM
Fitur JavaScript baru
- Menerapkan fitur JavaScript yang baru distandardisasi
- Menambahkan resizable ArrayBuffers, ArrayBuffer transfer, String
isWellFormed dan toWellFormed, flag v pada RegExp, JSON.parse with source, Array grouping, Promise.withResolvers, Array.fromAsync, dan lainnya
- Fitur helper Iterator untuk sementara ditarik karena masalah kompatibilitas web dan akan dirilis kembali nanti
- Melewati sebagian pemeriksaan temporary dead zone yang tidak diperlukan untuk meningkatkan performa kode JavaScript ES6+
Pembaruan WebAssembly
- Fitur baru dan peningkatan performa untuk Wasm
- Peningkatan performa melalui dukungan multi-memory, tail calls, dan relaxed SIMD
- Implementasi memory64 telah selesai dan akan dirilis ketika proposal mencapai tahap 4
- Mencerminkan pembaruan terbaru pada proposal exception handling dan mendukung format sebelumnya
- Investasi pada JSPI memungkinkan kelas aplikasi yang lebih besar di web
Garbage collection WebAssembly
- Dengan dirilisnya WasmGC, kini dimungkinkan mengalokasikan objek dan array yang dikelola oleh garbage collector V8 yang sudah ada
- Saat mengompilasi aplikasi yang ditulis dalam bahasa dengan garbage collection seperti Java, Kotlin, dan Dart ke Wasm, eksekusinya sekitar dua kali lebih cepat dibanding mengompilasinya ke JavaScript
Keamanan
- Sandboxing, fuzzing, dan CFI menjadi topik keamanan utama tahun ini
- Membangun infrastruktur sandboxing, berinvestasi pada infrastruktur fuzzing, dan meningkatkan cakupan bahasa
- Menyiapkan fondasi arsitektur CFI dan memungkinkan implementasinya di berbagai platform
- Memitigasi teknik eksploit populer di sekitar
the_hole dan memulai program bounty eksploit baru dalam bentuk V8CTF
Kesimpulan
- Dampak gabungan dari proyek-proyek peningkatan performa kecil menghasilkan capaian yang signifikan
- Skor benchmark yang menunjukkan peningkatan performa V8 pada 2023 tumbuh 14% di JetStream dan 34% di Speedometer
- V8 kini lebih cepat dan lebih aman, dan perjalanan menuju web yang cepat dan dinamis baru saja dimulai
- Tim V8 berharap semua orang menikmati pengalaman menjelajah web yang cepat, aman, dan luar biasa
Belum ada komentar.