Společnosti Google, Apple a Mozilla vydaly JetStream 3 pro srovnání výkonu prohlížečů.

Byla publikována sada nástrojů JetStream 3 pro benchmarking výkonu webových prohlížečů. Testuje výkon JavaScriptových a WebAssembly enginů při spouštění typických výpočetně náročných webových aplikací. Pro dosažení objektivních a nezávislých výsledků je projekt vyvíjen společně vývojáři konkurenčních prohlížečových enginů od společností Google, Apple a Mozilla. Kód je k dispozici pod licencí BSD.

Nová verze zohledňuje moderní trendy a změny, ke kterým na webu došlo od vydání JetStream 2 v roce 2019, a také aktualizuje testy tak, aby odpovídaly provozním vzorcům skutečných webových aplikací a odrážely skutečný výkon, spíše než syntetické výsledky, pro které jsou prohlížečové enginy speciálně optimalizovány.

Na rozdíl od benchmarku Speedometer 3 se JetStream 3 zaměřuje na měření výpočetních schopností spíše než na rychlost vykreslování rozhraní a manipulace s DOM. JetStream 3 lépe odráží výkon prohlížečových her, fyzikálních simulátorů, funkcí základního frameworku, kryptografických nástrojů a složitých algoritmů.

Testovací možnosti WebAssembly (Wasm) byly výrazně rozšířeny, včetně vyhodnocení pokročilých funkcí WebAssembly, jako je zpracování výjimek, použití vektorových SIMD instrukcí a rozšíření WasmGC pro spouštění projektů v jazycích s garbage collection. Byly přidány výkonnostní testy pro aplikace WebAssembly vytvořené pomocí sad nástrojů J2CL, Dart2wasm, Kotlin/Wasm, Rust a .NET a generované z kódu Java, Dart, Kotlin, Rust a C#.

Mezi nové úlohy používané při testování WebAssembly patří výpočet hashů argon2, spouštění modelu strojového učení s využitím instrukcí SIMD pro optimalizaci, generování uživatelských rozhraní v Dart a Kotlin, spouštění SQLite3 a spouštění interpretu a běhového prostředí .NET kompilovaného ve WebAssembly.

Přidáno 15 nových JavaScriptových testů, včetně 3D enginu Babylon.js, operací s eliptickými křivkami ed25519, knihovny MobX, zvýrazňování syntaxe s prismjs, několika implementací proxy, sledování paprsků, operací se souborovým systémem, simulátoru chování 3D částic Three.js, kompilace Typescriptu 5.9, validace řetězců s validator.js a generování stránek s Reactem.

Aby se zabránilo ovlivnění výsledků mezi testy frekvencí CPU a zatížením I/O, JetStream předem načte všechny zdroje před spuštěním testů v prohlížeči. Pro snížení špičkové spotřeby paměti a zajištění ukládání do mezipaměti jsou zdroje uloženy jako objekty blob s kódováním URL. JetStream lze použít k testování nejen prohlížečů, ale i samostatných enginů, jako je d8.

Zdroj: opennet.ru

Přidat komentář