November 24, 2022

What is the Ethereum Virtual Machine?

The Balance Ecosystem encompasses a wide range of innovative products and developments in various DeFi and Web3 technology areas.
Balance is poised to build bridges between the theoretical and practical sides of finance so that there is a means in which we can provide real-world solutions and create value driven products within the web3 space.

Balance Capital

When you run a program, the central processing unit (CPU) of whatever computer you use utilizes a compiler that translates the code written in a human-readable programming language into byte code that the CPU can understand and process. In the same way, an EVM is a virtual CPU that aggregates the processing of the decentralized network of computers that run the Ethereum network.

This article allows you to understand what EVM is, its role in Web3, and the projects that are building their own virtual machines.

EVM is the heart and brain of Ethereum

Just like the heart, the EVM pumps data into the network of Ethereum nodes and computers, processes transactions being executed from smart contracts, and pumps back that new information to the other nodes. It works as a virtual CPU of several CPUs - basically a distributed state machine.

As it is virtual, it cannot be bought. Instead, it is being run using a software called Geth. A user that uses Geth indirectly accesses the EVM and becomes capable of changing the state of the Ethereum blockchain via smart contracts.

EVM allows the network to only have one distributed state of the blockchain at any given point in time - maintaining a ledger that is ‘continuous, uninterrupted, and immutable.’

Three things make the EVM go round

Smart contracts, Opcodes, and Gas.

Smart contracts are codes built using the programming language called Solidity. These enable users to enter into transactions without asking the permission of a central authority.

When smart contracts are processed, the written code is compiled into byte codes and then processed into opcode. Why is this additional processing step required? Opcodes are specially designed to write instructions catered to the blockchain. Hence, pushing opcodes into EVM is a lot more efficient for processing.

Every second, tons of smart contracts are being executed into the blockchain. However, there is usually a queue, as the network has limited processing power. This is where gas prices come into play.

Processing each opcode incurs a gas price, and more complex opcodes also correspond to higher gas prices. The complexity of opcodes, however, is not the only factor. The more congested the network, the more expensive gas prices. If one wants to get ahead in line, they must also increase their fees - simply following the concepts of supply and demand.

EVM exists in other networks

Even though the word Ethereum is engraved in it, the technology brought by EVM has become the core of several other blockchains. Instead of building a new model from scratch, many popular blockchains are built to be EVM-compatible.

Building EVM-compatible blockchains allow users to process transactions with less congestion and less gas prices than those in the Ethereum network, while still benefiting from its technology. These include the Binance Smart Chain, Avalanche, Fantom, Cardano, Polygon, Tron, and many more.

There are other VMs

As a first-mover, Ethereum carries the most blockchain transactions, and many developers are coming to change that. One of which is FuelVM - boasting a modular model as opposed to the incumbent monolithic design. It aims to stand as the ‘fastest execution layer for the modular blockchain stack.’ Another one is NeoVM, which claims to be a lightweight virtual machine that uses the Byzantine Fault Tolerance (dBFT) algorithm in producing blocks.

Whether Ethereum continues to dominate or another project takes charge, the blockchain technology is here to stay. Vitalik Buterin thinks that the future will be multi-chain. Do you agree? Will EVM continue to dominate for the decades to come?

Let us know your thoughts!