As the next generation of highly scalable blockchain, Solana has gained a lot of attention. This is mainly due to its excellent performance, which can handle thousands of transactions per second with almost negligible gas costs. One of the key elements of Solana's advanced technology is its execution environment SVM, which includes the Sealevel parallelization engine.

This article introduces the Solana Virtual Machine (SVM) and how this innovative infrastructure enables the Solana blockchain to deliver higher performance than traditional EVM blockchains such as Ethereum. While EVM has long been the dominant virtual machine standard in the encryption world, we'll also explore how SVM is gradually being expanded through rollup solutions like Nitro and Eclipse.

Solana Virtual Machine (SVM) and Sealevel

The Solana Virtual Machine, or SVM for short, is the execution environment for processing transactions and smart contracts/programs on the Solana network. To better understand SVM, we first need to understand how virtual machines work in an encrypted network.

In the context of blockchain, a virtual machine (VM) is a piece of software that runs programs, more commonly known as a runtime environment, for executing smart contracts of a cryptocurrency network. When a transaction is submitted, the network's virtual machine is responsible for processing it and managing the blockchain state (the current state of the entire network) affected by the execution of this transaction. The specific rules for changing network status are defined by the virtual machine.

When processing a transaction, the VM converts the smart contract code into a format that the validator hardware can execute. On Solana, the main languages ​​for writing smart contracts are Rust, C, and C++, which are compiled into BPF bytecode through the Solana Virtual Machine (SVM), so that transactions can be efficiently executed by network nodes (validators).

The nodes of the Solana network, called validators, each run their own Solana Virtual Machine (SVM) isolation environment to maintain consensus across the blockchain. When a smart contract is deployed (modifies the network state), it communicates the required state changes to the runtime. The Solana runtime then forwards these state changes to the SVM instances running in each validator system, and all validator nodes receive a copy and translate it, thus updating the blockchain. This distribution of SVM instances among validators results in a decentralized network, reducing the risk of DDoS attacks or shutdowns. Additionally, this isolation ensures that potential bugs or vulnerabilities in smart contracts do not compromise the security or stability of the entire Solana network.

In summary, these SVM instances can be thought of as “microcomputers” that perform the necessary operations to update the state of the Solana network based on instructions provided by transactions. While many blockchains today rely on the Ethereum Virtual Machine (EVM), Solana has developed its own virtual machine with unique features that provide improved performance.

The key component of SVM is Sealevel. The engine allows multiple smart contracts to run simultaneously without affecting each other's performance, enabling "horizontal" scaling within the Solana execution environment, a concept called parallel processing. This is possible because Solana smart contracts describe what data (state) will be read or written when executed at runtime. This allows transactions without conflicts to run concurrently, as well as those that only read the same information. Sealevel therefore enables SVM to process tens of thousands of transactions simultaneously, rather than processing them one after another like the Ethereum Virtual Machine (EVM).

SVM and EVM (Ethereum Virtual Machine)

Although EVM and SVM perform similar functions, Solana VM is more efficient and faster. On EVM, when a smart contract transfers a dollar from a user’s balance, this transaction is stored in the storage of the specific contract. This design creates potential problems if the Ethereum Virtual Machine attempts to process multiple transactions in parallel. For example, two different smart contracts might try to spend a user's balance at the same time, or another contract might read the same user's balance during an update, causing inconsistencies and conflicts.

In contrast, the Solana account model separates data such as user balances for better organization and efficiency. Transactions on Solana also need to explicitly specify the data they will read and modify before executing in the SVM. As mentioned earlier, this allows programs that do not interact with the same data to run concurrently, which helps alleviate congestion and reduce high fees. For example, Solana VM can handle both Toly sending $1 to Raj and Armani sending $3 to Chase.

Part of the reason the EVM has difficulty processing multiple transactions simultaneously is that it is a "single-threaded" runtime environment that can only handle one contract at a time. Therefore, the EVM design does not take advantage of multi-core hardware, meaning that only one core in the validator hardware is actively processing transactions, while the other cores remain underutilized. This often results in network congestion and higher transaction fees. However, it is important to note that in addition to not having a multi-threaded runtime, other factors can cause EVM limitations, such as the desire to keep hardware requirements low on the running nodes.

Sealevel, on the other hand, optimizes the performance of the Solana runtime by efficiently utilizing available hardware resources. SVM is a multi-threaded runtime environment designed to process multiple transactions in parallel by using all available cores of the validator machine. This allows Solana to scale more efficiently as validator hardware continues to improve. Thanks to its architecture, Solana VM can also better manage transaction fees. This has led to the development of localized fee markets, allowing fees to be allocated based on smart contracts. In contrast, the EVM chain relies on a global fee market, which means that NFT mints can influence swaps or DeFi transactions, even if those transactions are unrelated.

