Firefox Menjadi Lebih Cepat bagi Pengguna Nyata pada 2023
(hacks.mozilla.org)- Setelah pekerjaan optimasi pada 2023, Firefox menunjukkan peningkatan bukan hanya di benchmark, tetapi juga di telemetri pengguna nyata untuk pemuatan halaman, responsivitas input, dan waktu eksekusi JavaScript
- Mozilla, bersama browser lain, mendorong Speedometer 3 dan sedang membuat pengujian yang lebih baik mencerminkan performa yang dirasakan pengguna di halaman web nyata
- Waktu dari penerimaan byte pertama hingga First Contentful Paint turun dari sekitar 250 ms pada awal tahun menjadi 215 ms pada Oktober, sehingga umpan balik pemuatan hampir 15% lebih cepat
- Waktu eksekusi JavaScript persentil ke-95 selama pemuatan halaman berkurang 300 ms, dari sekitar 1560 ms menjadi sekitar 1260 ms, dan optimasi SpiderMonkey terkait dengan peningkatan ini
- Setelah rilis Firefox 116·117, latensi input tombol yang lambat juga turun dari sekitar 65 ms menjadi di bawah 59 ms, menunjukkan peningkatan 10% yang mengurangi tersendat saat mengetik
Mengapa Sulit Mengukur Performa Pengguna Nyata
- Firefox adalah perangkat lunak klien yang kompleks yang menjalankan kode pihak ketiga, sehingga sulit menilai perubahan pengalaman pengguna nyata hanya dengan metrik laboratorium yang terkendali
- Untuk melihat performa browser, diperlukan metrik waktu yang dianonimkan seperti pemuatan halaman, responsivitas, dan waktu mulai
- Karena data harus ditangani sambil mempertahankan standar perlindungan privasi, analisis memiliki keterbatasan
- Karena bergantung pada metrik agregat, tidak ada kemampuan untuk secara tepat mengidentifikasi data dari situs web tertentu
- Menarik kesimpulan yang dapat ditindaklanjuti dari data yang dikumpulkan juga tidak mudah
- Speedometer 3 adalah upaya untuk membuat pengujian performa yang menyimulasikan pengalaman pengguna nyata, membantu browser mendorong peningkatan berdasarkan pengguna nyata dan halaman web nyata
Peningkatan Pemuatan Halaman dan Waktu Eksekusi JavaScript
- Untuk performa pemuatan halaman yang dirasakan, First Contentful Paint digunakan sebagai metrik yang lebih sesuai daripada event
onload - Dasar pengukurannya adalah waktu yang dibutuhkan dari saat menerima byte pertama dari jaringan hingga FCP
- Nilai ini menunjukkan seberapa cepat pengguna menerima umpan balik bahwa halaman sedang berhasil dimuat
- Halaman web itu sendiri punya pengaruh besar, tetapi jika performa browser secara keseluruhan membaik, angka ini dapat turun
- Waktu terkait FCP turun dari sekitar 250 ms pada awal tahun menjadi 215 ms pada Oktober
- Kecepatan pengguna menerima umpan balik pemuatan halaman menjadi hampir 15% lebih cepat dibanding awal tahun
- Peningkatan ini berasal dari pekerjaan optimasi yang tidak secara langsung menargetkan pemuatan halaman
- Waktu eksekusi kode JavaScript selama pemuatan halaman dibandingkan berdasarkan persentil ke-95
- Metrik ini menunjukkan ruang untuk mengurangi friksi pengguna pada halaman yang banyak menggunakan JavaScript
- Turun dari sekitar 1560 ms pada awal tahun menjadi sekitar 1260 ms pada Oktober
- Ini adalah peningkatan 300 ms, hampir 20%, dan kemungkinan terkait dengan sebagian besar penurunan waktu FCP
- Engine JavaScript SpiderMonkey menerima optimasi signifikan melalui pekerjaan Speedometer 3, yang berujung pada peningkatan waktu eksekusi JavaScript
Perubahan yang Terlihat pada Responsivitas Input
- Responsivitas setelah pemuatan halaman diukur dengan “keypress present latency”
- Ini adalah waktu dari saat tombol ditekan di keyboard hingga hasilnya ditampilkan di layar
- Karena halaman web dapat menjalankan JavaScript di main thread untuk merespons event keypress, ada lebih banyak pekerjaan yang terlibat daripada sekadar rendering teks sederhana
- Sebagian besar pengetikan berlangsung cepat dan terutama dibatasi oleh perangkat keras seperti refresh rate monitor, tetapi kasus input yang lambat sangat mengganggu pengalaman pengguna
- Karena penting untuk mengurangi kasus terburuk, metrik ini juga dilihat berdasarkan persentil ke-95
- Latensi keypress present persentil ke-95 berada di sekitar 65 ms hampir sepanjang tahun, lalu turun ke bawah 59 ms setelah rilis Firefox 116·117 pada Agustus
- Terjadi peningkatan sekitar 10% pada kasus input tombol paling lambat
- Pengguna merasakan umpan balik yang lebih langsung dan lebih sedikit gangguan saat mengetik
- Peningkatan telemetri menunjukkan bahwa pekerjaan performa pada 2023 benar-benar memberikan dampak positif bagi pengguna Firefox, dengan ruang untuk optimasi lebih lanjut masih tersisa
1 komentar
Komentar Hacker News
Secara subjektif, Firefox belakangan memang terasa lebih responsif, dan peningkatannya benar-benar patut diapresiasi serta memuaskan.
Namun, ada sedikit rasa kurang nyaman terhadap metodologi pengukuran yang memakai anonimisasi kuat. Bisa saja web itu sendiri memang makin cepat, atau orang-orang mulai memakai perangkat keras yang lebih baik.
Jika situs-situs dengan banyak pengunjung makin dioptimalkan dan merilis versi yang lebih ringan, dari sisi telemetri rata-rata semuanya bisa terlihat sedikit lebih cepat. Penggantian perangkat keras serta pembaruan sistem operasi dan driver juga bisa berdampak serupa.
Secara historis, perangkat lunak berperilaku seperti gas: mengisi ruang dan melahap sumber daya, dan sumber daya itu biasanya bukan milik penulis perangkat lunaknya.
Bukan perangkat lunak yang memakan dunia, melainkan memakan sumber daya komputer dan bandwidth yang kita bayar setiap bulan.
Sebelum membaca artikel ini saya tidak menyadarinya, tetapi belakangan rasanya hal itu sudah hilang, dan saya pun sudah berhenti memikirkan untuk beralih.
Namun, data dalam tulisan ini menunjukkan perubahan performa bertahap yang jelas dan bertepatan dengan distribusi versi browser. Tidak jujur rasanya jika tidak mengakui upaya tim Firefox dalam meningkatkan performa.
Senang melihat Mozilla benar-benar memperbaiki Firefox, alih-alih hanya memindah-mindahkan komponen UI.
Sebagai pengguna lama, saya ingin mendukung pihak yang lebih lemah demi menjaga setidaknya sedikit keseimbangan kekuatan di web. Bagus jika Mozilla lebih fokus pada teknologi daripada politik, dan bagaimanapun Firefox adalah perangkat lunak yang bagus, jadi saya tidak punya keluhan besar.
Misalnya FirefoxOS tampaknya gagal, tetapi memang sebagian besar tantangan besar pada dasarnya gagal. Jika terlalu menyayangkan tantangan jangka panjang seperti itu, kita bisa seperti Microsoft yang terlambat menyadari bahwa banyak anak zaman sekarang bahkan tidak punya laptop, dan ponsel mereka tentu saja tidak menjalankan Windows. Menurut saya, tidak apa-apa jika ada lebih banyak proyek seperti FirefoxOS.
Bisa saja seseorang mengaku fokus pada teknologi, tetapi menuangkan semua sumber daya ke Firefox OS.
Setelah upgrade ke 118, Firefox berhenti secara acak setiap beberapa hari sekali. Bukan masalah CPU atau swap, tetapi semua jendela membeku dan perlu
killall firefox; meski begitu Firefox tetap keluar dengan bersih.Karena spam mesin pencari, sulit juga mencari informasi terkait, dan sebelum 118 selama bertahun-tahun semuanya baik-baik saja. Kejadiannya terlalu jarang sehingga eksperimen reproduksi seperti menonaktifkan ekstensi atau membuat profil baru juga sulit, jadi sepertinya harus diterima saja.
Jika crash reporter aktif, Anda bisa mengirim
SIGABRTke parent process, lalu setelah restart akan muncul entri diabout:crashesyang bisa dikirimkan.Jika Anda memakai Firefox dari distro dan memiliki
gdbsertadebuginfod, Anda bisa menempelkangdbke parent process Firefox, mengambil simbol, lalu menjalankanthread all apply btuntuk men-dump stack semua thread pada parent process.Jika memakai build Mozilla, Anda bisa menggunakan https://firefox-source-docs.mozilla.org/toolkit/crashreporte... untuk menghubungkan ke server simbol mereka sendiri. Tergantung distronya, ini mungkin bisa atau tidak bisa digunakan juga pada Firefox dari distro.
Jika informasi crash sudah dibuat, Anda bisa mengunggahnya ke pelacak bug distro atau ke https://bugzilla.mozilla.org/enter_bug.cgi?product=Core dengan menyertakan informasi terkait seperti stack, versi Firefox, laporan crash, dan
about:support.Di Linux, hang seperti ini sering kali merupakan bug antara Firefox dan lingkungan desktop atau masalah driver grafis, dan jika ada stack, penyebabnya bisa dipersempit secara signifikan. Kadang-kadang bisa selesai hanya dengan pembaruan paket atau satu pengaturan.
Keluhan tentang ketidakstabilan Firefox yang terlihat di HN umumnya tampaknya datang dari pengguna Windows, atau pengguna Linux yang memasang versi terbaru di luar pemaketan distro. Sebaliknya, selama bertahun-tahun memakai Firefox Debian stable, saya belum pernah mengalami bug seperti yang digambarkan di thread semacam ini.
Untuk mereproduksinya, sepertinya perlu mencoba binary Mozilla yang murni.
Ini kabar baik, dan membuat saya ingin mencobanya lagi
Saya memakainya hampir 20 tahun sejak masa Phoenix/Firebird, ketika metode instalasinya masih “ekstrak di suatu tempat”, tetapi saya pindah ke browser berbasis Chromium karena perbedaan kecepatan yang terasa
Saya tidak menjalankan benchmark untuk memastikan kecurigaan itu atau mengukur tindakan apa di Firefox yang lebih lambat beberapa milidetik, tetapi kalau itu alat yang dipakai seharian setiap hari, termasuk untuk bekerja, perbedaan yang terasa mudah muncul
Melihat berbagai laporan peningkatan performa belakangan ini dan metrik penggunaan nyata, saya jadi ingin mencobanya lagi beberapa hari. Kalau saya tidak merasakan perbedaan, atau benar-benar terasa lebih cepat, saya akan kembali
Alasan saya ingin kembali adalah karena kita benar-benar membutuhkan mesin browser alternatif. Saya tidak ingin komite standar berubah menjadi acara semacam “tahun ini Google sudah memutuskan kita harus melakukan ini”
Fitur killer Firefox masih tetap kemampuannya memberi fleksibilitas manajemen tab. Berkat Sidebery dan TreeStyleTab, saya terus bertahan di ekosistem Firefox
Untuk gaya penggunaan dengan menumpuk banyak tab atau memakai tab seperti daftar tugas, pengalamannya jauh lebih baik sehingga sulit membayangkan memakai yang lain
Di Android pun saya memakai Firefox karena ada add-on uBlock Origin dan Dark Reader. Penjelajahan web seluler jadi jauh lebih baik. Bukan karena saya sangat loyal pada Firefox itu sendiri, hanya saja saya belum menemukan browser berbasis Chromium yang secocok ini untuk saya
Dan saya juga suka bahwa dengan CSS, bilah tab bisa diubah, misalnya, menjadi tiga baris yang dapat digulir
Di layar kecil, kalau keduanya ada, rasanya cukup banyak ruang layar yang hilang
Saya sudah memakai Firefox sebagai browser utama selama bertahun-tahun dan sangat puas. Mungkin karena saya terutama menjalankannya di perangkat kelas atas, tetapi saya tidak punya banyak keluhan di Linux, Windows, maupun Mac
Saat membuka file JS besar, debugger menjadi cukup lambat, dan source map membuat kelambatan itu makin parah. Saat memakai source map, kadang nilai variabel tidak selalu bisa diperiksa, meski itu mungkin masalah konfigurasi build tool
Di Speedometer 2, Firefox jauh lebih lambat daripada Chrome, dan Chrome sedikit lebih lambat daripada Edge. Meski begitu, dalam kehidupan nyata saya rasa tidak ada perbedaan besar
Saya menghormati dan mempercayai perlindungan privasi Mozilla. Container, serta kemampuan menjalankan Ublock dan Tampermonkey di mobile, sulit dinilai dengan uang
Setelah beralih ke Edge, rasanya jauh lebih cepat dan penggunaan RAM 4GB juga lebih rendah. Saya tidak menyangka perbedaannya sebesar ini, tetapi tidak bisa membantahnya; di PC spesifikasi rendah, Edge berjalan jauh lebih baik daripada browser lain
Jadi saya bertanya-tanya apa arti benchmark itu
Saya percaya tim Firefox tahu apa yang mereka lakukan terkait performa dan telah mengambil kesimpulan yang benar
Namun satu hal kecil yang agak saya sayangkan adalah saya juga ingin melihat perubahan performa dibandingkan periode yang sama tahun lalu untuk mengontrol efek musiman. Gambar 1 menunjukkan perubahan dalam satuan 1/100 detik, jadi saat melihat sinyal sekecil ini, pengendalian noise tampaknya lebih penting
Sebagai tambahan, saya adalah pengguna yang puas dengan Firefox
https://arewefastyet.com/
Selain itu ada juga https://wiki.mozilla.org/Areweyet
Secara naif, tren di sini terlihat konsisten dan sinyalnya tampak lebih besar daripada variansinya. Ini tampak seperti hasil para engineer cerdas yang mengoptimalkan metrik tersebut selama periode pengukuran
Pada saat yang sama, saya setuju bahwa akan lebih baik jika ada sumbu waktu yang lebih panjang. Peningkatan besar pada Agustus mungkin bukan karena Firefox 116 dirilis pada 1 Agustus, melainkan karena orang-orang di belahan bumi utara melihat bacaan yang lebih ringan selama musim liburan
Jika Anda tetap memakai browser berbasis Chromium karena terasa lebih cepat, setidaknya cobalah Firefox sekali
Belakangan ini saya memakainya dengan sangat nyaman sampai tidak terpikir untuk kembali, dan demi masa depan web, sangat penting agar keberagaman browser tetap kuat
Firefox juga mengesankan, dan saya juga mencoba fork bernama Floorp. Ada beberapa fitur tambahan yang berguna, mendukung sinkronisasi, dan terasa lebih baik daripada Firefox biasa. Sebelumnya saya memakai ungoogled-chromium
https://github.com/Floorp-Projects/Floorp/releases
Sayangnya, menurut pengalaman saya, beberapa situs web masih berjalan lebih baik di browser Chromium. Ini hanya anekdotal, tetapi di situs milik Google saya juga merasa ada semacam fingerprinting negatif terhadap Firefox, dan sepertinya kebocoran memorinya juga lebih banyak. Karena Manifest V3, pada akhirnya saya mungkin akan pindah ke Firefox, tetapi untuk saat ini saya akan tetap di Brave
Saya benar-benar tidak yakin apakah sudah membaik, tetapi ada dua masalah yang tak kunjung terselesaikan
Pertama, pada video VP9, decoding video dengan akselerasi hardware bekerja aneh. Meski dimatikan atau dipaksa memakai AV1, kadang masih tersendat
Kedua, di lingkungan grafis hybrid, jika bermain game sambil menonton video di background, kWin membeku, video yang diputar di browser berubah menjadi hijau, dan semua yang memakai iGPU atau dGPU menjadi sangat tersendat. Pada akhirnya harus logout lalu login lagi untuk me-restart sesi secara manual
Masalah kedua mungkin disebabkan Nvidia prime offload di Wayland. Memang salah saya punya kartu Nvidia, tetapi di Bugzilla saya belum menemukan topik terkait yang belum terselesaikan, dan jujur saya agak takut melaporkannya lalu mendapat pertanyaan yang menyudutkan. Saya ingin men-debug lebih lanjut, tetapi tidak punya kesabaran
Ini belum sampai membuat saya meninggalkan Firefox, tetapi keduanya adalah sumber masalah yang berkepanjangan. Bagaimanapun, selamat untuk timnya. Hari ini saya berhasil membuat 5 orang beralih ke Firefox
Jika memakai desktop, layak dicoba untuk mematikan decoding video hardware sepenuhnya
Perangkat saya mendukung akselerasi hardware VP9, tetapi kurang andal, dan setelah beralih ke H.264, video YouTube diputar dengan mulus. Situs video lain pada dasarnya memakai H.264, jadi praktis hanya diperlukan untuk YouTube
Ini benar-benar regresi performa yang aneh