MAP Protocol
Published in

MAP Protocol

Tech Talk 6 — MAP-VM in Depth

Last week we talked about the MAP Smart System, one of the crucial parts of the SMART system is MAP-VM. This week, we will have a more in-depth look at what MAP-VM is and do a simple comparison with Ethereum VM and other execution engines.

MAP-VM is a high-performance virtual machine based on WebAssembly. WebAssembly is a new generation code format that can be run directly in the browser. Compared with the EVM used by Ethereum, MAP-VM can run code at a speed close to the native computer hardware speed, while also providing a more flexible contract interface. Compared with V8, Chakra, Spidermonkey, and other execution engines, MAP-VM is designed for consensus execution, and enhances various features to adapt to contract code execution.

Since the WebAssembly open standard is still developing, many new features are being added to the standard, and MAP-VM uses a subset of WebAssembly. In addition to implementing the WebAssembly standard specification, MAP-VM provides the following enhanced features:

  • For soft floating-point arithmetic, the operation of the contract depends on the execution environment of a deterministic operation. MAP-VM uses soft floating-point arithmetic. Compared with the floating-point arithmetic of the local CPU instruction set, it can provide absolute consistency.
  • Deterministic execution, the contract code has a definite and consistent running result in different environments, and all abnormal call and operation errors are accurately handled. Compared with v8, MAP-VM, Spidermonkey’s highly optimized JIT engine can guarantee the absolute consistency of the calculation process and calculation results.
  • Efficient measurement. In MarcoPolo’s consensus, both computing and storage are scarce resources. MAP-VM uses the gas mechanism similar to Ethereum. It can accurately calculate the computing resource consumption of the code while the wasm is executed, without affecting the overall performance.

MAP-VM is a stack-based virtual machine that can provide function library export and import custom function interfaces like JavaScript. MAP-VM will import a standard set of host functions, defined as MEI (MAP Environment Interface). MEI provides basic APIs to support the operation of wasm, including algorithm signature, digest operation, block data, state storage, and other operations.

In summary, MAP-VM embraces the latest WebAssembly standard specifications and adds some enhanced features to meet the future peer to peer electronic cash smart contract requirements, which sets a profound foundation for the MAP protocol. For developers out there who are interested in the implementation of the MAP-VM, please visit MAP team’s GitHub repo for more info. https://github.com/marcopoloprotocol

· MarcoPolo Protocol Twitter and Telegram Channel (For the latest news)

· MarcoPolo Protocol Telegram Community: English, Россия, Türkiye, Việt Nam, Brazil, and Indonesia; Korean Kakao Community: 코리아

· MarcoPolo Protocol Medium (For the latest articles)

· MarcoPolo Protocol WhitePaper, and Roadmap

· MarcoPolo Protocol GitHub (For the complete codes)

For more information, visit marcopolo.link

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
MAP Protocol

MAP Protocol

The Omnichain Network for An Interoperable Web3