Chromium Chronicle #20: Alat Uji Tolok Ukur

Episode 20: oleh John Chen di Bellevue, WA (April, 2021)
Episode sebelumnya

Kecepatan adalah salah satu dari empat prinsip inti Chrome. Menambahkan benchmark adalah cara mudah untuk mencegah regresi performa dan membantu meningkatkan performa dari waktu ke waktu. Benchmark yang baik memiliki siklus iterasi yang cepat, dapat menangkap regresi performa jauh lebih awal daripada UMA, dan sangat bagus untuk mengukur performa fitur baru.

Benchmark berjalan secara rutin di lab. Saat regresi ditemukan, bisect akan otomatis menemukan CL penyebabnya dan menetapkan bug kepada pemilik CL.

Tolok ukur Chrome menggabungkan urutan interaksi halaman web (yang disebut story) dengan pengukuran performa. Kasus serupa dikelompokkan ke dalam tali tolok ukur. Benchmark baru biasanya sesuai dengan salah satu manfaat yang ada:

  • Kesehatan Sistem
  • Memuat
  • Memori
  • Rendering
  • Daya
  • Skrip
  • Runtime V8
  • Media
  • WebRTC
  • Pers
  • Perf

Framework Telemetry memutar ulang cerita yang direkam untuk menyimulasikan interaksi pengguna dengan Chrome sekaligus mengumpulkan rekaman aktivitas yang merekam aktivitas Chrome. Setelah cerita selesai, framework akan menjalankan berbagai metrik performa untuk menganalisis trace dan menghitung hasil performa.

Anda dapat mencakup sebagian besar kasus uji performa baru di Chrome dengan menambahkan cerita baru, menggunakan metrik yang ada dalam salah satu harness yang sudah ada. Anda juga dapat mengumpulkan trace tambahan dan menambahkan lebih banyak metrik ke benchmark yang ada atau meneruskan flag tambahan ke browser.

Gunakan Blink Perf untuk kasus satu kali yang tidak muat di tali pengaman lain. Di Blink Perf, Anda dapat mengukur peristiwa rekaman aktivitas di halaman satu kali.

Buat cerita benchmark Anda tetap sederhana dan hanya sertakan rangkaian interaksi minimal yang diperlukan untuk menyelesaikan skenario. Jika kasus pengujian rumit, mungkin sulit untuk diotomatiskan atau mungkin tidak stabil.

Batasi pengujian Anda ke angka terkecil yang mencakup kasus penggunaan paling penting. Infrastruktur benchmark mahal untuk pemeliharaannya. Lihat Perangkat Kecepatan Chrome untuk mengetahui daftar hardware yang didukung.

Ada lebih dari satu cara untuk mengukur performa. Benchmark berbasis telemetri mengontrol Chrome dari proses eksternal, dan ini tidak selalu menawarkan tingkat kontrol yang diperlukan. Sebagai alternatif, benchmark berbasis gtest memungkinkan kode pengujian berbagi proses yang sama seperti kode Chrome. Anda juga dapat mempertimbangkan alat performa lainnya, seperti menggunakan UMA untuk mengukur performa pada perangkat pengguna, bukan di lab.

Ingin mempelajari lebih lanjut tolok ukur Chrome? Hubungi telemetry@chromium.org.

Referensi lainnya