Megjelent a JetStream 3, egy webböngésző teljesítmény-értékelő eszközkészlet. A JavaScript és a WebAssembly motorok teljesítményét teszteli tipikus számításigényes webes alkalmazások futtatása során. Az objektív és független eredmények elérése érdekében a projektet a Google, az Apple és a Mozilla versengő böngészőmotorjainak fejlesztői közösen fejlesztik. A kód BSD licenc alatt érhető el.
Az új verzió figyelembe veszi a modern trendeket és a weben a JetStream 2 2019-es megjelenése óta bekövetkezett változásokat, és frissíti a teszteket, hogy azok megfeleljenek a valódi webes alkalmazások működési mintáinak és a valós teljesítményt tükrözzék, ahelyett, hogy szintetikus eredményeket kapnának, amelyekre a böngészőmotorokat kifejezetten optimalizálták.
A Speedometer 3 benchmarkkal ellentétben a JetStream 3 a számítási képességek mérésére összpontosít, nem pedig az interfész renderelésre és a DOM manipulációs sebességére. A JetStream 3 jobban tükrözi a böngészős játékok, a fizikai szimulátorok, az alapvető keretrendszer-funkciók, a kriptográfiai eszközök és az összetett algoritmusok teljesítményét.
A WebAssembly (Wasm) tesztelési képességei jelentősen kibővültek, beleértve a fejlett WebAssembly-funkciók, például a kivételkezelés, a vektoros SIMD utasítások használata és a WasmGC-bővítmény értékelését a szemétgyűjtő nyelveken futó projektek végrehajtásához. Teljesítményteszteket adtak hozzá a J2CL, Dart2wasm, Kotlin/Wasm, Rust és .NET eszközkészletekkel épített, valamint Java, Dart, Kotlin, Rust és C# kódból generált WebAssembly alkalmazásokhoz.
A WebAssembly tesztelésében használt új munkaterhelések közé tartozik az argon2 hashek kiszámítása, gépi tanulási modell futtatása SIMD utasítások használatával az optimalizáláshoz, felhasználói felületek generálása Dart és Kotlin nyelven, SQLite3 futtatása, valamint a WebAssembly-ben fordított interpreter és futásidejű .NET futtatása.
15 új JavaScript tesztet adtunk hozzá, beleértve a Babylon.js 3D motort, az ed25519 elliptikus görbe műveleteket, a MobX könyvtárat, a prismjs-sel történő szintaxiskiemelést, számos proxy implementációt, sugárkövetést, fájlrendszer-műveleteket, a Three.js 3D részecske viselkedés szimulátort, a Typescript 5.9 fordítását, karakterlánc-validációt validator.js-sel és oldalgenerálást React-tel.
Annak érdekében, hogy a CPU-frekvencia és az I/O-terhelés ne befolyásolja az eredményeket a tesztek között, a JetStream előre betölti az összes erőforrást a tesztek böngészőben való futtatása előtt. A maximális memória-fogyasztás csökkentése és a gyorsítótár biztosítása érdekében az erőforrásokat URL-kódolású blobokként tárolja. A JetStream nemcsak böngészők, hanem önálló motorok, például a d8 tesztelésére is használható.
Forrás: opennet.ru
