လျင်မြန်သော WebAssembly စကားပြန်ဖြစ်သော wasm3 ၏ ပထမဆုံး ထုတ်ဝေမှု

ရနိုင်ပါတယ် ပထမအကြိမ် wasm3WebAssembly အတွက် JIT အကောင်အထည်ဖော်မှု မရှိသော မိုက်ခရိုကွန်ထရိုလာများနှင့် ပလက်ဖောင်းများပေါ်တွင် WebAssembly အက်ပလီကေးရှင်းများတွင် အသုံးပြုရန် အဓိကရည်ရွယ်သည့် အလွန်လျင်မြန်သော WebAssembly အလယ်အလတ်ကုဒ်စကားပြန်သည် JIT ကိုလုပ်ဆောင်ရန် လုံလောက်သောမှတ်ဉာဏ်မရှိပါ သို့မဟုတ် JIT အကောင်အထည်ဖော်ရန် လိုအပ်သော လုပ်ဆောင်နိုင်သော မှတ်ဉာဏ်စာမျက်နှာများကို မဖန်တီးနိုင်ပါ။ . ပရောဂျက်ကုဒ်ကို C နဲ့ရေးထားတယ်။ ဖြန့်ဝေသည် MIT လိုင်စင်အောက်တွင်။

Wasm3 ဖြတ်သန်းပါ။ စမ်းသပ်မှု WebAssembly 1.0 သတ်မှတ်ချက်နှင့် လိုက်ဖက်ညီပြီး WASI အက်ပလီကေးရှင်းများစွာကို လုပ်ဆောင်ရန် အသုံးပြုနိုင်ပြီး JIT အင်ဂျင်များထက် 4-5 ဆသာ စွမ်းဆောင်ရည်ကို ပေးစွမ်းနိုင်သည် (လွိုင်ကော်, ကရိန်းလှေကား) နှင့် မူရင်းကုဒ် အကောင်အထည်ဖော်မှုထက် 11.5 ဆ နိမ့်သည်။ အခြားသော WebAssembly စကားပြန်များနှင့် နှိုင်းယှဉ်သောအခါ (wac, အသက်, wasm-micro-runtimewasm3 သည် 15.8 ဆ ပိုမြန်လာသည်။

wasm3 ကို run ရန်၊ သင်သည် 64Kb ကုဒ်မှတ်ဉာဏ်နှင့် 10Kb RAM လိုအပ်သည်၊ ၎င်းသည် WebAssembly တွင်စုစည်းထားသော application များကို run ရန်ပရောဂျက်ကိုအသုံးပြုရန်ခွင့်ပြုသည်။ မိုက်ခရိုကွန်ထရိုလာများArduino MKR*၊ Arduino Due၊ Particle Photon၊ ESP8266၊ ESP32၊ Air602 (W600)၊ nRF52၊ nRF51 Blue Pill (STM32F103C8T6)၊ MXChip AZ3166 (EMW3166)၊
Maix (K210)၊ HiFive1 (E310)၊ Fomu (ICE40UP5K) နှင့် ATmega1284 တို့အပြင် x86၊ x64၊ ARM၊ MIPS၊ RISC-V နှင့် Xtensa ဗိသုကာများကို အခြေခံထားသော ဘုတ်များနှင့် ကွန်ပျူတာများပေါ်ရှိ ကွန်ပျူတာများ။ ပံ့ပိုးပေးထားသော အော်ပရေးရှင်းစနစ်များတွင် Linux (OpenWRT ကိုအခြေခံသည့် router များအပါအဝင်)၊ Windows၊ macOS၊ Android နှင့် iOS တို့ ပါဝင်သည်။ ဘရောက်ဆာတွင် စကားပြန်ကိုဖွင့်ရန် သို့မဟုတ် nested execution (self-hosting) အတွက် wasm3 ကို WebAssembly intermediate code တွင် စုစည်းနိုင်သည်။

စကားပြန်တွင် နည်းပညာအသုံးပြုခြင်းဖြင့် စွမ်းဆောင်ရည်မြင့်မားသည်။ Massey Meta စက် (M3) သည် bytecode ကို လျှော့ချရန်အတွက် ပိုမိုထိရောက်သော pseudo-machine ကုဒ်ထုတ်ပေးသည့် လုပ်ဆောင်ချက်များအဖြစ် ဘိုက်ကုဒ်ကို ထပ်ဆင့်ဘာသာပြန်ပေးကာ stack-based virtual machine execution model ကို ပိုမိုထိရောက်သော register-based ချဉ်းကပ်မှုအဖြစ်သို့ ပြောင်းလဲပေးပါသည်။ M3 တွင် လုပ်ဆောင်ချက်များသည် CPU မှတ်ပုံတင်ခြင်းများသို့ မြေပုံဆွဲနိုင်သော စင်စစ်စက် မှတ်ပုံတင်များဖြစ်သည့် C လုပ်ဆောင်ချက်များဖြစ်သည်။ ပိုမိုကောင်းမွန်အောင်ပြုလုပ်ခြင်းလုပ်ဆောင်မှုများ၏ မကြာခဏဖြစ်ပေါ်နေသော အတွဲများကို အနှစ်ချုပ်လုပ်ဆောင်မှုများအဖြစ် ပြောင်းလဲပါသည်။

ထို့အပြင်၎င်းကိုမှတ်သားနိုင်သည်။ သုတေသနရလဒ်များ ဖြန့်ဝေခြင်း။
ဝဘ်ပေါ်ရှိ WebAssembly။ Alexa အဆင့်သတ်မှတ်မှုများအရ လူကြိုက်အများဆုံး ဆိုက် ၉၄၈ဝဝဝ ကို ခွဲခြမ်းစိတ်ဖြာပြီးနောက် WebAssembly ကို 948 sites (1639%) တွင် အသုံးပြုကြောင်း သုတေသီများက တွေ့ရှိခဲ့သည်။ ဆိုဒ် 0.17 တိုင်းတွင် 1 ခုရှိသည်။ စုစုပေါင်း၊ 600 WebAssembly modules များကိုဆိုက်များပေါ်တွင်ဒေါင်းလုဒ်လုပ်ခဲ့ပြီး 1950 သည်ထူးခြားသည်။ WebAssembly ၏အသုံးပြုမှုအတိုင်းအတာကိုထည့်သွင်းစဉ်းစားသောအခါ စိတ်ပျက်စရာကောက်ချက်ချမှုများပြုလုပ်ခဲ့သည် - ကိစ္စများ၏ 150% ကျော်တွင်၊ ဥပမာအားဖြင့်၊ သတ္တုတွင်း cryptocurrency (50%) နှင့် အန္တရာယ်ရှိသော script များ၏ကုဒ်ကိုဝှက်ထားရန် WebAssembly ကိုအသုံးပြုခဲ့သည် (55.7%) . WebAssembly ၏တရားဝင်အသုံးပြုမှုများတွင် လည်ပတ်နေသည့် စာကြည့်တိုက်များ (0.2%)၊ ဂိမ်းများဖန်တီးခြင်း (38.8%) နှင့် စိတ်ကြိုက် JavaScript မဟုတ်သောကုဒ် (3.5%) တို့ ပါဝင်ပါသည်။ ဖြစ်ရပ်များ၏ 0.9% တွင်၊ WebAssembly ကို အသုံးပြုသူ ခွဲခြားသတ်မှတ်ခြင်း (လက်ဗွေနှိပ်ခြင်း) အတွက် ပတ်ဝန်းကျင်ကို ခွဲခြမ်းစိတ်ဖြာရန် အသုံးပြုခဲ့သည်။

လျင်မြန်သော WebAssembly စကားပြန်ဖြစ်သော wasm3 ၏ ပထမဆုံး ထုတ်ဝေမှု

source: opennet.ru

မှတ်ချက် Add