JetStream 3, một bộ công cụ đánh giá hiệu năng trình duyệt web, đã được công bố. Nó kiểm tra hiệu năng của các công cụ JavaScript và WebAssembly khi chạy các ứng dụng web đòi hỏi nhiều tài nguyên tính toán. Để đạt được kết quả khách quan và độc lập, dự án này đang được phát triển chung bởi các nhà phát triển của các công cụ trình duyệt cạnh tranh từ Google, Apple và Mozilla. Mã nguồn được cung cấp theo giấy phép BSD.
Phiên bản mới này tính đến các xu hướng và thay đổi hiện đại đã diễn ra trên web kể từ khi JetStream 2 được phát hành vào năm 2019, đồng thời cập nhật các bài kiểm tra để phù hợp với mô hình hoạt động của các ứng dụng web thực tế và phản ánh hiệu suất thực, thay vì các kết quả tổng hợp mà các công cụ trình duyệt được tối ưu hóa đặc biệt.
Khác với công cụ đo hiệu năng Speedometer 3, JetStream 3 tập trung vào việc đo lường khả năng tính toán thay vì tốc độ hiển thị giao diện và thao tác DOM. JetStream 3 phản ánh tốt hơn hiệu năng của các trò chơi trên trình duyệt, trình mô phỏng vật lý, chức năng cốt lõi của khung phần mềm, công cụ mã hóa và các thuật toán phức tạp.
Khả năng kiểm thử WebAssembly (Wasm) đã được mở rộng đáng kể, bao gồm đánh giá các tính năng nâng cao của WebAssembly như xử lý ngoại lệ, sử dụng các lệnh SIMD vector và phần mở rộng WasmGC để thực thi các dự án trong các ngôn ngữ có cơ chế thu gom rác tự động. Các bài kiểm thử hiệu năng đã được thêm vào cho các ứng dụng WebAssembly được xây dựng bằng các bộ công cụ J2CL, Dart2wasm, Kotlin/Wasm, Rust và .NET, và được tạo ra từ mã Java, Dart, Kotlin, Rust và C#.
Các tác vụ mới được sử dụng trong kiểm thử WebAssembly bao gồm tính toán hàm băm argon2, chạy mô hình học máy sử dụng các lệnh SIMD để tối ưu hóa, tạo giao diện người dùng bằng Dart và Kotlin, chạy SQLite3, và chạy trình thông dịch và môi trường chạy .NET được biên dịch bằng WebAssembly.
Đã thêm 15 bài kiểm tra JavaScript mới, bao gồm công cụ 3D Babylon.js, các phép toán đường cong elip ed25519, thư viện MobX, tô sáng cú pháp với prismjs, một số triển khai proxy, dò tia, các thao tác hệ thống tập tin, trình mô phỏng hành vi hạt 3D Three.js, biên dịch Typescript 5.9, xác thực chuỗi với validator.js và tạo trang với React.
Để ngăn chặn tần số CPU và tải I/O ảnh hưởng đến kết quả giữa các lần kiểm tra, JetStream tải trước tất cả các tài nguyên trước khi chạy thử nghiệm trong trình duyệt. Để giảm mức tiêu thụ bộ nhớ cao điểm và đảm bảo bộ nhớ đệm, các tài nguyên được lưu trữ dưới dạng các khối dữ liệu được mã hóa URL. JetStream có thể được sử dụng để kiểm tra không chỉ trình duyệt mà còn cả các công cụ độc lập, chẳng hạn như d8.
Nguồn: opennet.ru
