Wasmer 2.0 er allerede utgitt og leveres med SIMD, forbedringer og mer

Etter nesten seks måneder etter lanseringen av den første versjonenble lanseringen av den nye versjonen av Wasmer-prosjektet kunngjort, som er i sin andre hovedversjon og hvor viktige endringer er gjort i en slik grad at de interne API-ene i denne andre versjonen er inkompatible, selv om det også er lagt til nye funksjoner som gir stabilitet, sikkerhet og ytelsesforbedringer.

For de som ikke er klar over Wasmer, du bør vite at den utvikler en kjøretid for å utføre WebAssembly-moduler som kan brukes til å lage universelle applikasjoner som kan kjøres på flere operativsystemer og for å kjøre utro som ikke er klarert isolert.

Bærbarhet tilbys ved å kompilere applikasjonskoden i lavnivå WebAssembly mellomvare Den kan kjøres på hvilket som helst operativsystem eller integreres i programmer på andre programmeringsspråk. Programmer er lette containere som kjører pseudokoden WebAssembly.

Disse containere er ikke knyttet til operativsystemet og kan inneholde kode opprinnelig skrevet på hvilket som helst språk programmering. Emscripten Toolkit kan brukes til å kompilere til WebAssembly. For å oversette WebAssembly til gjeldende plattformmaskinkode støttes det å koble til forskjellige build backends (Singlepass, Cranelift, LLVM) og motorer (ved hjelp av JIT eller generere maskinkode).

Tilgangskontroll og interaksjon med systemet tilbys via WASI (WebAssembly System Interface) API, som gir programmeringsgrensesnitt for å jobbe med filer, stikkontakter og andre funksjoner som tilbys av operativsystemet.

Programmer er isolert fra hovedsystemet og de har bare tilgang til deklarert funksjonalitet (sikkerhetsmekanisme basert på administrasjonsmuligheter for handlinger med hver av ressursene (filer, kataloger, stikkontakter, systemanrop, etc.).

Hovednyhetene til Wasmer 2.0

I denne nye versjonen som presenteres, blir det nevnt at den vesentlige endringen i versjonsnummer av Wasmer er forbundet med innføring av inkompatibilitetsendringer i den interne APIen, som ifølge utviklerne påvirker ikke 99% av brukerne fra plattformen på noen måte.

Det er også en endring i formatet på serialiserte Wasm-moduler blant store kompatibilitetsendringer (moduler seriell i Wasmer 1.0 vil ikke kunne brukes i Wasmer 2.0).

Videre støtte for SIMD-instruksjoner er uthevet (Enkel instruksjon, flere data) som tillate parallellisering av dataoperasjoner. Områder der bruk av SIMD kan øke produktiviteten betydelig inkluderer maskinlæring, videokoding og dekoding, bildebehandling, fysisk prosessimulering og grafisk manipulering.

også støtte for referansetyper er uthevet, slik at Wasm-moduler får tilgang til informasjon i andre moduler eller i basismiljøet, og det er gjort betydelige ytelsesoptimaliseringer. LLVM-kjøretidshastigheten med flytende tall er økt med omtrent 50%.

Funksjonssamtaler har blitt satt fart betydelig ved å redusere situasjoner som krever kjerneanrop. Ytelsen til Cranelift-kodegeneratoren er økt med 40%. Reduksjon av datadeserialisering. For å gjenspeile kjernen mer nøyaktig, har motornavnene blitt endret: JIT → Universal, Native → Dylib (Dynamic Library), Object File → StaticLib (Static Library).

Endelig Hvis du er interessert i å lære mer om Wasmer, du bør vite at prosjektkoden er skrevet i Rust, den har MIT-lisensen, og du kan sjekke detaljene på den offisielle nettsiden på følgende lenke.

Installer Wasmer-kjøretiden

På den annen side, for de som er interessert i å kunne kjøre WebAssembly-beholderen, trenger du bare å installere Wasmer-kjøretiden på systemet ditt, som kommer uten eksterne avhengigheter.

Det er viktig å nevne det Wasmer kan kjøres på hvilken som helst plattform macOS, Linux og Windows, er det eneste kravet at kjøretiden er installert på systemet ditt.

For å gjøre dette, bare kjør følgende kommando i en terminal:

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

Og etter det må de utføre den nødvendige filen:

wasmer test.wasm

Hvis du trenger å vite mer om hvordan Wasmer fungerer eller vil vite kildekoden, kan du konsultere alt det I den følgende lenken.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: AB Internet Networks 2008 SL
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.