Wasmer 2.0 je že izšel in ima SIMD, izboljšave in še več

Po skoraj šestih mesecih od predstavitve prve različiceje bil napovedan začetek nove različice projekta Wasmer, ki je v drugi glavni različici in v katerem so bile izvedene pomembne spremembe do te mere, da so notranji API-ji v tej drugi različici nezdružljivi, čeprav so bile dodane tudi nove funkcije, ki dodajajo izboljšave stabilnosti, varnosti in zmogljivosti.

Za tiste, ki ne vedo Wasmer, vedeti morate, da razvije izvajalno okolje za izvajanje modulov WebAssembly ki se lahko uporablja za ustvarjanje univerzalnih aplikacij, ki se lahko izvajajo v več operacijskih sistemih, in za samostojno izvajanje nezaupljive kode.

Prenosljivost je zagotovljena z zbiranjem kode aplikacije v vmesno programsko opremo WebAssembly Lahko deluje v katerem koli operacijskem sistemu ali pa je integriran v programe v drugih programskih jezikih. Programi so lahki vsebniki, ki izvajajo psevdokodo WebAssembly.

Ti vsebniki niso vezani na operacijski sistem in lahko vključujejo kodo, prvotno napisano v katerem koli jeziku programiranje. Emscripten Toolkit lahko uporabite za prevajanje v WebAssembly. Za prevajanje programske opreme WebAssembly v trenutno strojno kodo platforme je podprto povezovanje različnih gradnikov (Singlepass, Cranelift, LLVM) in motorjev (z uporabo JIT ali generiranje strojne kode).

Nadzor dostopa in interakcija s sistemom sta zagotovljena prek API-ja WASI (WebAssembly System Interface), ki ponuja programske vmesnike za delo z datotekami, vtičnicami in drugimi funkcijami, ki jih zagotavlja operacijski sistem.

Aplikacije so ločene od glavnega sistema in imajo dostop samo do prijavljene funkcionalnosti (varnostni mehanizem, ki temelji na zmožnostih upravljanja za dejanja z vsakim od virov (datoteke, imeniki, vtičnice, sistemski klici itd.).

Glavne novosti Wasmerja 2.0

V tej novi predstavljeni različici je omenjeno, da pomembna sprememba številke različice avtor Wasmer je povezan z uvedbo sprememb nezdružljivosti notranjega API-ja, ki je po mnenju razvijalcev ne bo vplivalo na 99% uporabnikov s platforme na kakršen koli način.

Med glavnimi spremembami združljivosti se je spremenila tudi oblika serializiranih modulov Wasm (moduli, serializirani v Wasmer 1.0, v Wasmerju 2.0 ne bodo uporabni).

Poleg tega, je poudarjena podpora za navodila SIMD (Eno navodilo, več podatkov), ki omogočajo paralelizacijo podatkovnih operacij. Področja, na katerih lahko uporaba SIMD znatno poveča produktivnost, vključujejo strojno učenje, kodiranje in dekodiranje videa, obdelavo slik, simulacijo fizičnega procesa in manipulacijo z grafiko.

Tudi poudarjena je podpora za referenčne vrste, modulom Wasm omogoča dostop do informacij v drugih modulih ali v osnovnem okolju in izvedene so bile bistvene optimizacije zmogljivosti. Hitrost izvajanja LLVM s števili s plavajočo vejico se je povečala za približno 50%.

Klici funkcij so se znatno pospešili z zmanjšanjem situacij, ki zahtevajo klice jedra. Zmogljivost generatorja kode Cranelift se je povečala za 40%. Zmanjšanje časa deserializacije podatkov. Da bi natančneje odražali bistvo, so bila spremenjena imena motorjev: JIT → Universal, Native → Dylib (Dynamic Library), Object File → StaticLib (Static Library).

Končno Če vas zanima več o Wasmerju, Vedeti morate, da je projektna koda napisana v Rustu, ima licenco MIT in njene podrobnosti lahko preverite na njeni uradni spletni strani naslednja povezava.

Namestite izvedbo Wasmerja

Po drugi strani pa morate za tiste, ki jih zanima zagon vsebnika WebAssembly, v vaš sistem namestiti samo izvajalno okolje Wasmer, ki je na voljo brez zunanjih odvisnosti.

Pomembno je omeniti to Wasmer lahko poganjate na kateri koli platformi macOS, Linux in Windows, edina zahteva je, da je njegovo izvajalno okolje nameščeno v vašem sistemu.

Če želite to narediti, v terminalu zaženite naslednji ukaz:

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

Po tem pa morajo zagnati zahtevano datoteko:

wasmer test.wasm

Če želite vedeti več o tem, kako deluje Wasmer, ali če želite vedeti njegovo izvorno kodo, se lahko posvetujete z vsem tem V naslednji povezavi.


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Odgovoren za podatke: AB Internet Networks 2008 SL
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.