Wasm3 యొక్క మొదటి విడుదల, వేగవంతమైన WebAssembly ఇంటర్‌ప్రెటర్

అందుబాటులో మొదటి ఎడిషన్ వాస్మ్3, చాలా వేగవంతమైన WebAssembly ఇంటర్మీడియట్ కోడ్ ఇంటర్‌ప్రెటర్ ప్రాథమికంగా మైక్రోకంట్రోలర్‌లు మరియు ప్లాట్‌ఫారమ్‌లలో WebAssembly అప్లికేషన్‌లను అమలు చేయడం కోసం ఉద్దేశించబడింది, ఇవి WebAssembly కోసం JIT అమలు చేయని, JITని అమలు చేయడానికి తగినంత మెమరీని కలిగి ఉండవు లేదా JITని అమలు చేయడానికి అవసరమైన ఎక్జిక్యూటబుల్ మెమరీ పేజీలను సృష్టించలేవు. . ప్రాజెక్ట్ కోడ్ C మరియు లో వ్రాయబడింది ద్వారా పంపిణీ చేయబడింది MIT లైసెన్స్ కింద.

Wasm3 పాస్ పరీక్షలు WebAssembly 1.0 స్పెసిఫికేషన్‌కు అనుకూలంగా ఉంటుంది మరియు అనేక WASI అప్లికేషన్‌లను అమలు చేయడానికి ఉపయోగించవచ్చు, JIT ఇంజిన్‌ల కంటే 4-5 రెట్లు తక్కువ పనితీరును అందిస్తుంది (పైకెత్తిన, క్రేన్లిఫ్ట్) మరియు స్థానిక కోడ్ అమలు కంటే 11.5 రెట్లు తక్కువ. ఇతర వెబ్‌అసెంబ్లీ వ్యాఖ్యాతలతో పోల్చినప్పుడు (WAC, జీవితం, వాస్మ్-మైక్రో-రన్‌టైమ్), wasm3 15.8 రెట్లు వేగంగా ఉంది.

Wasm3ని అమలు చేయడానికి, మీకు 64Kb కోడ్ మెమరీ మరియు 10Kb RAM అవసరం, ఇది వెబ్‌అసెంబ్లీలో కంపైల్ చేయబడిన అప్లికేషన్‌లను అమలు చేయడానికి ప్రాజెక్ట్‌ను ఉపయోగించడానికి మిమ్మల్ని అనుమతిస్తుంది. మైక్రోకంట్రోలర్లు, Arduino MKR*, Arduino Due, పార్టికల్ ఫోటాన్, ESP8266, ESP32, Air602 (W600), nRF52, nRF51 బ్లూ పిల్ (STM32F103C8T6), MXChip AZ3166 (EMW3166),
Maix (K210), HiFive1 (E310), Fomu (ICE40UP5K) మరియు ATmega1284, అలాగే x86, x64, ARM, MIPS, RISC-V మరియు Xtensa ఆర్కిటెక్చర్‌ల ఆధారంగా బోర్డులు మరియు కంప్యూటర్‌లపై. మద్దతు ఉన్న ఆపరేటింగ్ సిస్టమ్‌లలో Linux (OpenWRT ఆధారంగా రూటర్‌లతో సహా), Windows, macOS, Android మరియు iOS ఉన్నాయి. బ్రౌజర్‌లో ఇంటర్‌ప్రెటర్‌ను అమలు చేయడానికి లేదా నెస్టెడ్ ఎగ్జిక్యూషన్ (స్వీయ-హోస్టింగ్) కోసం WebAssembly ఇంటర్మీడియట్ కోడ్‌లో wasm3ని కంపైల్ చేయడం కూడా సాధ్యమే.

ఇంటర్‌ప్రెటర్‌లో సాంకేతికతను ఉపయోగించడం ద్వారా అధిక పనితీరు సాధించబడుతుంది మాస్సే మెటా మెషిన్ (M3), ఇది బైట్‌కోడ్ డీకోడింగ్ ఓవర్‌హెడ్‌ను తగ్గించడానికి బైట్‌కోడ్‌ను మరింత సమర్థవంతమైన సూడో-మెషిన్ కోడ్-జనరేటింగ్ ఆపరేషన్‌లుగా ఫార్వార్డ్-ట్రాన్స్‌లేట్ చేస్తుంది మరియు స్టాక్-ఆధారిత వర్చువల్ మెషీన్ ఎగ్జిక్యూషన్ మోడల్‌ను మరింత సమర్థవంతమైన రిజిస్టర్-ఆధారిత విధానంగా మారుస్తుంది. M3లోని కార్యకలాపాలు C ఫంక్షన్‌లు, దీని వాదనలు CPU రిజిస్టర్‌లకు మ్యాప్ చేయగల వర్చువల్ మెషీన్ రిజిస్టర్‌లు. తరచుగా సంభవించే ఆప్టిమైజేషన్ కార్యకలాపాల సీక్వెన్సులు సారాంశ కార్యకలాపాలుగా మార్చబడతాయి.

అదనంగా, ఇది గమనించవచ్చు పరిశోధన ఫలితాలు వ్యాప్తి
వెబ్‌లో WebAssembly. అలెక్సా రేటింగ్‌ల ప్రకారం 948 వేల అత్యంత ప్రజాదరణ పొందిన సైట్‌లను విశ్లేషించిన తర్వాత, WebAssembly 1639 సైట్‌లలో (0.17%) ఉపయోగించబడుతుందని పరిశోధకులు కనుగొన్నారు, అనగా. ప్రతి 1 సైట్‌లలో 600 సైట్‌లో. మొత్తంగా, 1950 వెబ్‌అసెంబ్లీ మాడ్యూల్స్ సైట్‌లలో డౌన్‌లోడ్ చేయబడ్డాయి, వాటిలో 150 ప్రత్యేకమైనవి. WebAssembly ఉపయోగం యొక్క పరిధిని పరిగణనలోకి తీసుకున్నప్పుడు, నిరుత్సాహకరమైన ముగింపులు చేయబడ్డాయి - 50% కంటే ఎక్కువ కేసులలో, WebAssembly హానికరమైన ప్రయోజనాల కోసం ఉపయోగించబడింది, ఉదాహరణకు, మైనింగ్ క్రిప్టోకరెన్సీ (55.7%) మరియు హానికరమైన స్క్రిప్ట్‌ల కోడ్‌ను దాచడం (0.2%) . WebAssembly యొక్క చట్టబద్ధమైన ఉపయోగాలు లైబ్రరీలను అమలు చేయడం (38.8%), గేమ్‌లను సృష్టించడం (3.5%) మరియు కస్టమ్ నాన్-జావాస్క్రిప్ట్ కోడ్ (0.9%) అమలు చేయడం వంటివి ఉన్నాయి. 14.9% కేసులలో, వినియోగదారు గుర్తింపు (వేలిముద్ర) కోసం పర్యావరణాన్ని విశ్లేషించడానికి WebAssembly ఉపయోగించబడింది.

Wasm3 యొక్క మొదటి విడుదల, వేగవంతమైన WebAssembly ఇంటర్‌ప్రెటర్

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి