Wasmer 2.0 har redan släppts och levereras med SIMD, förbättringar och mer

Efter nästan sex månader efter lanseringen av den första versionen, tillkännagavs lanseringen av den nya versionen av Wasmer-projektet, som är i sin andra huvudversion och där viktiga förändringar har gjorts i sådan utsträckning att de interna API:erna i denna andra version är inkompatibla, även om nya funktioner också har lagts till som tillför stabilitet, säkerhet och prestandaförbättringar.

För de som inte är medvetna om Wasmer, du borde veta att han utvecklar en körtid för att köra WebAssembly-moduler som kan användas för att bygga universella appar som kan köras på flera operativsystem och för att köra opålitlig kod isolerat.

Portabilitet tillhandahålls genom att kompilera applikationskoden till lågnivå WebAssembly-mellanprogram Det kan köras på vilket operativsystem som helst eller bäddas in i program på andra programmeringsspråk. Program är lätta behållare som kör WebAssembly-pseudokod.

Dessa behållare är inte bundna till operativsystemet och kan innehålla kod som ursprungligen skrivits på vilket språk som helst programmering. Emscripten verktygslåda kan användas för att kompilera till WebAssembly. För att översätta WebAssembly till aktuell plattformsmaskinkod, stöds anslutning av olika build-backends (Singlepass, Cranelift, LLVM) och motorer (med JIT eller generering av maskinkod).

Åtkomstkontroll och interaktion med systemet tillhandahålls av WASI (WebAssembly System Interface) API, som tillhandahåller programmeringsgränssnitt för att arbeta med filer, sockets och andra funktioner som tillhandahålls av operativsystemet.

Applikationer är isolerade från huvudsystemet och har endast tillgång till den deklarerade funktionen (säkerhetsmekanism baserad på hanteringsmöjligheter för åtgärder med var och en av resurserna (filer, kataloger, sockets, systemanrop, etc.).

Huvudnyheterna i Wasmer 2.0

I denna nya version som presenteras nämns det att den betydande förändringen i versionsnumret Wasmers är associerad med introduktionen av inkompatibilitetsändringar i det interna API:et, vilket, enligt utvecklarna, kommer inte att påverka 99 % av användarna från plattformen på något sätt.

En förändring i formatet för serialiserade Wasm-moduler observeras också mellan större kompatibilitetsändringar (moduler som serialiserats i Wasmer 1.0 kommer inte att kunna användas i Wasmer 2.0).

Dessutom, stöd för SIMD-instruktioner är markerat (Enstaka instruktion, flera data) att möjliggör parallellisering av dataoperationer. Områden där användningen av SIMD avsevärt kan öka produktiviteten inkluderar maskininlärning, videokodning och avkodning, bildbehandling, fysisk processimulering och grafikmanipulation.

Tambien stöd för referenstyper är markerat, ger Wasm-moduler tillgång till information i andra moduler eller i basmiljön och betydande prestandaoptimeringar har gjorts. Hastigheten på LLVM-körtiden med flyttal har ökats med cirka 50 %.

Funktionsanrop har snabbats upp avsevärt genom att minska situationer som kräver anrop till kärnan. Prestandan för Cranelift-kodgeneratorn har ökat med 40 %. Minskad datadeserialiseringstid. För att mer exakt återspegla essensen har namnen på motorerna ändrats: JIT → Universal, Native → Dylib (Dynamiskt bibliotek), Objektfil → StaticLib (Statiskt bibliotek).

Slutligen Om du är intresserad av att lära dig mer om Wasmer, du bör veta att koden för projektet är skriven i Rust, den har MIT-licensen och du kan kontrollera dess detaljer på dess officiella webbplats på följande länk.

Installera Wasmer-körningen

Å andra sidan, för dem som är intresserade av att kunna köra WebAssembly-behållaren behöver du bara installera Wasmer-körtiden på ditt system, som kommer utan externa beroenden.

Det är viktigt att nämna det Wasmer kan köras på vilken plattform som helst macOS, Linux och Windows, det enda kravet är att dess körtid installeras på ditt system.

För att göra detta, kör bara följande kommando i en terminal:

curl https://get.wasmer.io -sSfL | sh

Och efter det måste de köra den nödvändiga filen:

wasmer test.wasm

Om du behöver veta mer om hur Wasmer fungerar eller vill veta dess källkod kan du konsultera allt detta I följande länk.


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för data: AB Internet Networks 2008 SL
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.