To sum up, the parallel processing capabilities of SVM enable Solana to achieve higher TPS, resulting in faster transaction speeds, and the cost is almost negligible compared to the EVM architecture. SVM is positioned as the next generation blockchain environment with higher efficiency and higher performance. As more developers realize this, we are starting to see more adoption of SVM as an execution environment for smart contracts, and an emerging SVM aggregation ecosystem is forming.

The Emerging Ecosystem of SVM Rollups

Aggregation is a blockchain scaling solution that processes transactions outside of a layer 1 blockchain (e.g., Solana) and then publishes the data retroactively to layer 1. Rollups are designed to reduce network congestion and transaction fees by bundling multiple transactions together to form a "proof" that is then submitted to the main chain. The biggest advantage of building a rollup is the ability to fully customize the chain. This customization allows for a variety of use cases, such as customized order books, cryptographic mempools to minimize MEV (Miner Extractable Value), or permissioned applications designed to meet specific requirements.

Virtual machines can also be used to simplify the deployment process for developers on other chains using the same VM. This network effect greatly benefits Ethereum and its VM, as it is the first runtime environment for cryptographic smart contracts. As such, the EVM has been the primary execution environment for building aggregated blockchains. Among the two types of rollups, Optimistic and Zk, Optimistic rollups such as Arbitrum are the most common. Recently, there have been many advancements in SVM aimed at bringing rollup technology to Solana developers. The main projects that are built for Solana are Nitro and Eclipse.

Nitro is an Optimistic rollup solution, similar to Arbitrum or Optimism, that leverages the Solana Virtual Machine (SVM) to enable Solana developers to port their dApps to various ecosystems. Nitro plans to launch first on Sei, an industry-specific transaction chain based on Cosmos, before expanding to other chains. It uses SVM to execute transactions in parallel, meaning users will be able to execute just like on Solana, while Nitro uses Sei for settlement and consensus. Additionally, as Sei becomes part of the Cosmos ecosystem, Nitro’s projects and their users will be able to benefit from IBC interoperability technology and access Cosmos assets and liquidity.

Another SVM rollup solution in development is Eclipse, which is designed to facilitate the deployment of customizable rollups. Eclipse's optimistic rollups enable projects to create their own unique application chains while benefiting from the security of established networks (e.g. Cosmos Application Chain, Polygon, Ethereum) and leveraging the Solana Virtual Machine (SVM). The SVM acts as the execution environment, and Eclipse handles settlement, consensus, and data availability (DA) with Layer 1 network management chosen by the developer. Currently, Eclipse provides an Optimistic rollup solution, but is also working on launching zk-rollups.

Eclipse has released two rollup solutions built on top of SVM:

  • Polygon SVM: With this rollup, any project built on Solana can be easily deployed on the Polygon network;

  • Cascade: Introduced by Injective and Eclipse, Cascade is an SVM rollup optimized for the IBC ecosystem. It will allow Solana projects to effortlessly deploy to Cascade and access the assets and liquidity of the Cosmos AppChain. Additionally, projects on Injective can now take advantage of Cascade’s parallelized SVM.

All of these solutions simplify the use of Solana VM and expand its reach. Users from other chains will also be able to "taste" Solana's parallelization experience without any barriers, which may lead to more people recognizing the advantages of SVM, allowing more projects to move their dApps to Solana from its Benefit from the architecture and add more users.

SVM is the next generation blockchain environment for developers

Although only three years old, Solana has already demonstrated impressive performance and the development of extension solutions (such as Nitro and Eclipse) on top of its VM, highlighting the success of its innovative execution architecture. Solana has been able to learn from the challenges faced by older networks like Bitcoin and Ethereum. Bitcoin was not designed for smart contracts, which led to the emergence of Ethereum. Likewise, Ethereum was not ready for mass adoption and high-speed transactions, paving the way for Solana and parallel processing. Additionally, it is becoming increasingly easier for developers to access SVM environments, with Neon Labs introducing Solidity compatibility with the Solana runtime, as well as the upcoming Runtime v2 upgrade, which should enable developers to use multiple programming languages (e.g. Move) Build SVM-compatible dApps.

It's clear that Solana VM provides a more advanced environment for building next-generation applications. Parallel processing of transactions enables higher throughput. Similar to what is possible in traditional finance, enabling developers to build any type of product without worrying about speed limits or fees. Building on-chain with TPS 15 will not lead to mass adoption of crypto. Thanks to SVM and Sealevel, Solana can (already) process thousands of transactions without congestion or significant gas fees, making it the perfect environment for building these new applications. As validator hardware improves, Solana’s Sealevel runtime will be able to process more transactions in parallel, widening the gap between SVM and EVM while attracting more users.

Squads will support extensions to the Solana Virtual Machine (SVM) and introduce multi-signature (multisig) capabilities to the entire SVM ecosystem, allowing anyone to manage the chain using the best blockchain execution environment and the best self-hosting experience on assets.