Ir publicēts tīmekļa pārlūkprogrammu veiktspējas salīdzināšanas rīku komplekts JetStream 3. Tas testē JavaScript un WebAssembly dzinēju veiktspēju, darbinot tipiskas skaitļošanas ziņā ietilpīgas tīmekļa lietojumprogrammas. Lai sasniegtu objektīvus un neatkarīgus rezultātus, projektu kopīgi izstrādā konkurējošu pārlūkprogrammu dzinēju izstrādātāji no Google, Apple un Mozilla. Kods ir pieejams saskaņā ar BSD licenci.
Jaunā versija ņem vērā mūsdienu tendences un izmaiņas, kas notikušas tīmeklī kopš JetStream 2 izlaišanas 2019. gadā, kā arī atjaunina testus, lai tie atbilstu reālu tīmekļa lietojumprogrammu darbības modeļiem un atspoguļotu reālu veiktspēju, nevis sintētiskus rezultātus, kuriem pārlūkprogrammu dzinēji ir īpaši optimizēti.
Atšķirībā no Speedometer 3 etalona, JetStream 3 koncentrējas uz skaitļošanas spēju mērīšanu, nevis saskarnes renderēšanas un DOM manipulācijas ātruma mērīšanu. JetStream 3 labāk atspoguļo pārlūkprogrammas spēļu, fizikas simulatoru, pamata ietvara funkcionalitātes, kriptogrāfisko rīku un sarežģītu algoritmu veiktspēju.
WebAssembly (Wasm) testēšanas iespējas ir ievērojami paplašinātas, tostarp tādu uzlabotu WebAssembly funkciju kā izņēmumu apstrādes, vektoru SIMD instrukciju izmantošanas un WasmGC paplašinājuma novērtēšana projektu izpildei atkritumu savākšanas valodās. Ir pievienotas veiktspējas pārbaudes WebAssembly lietojumprogrammām, kas veidotas, izmantojot J2CL, Dart2wasm, Kotlin/Wasm, Rust un .NET rīku komplektus, un ģenerētas no Java, Dart, Kotlin, Rust un C# koda.
Jaunās darba slodzes, ko izmanto WebAssembly testēšanā, ietver argon2 hešu aprēķināšanu, mašīnmācīšanās modeļa palaišanu, izmantojot SIMD instrukcijas optimizācijai, lietotāja saskarņu ģenerēšanu Dart un Kotlin valodās, SQLite3 palaišanu un interpretētāja un izpildlaika .NET palaišanu, kas kompilēts WebAssembly valodā.
Pievienoti 15 jauni JavaScript testi, tostarp Babylon.js 3D dzinējs, ed25519 eliptisko līkņu operācijas, MobX bibliotēka, sintakses izcelšana ar prismjs, vairākas starpniekservera implementācijas, staru izsekošana, failu sistēmas operācijas, Three.js 3D daļiņu uzvedības simulators, Typescript 5.9 kompilācija, virkņu validācija ar validator.js un lapu ģenerēšana ar React.
Lai novērstu centrālā procesora frekvences un I/O slodzes ietekmi uz rezultātiem starp testiem, JetStream pirms testu palaišanas pārlūkprogrammā ielādē visus resursus. Lai samazinātu maksimālo atmiņas patēriņu un nodrošinātu kešatmiņu, resursi tiek glabāti kā URL kodēti blobi. JetStream var izmantot ne tikai pārlūkprogrammu, bet arī atsevišķu dzinēju, piemēram, d8, testēšanai.
Avots: opennet.ru
