Coins: 14,883
Exchanges: 1,149
Market Cap: $2.376T 2.5%
24h Vol: $64.988B
Gas: 5 GWEI
Go Ad-free
Guides
TABLE OF CONTENTS

What Is the Solana Virtual Machine (SVM)?

3.8
| by
Joel Agbo
|
Edited by
Vera Lim
-

What Is the Solana Virtual Machine (SVM)?

The Solana Virtual Machine (SVM) is the software infrastructure on the Solana blockchain that enables Solana to handle thousands of transactions per second by utilizing a parallel processing model for dApps and smart contracts.


Key Takeaways

  • The Solana Virtual Machine is the execution environment for smart contracts on the Solana blockchain. It enables the Solana blockchain to handle thousands of transactions per second. 

  • A virtual machine is a software emulation of a computer system that executes smart contracts within a secure environment.

  • Solana VM is written in Rust programming language and runs a parallel processing model for applications. According to the developers, this enables greater performance and network capacity.

  • This article discusses how the Solana Virtual Machine works and other key features.


What Is Solana Virtual Machine SVM

Smart contracts are a key part of the blockchain. Originally, blockchains were designed as a giant alternative payment network for one-way transactions between peers. With the creation of blockchain virtual machines (VM), it enabled smart contracts to be built on top of blockchains. From then on, the blockchain became a base layer upon which anything could be built. 

Ethereum developed the first instance of a virtual machine for blockchain technology. The Ethereum Virtual Machine (EVM) has seen wide adoption, with popular Layer 1 blockchains such as BNB Smart Chain, Avalanche and Tron being built as a fork of the EVM, not to mention the many EVM-compatible Layer 2s being built today. Through the EVM, developers can easily port existing applications across EVM-compatible blockchains with minimal code changes. 

However, the Solana Virtual Machine (SVM), one of the newest prototypes of a virtual machine built to power smart contract blockchains, is emerging as a competitor. According to developers, Solana VM was built from scratch with technologies that focus on high performance and overall agility. 

Understanding the Solana Virtual Machine (SVM)

The Solana Virtual Machine handles smart contract transactions for the Solana blockchain. Built with Rust programming language, the developers claim that the SVM is adjusted for high-demand conditions and designed to handle transactions in the most efficient way. As a virtual machine, the SVM operates as a virtualized processing machine tasked with the role of handling smart contract deployment, processing transactions, and other requests from these contracts.

These transactions are state change requests, where the Solana VM computes requests and updates the overall state of the blockchain after each run. In summary, the SVM is the Solana blockchain’s execution environment. It acts in synergy with the consensus layer of the Solana blockchain to provide a dynamic network to build and run for Web3 applications.

The SVM supports diverse smart contract applications including GameFi, DeFi applications, and other decentralized applications. Like the EVM, Solana VM is a modular machine, where it can be deployed alongside other components, e.g. data availability / consensus layer, to build decentralized networks with little or no changes to its original form.

To better understand the Solana VM, let's take a look at what a Virtual Machine actually is.

What Is a Virtual Machine?

Virtual machines (VMs) are a software emulation of the computer system, which can run an operating system, along with installing and executing applications. Traditionally, users ran a VM as sandbox environments that are fully isolated from their main computer operating system.

While traditional virtual machines are isolated sandboxes, blockchain virtual machines function as the execution layer of the network for decentralized applications. Blockchain VMs are decentralized, where nodes on the network run an instance of the blockchain’s virtual machine on their device, compute state changes, and monitor state changes suggested by other validators to achieve consensus, ensuring that the records of transactions are properly recorded on the network. 

How the Solana Virtual Machine Works

Blockchain users are always looking for secure blockchain networks that allow them to perform transactions as fast as possible while paying the cheapest possible fees. The Solana VM was developed to satisfy the throughput desires of blockchain users and developers, while balancing the blockchain trilemma of decentralization, scalability, and security. 

At the core of the Solana VM’s operation is the parallel transaction processing model. By structuring the Solana blockchain to process multiple transactions simultaneously instead of sequentially, it can offer higher throughput while enabling scalability. 

Parallel Execution with SeaLevel

SeaLevel is one of the most vital components within the Solana VM, as it allows the virtual machine to execute transactions in parallel. In contrast to the sequential execution model, the parallel transaction processing model processes transactions simultaneously by validators across the network. This allows the network to achieve higher throughput and enhanced scalability. 

EVM vs SVM transaction processing

One of the challenges around parallel execution is when two transactions that change the state of the same account are executed at the same time, which could lead to errors in the final computation of the account. 

For example, a wallet has a 0.5 SOL balance. There are two requests: a request to send 2 SOL to the account and a request to transfer 1 SOL from the account. If the transfer request is processed before the send request, errors can occur. Let’s look at how SeaLevel handles this situation. 

With Sea Level, the Solana blockchain is able to process tons of transactions using the multiple-thread execution environment. Solana contracts are designed to be explicit in their effects, where the smart contracts state which part of the blockchain’s state is modified by each transaction. This enables the state machine to discern dependent transactions from independent transactions. Independent transactions can run without conflict since they don’t affect the same account. In the case of dependent transactions that affect the same account, they are processed in sequence to avoid conflicts.

The parallel transaction processing model allows the Solana blockchain to make maximum use of its resources, resulting in faster transaction processing and cheaper transaction fees. Moreover, to solve the issue of gas fee scalability faced by other virtual machines like the EVM, Solana blockchain operates a localized fee market.

Localized Fee Market

In contrast to the global fee market, the localized fee market prevents a surge in activity from one smart contract from affecting the overall gas structure of the network. 

Global vs local fee markets

In global fee markets, the whole network jostles for the same processing facility. In a scenario where one smart contract experiences high demand, the whole network suffers from the high request frequency from this smart contract. This leads to situations where the overall network fee swells when a popular project experiences a spike in activity, for example during an NFT mint for a popular project.

To prevent this, Solana network implements a localized fee market. With this, each smart contract on the network operates a separate processing charge structure. In case of a spike in activity, transactions from the smart contract experience a spike in gas while the rest of the network still operates on the normal gas fee rate. This limits the impact of spikes in activity from related smart contract application(s), while the rest of the network remains largely unaffected. 

However during peak demand periods, where all dApps on the network are experiencing high activity, it still increases competition for remaining blockspace, and results in higher gas fees.

Rollup Projects Using the SVM

Due to the high performance of the Solana VM, some rollup projects are choosing the SVM for execution, while retaining the security and decentralization of the main network. Here are some rollup networks using the Solana Virtual Machine.

Eclipse

Eclipse L2

 

Eclipse is an EVM-compatible Layer 2 zero knowledge network built using the Solana VM. According to the project, adopting the Solana VM model to build an extremely fast rollup and settling transactions on the Ethereum network enables them to combine the best of both worlds. While the Solana VM is able to process transactions faster than the EVM, Ethereum is known to be one of the most secure and decentralized smart contract networks. Therefore, Eclipse is able to achieve an improved speed compared to other EVM Ethereum rollup networks, while maintaining Ethereum-level security and decentralization.

Eclipse uses Celestia for its Data Availability (DA) layer. With Celestia, it aims to develop a stable network for the transfer of data between its execution environment and the Ethereum consensus system. It also uses RISC zero for its Zero knowledge proof computation. Using a ZK validity proof system, Eclipse hopes to achieve immediate verification for its transaction data on the mainnet. This eliminates the need for an extra fraud-proof system and a waiting interval for mainnet validation, as in the case of optimistic rollups.

At the time of writing, Eclipse is yet to launch publicly. According to a recent announcement from the Eclipse Foundation, the project has raised a total of $65 million to advance its efforts in building an SVM L2 for the Ethereum blockchain.

MakerDAO

The MakerDAO community is on the verge of transition to a new chain for the complete reimplementation of the entire Maker Protocol built natively on a new, standalone blockchain. 

While this is still in the community governance phase, a little information is already accessible. This includes MakerDAO co-founder Rune Christensen's preference for the Solana codebase as the prototype for the project’s new chain. In a proposal presented to the community by Rune, he cited the Solana blockchain’s resilience amidst the FTX exchange collapse and its optimization for the purpose of operating a singular, highly efficient blockchain as his major reason for picking the network’s codebase as his top choice. 

Based on the community post, Cosmos is the other main contender, with its history of successful appchains using the Cosmos stack. However, he highlights that “Cosmos is not built around efficiency at its core in the same way Solana is which means it would cost more to maintain and keep performant.”

If the project finally decides to adopt the Solana network codebase as the standard for its NewChain, this will serve as a bold statement of the positive impression the Solana VM have made on blockchain projects. Reiterating his preference for the Solana Codebase, Rune mentioned that developing a blockchain network with the Solana codebase will enable Maker to benefit from the resilience of the Solana blockchain and its community. Also, MakerDAO will be able to access a large pool of developers and resources to enable it to grow faster. The network will also create a communication path with the Solana network using bridges. Read the full proposal and discussion here.

SVM vs. EVM

Solana network is creating a path for itself with the Solana VM. As the SVM ecosystem grows, it will compete with the much older EVM in terms of relevance and adoption. SVM and EVM are able to handle smart contract transactions for blockchain networks. Like the EVM, the SVM is gaining application on other blockchain networks apart from the Solana Network. Here, we take a look at some of their key differences.

Programming Language: Rust vs. Solidity

The Solidity programming language was developed specifically for the EVM. It is an adaptation of the JavaScript programming language and is designed for ease of learning. Like JavaScript and many other high-level programming languages, Solidity is object-oriented, where variables are declared using objects and classes. As a programming language for smart contracts and the EVM, Solidity is designed with a focus on security. 

In comparison, Rust is a general programming language. It can be used for smart contracts and other applications. While Rust is harder to learn, it is known for its agility and memory efficiency, along with its reputation for facilitating high performance and concurrency, which aligns with Solana’s focus on scalability. 

Transaction Processing Model: Parallel vs. Sequential Processing

SVM is a multi-thread transaction processing environment. It makes extensive use of the resources available on the network to process transactions. Multiple transactions are executed concurrently across different validator cores and transaction proofs are submitted for consensus as the network attains a uniform state after each run. As outlined above, Solana SeaLevel ensures that the network avoids the complications of parallel processing while running this execution model.

Conversely, the EVM processes transactions in sequence. Multiple transactions are queued and processed one after the other. The network validates transactions using one validator core at a time. Parallel processing has shown a significantly higher throughput than sequential transaction processing models. According to reported data, the Solana blockchain can process thousands of transactions per second – this is higher than the reported speed of the Ethereum blockchain and other instances of the EVM like L2 networks and POS sidechains.

Efficiency: TPS vs. Transaction Fee

From information obtained from official network explorers, the Solana network has a transaction speed of over 2400 TPs, and transaction fees are as low as $0.001. Compared to EVM networks like Base Network with a transaction speed of about 47 TPS and a transaction fee of about $0.03, the Solana network shows a significantly higher cost and time efficiency. While this could be subject to network conditions, the Solana network can also scale to over 60,000 TPS. After the implementation of EIP-4844, Base Network’s $0.03 transaction fee is an improvement on the transaction fee on the mainnet blockchain, however, it is still short of the cost-efficiency of the Solana blockchain

Summary of SVM vs. EVM

 

Solana VM (SVM)

Ethereum VM (EVM)

Transaction processing

Multi-thread transaction processing environment

Single-thread transaction processing environment

Data Handling

Solana smart contracts describe all the states a transaction will read or write while executing

Transactions are executed in sequence, eliminating the need to declare states before execution

Programing language

Rust, C++

Solidity, Vyper, JavaScript

Efficiency

Process transactions faster

Relatively slower due to its single-thread model

Adoption

Solana, Nitro, Eclipse

Used by numerous sidechains, L1s, and L2 networks

Fee Market

Global and Localized fee market

Global Fee Market

 

Final Thoughts

The Solana Virtual Machine prioritizes high throughput; a feature sought after by a big section of blockchain developers. It was built to deliver at speed and cost less than most other processing machines, which contributes immensely to the overall popularity of the Solana blockchain. 

With the Solana network now achieving success and adoption, we are seeing early adoption of the Solana VM by other projects, similar to the earlier path taken by EVM. These projects are either building directly on what has been achieved by the Solana network, or creating their own stack using other modular components.

This article attempts to give readers an understanding of what the Solana VM actually is and how it works. However, it is not exhaustive of every aspect of the Solana VM and its associated projects. Having said this, note that this article is only for educational purposes and is not financial advice. Featured projects are not endorsed, and users should always do their own research before investing in any cryptocurrency.

CoinGecko's Content Editorial Guidelines
CoinGecko’s content aims to demystify the crypto industry. While certain posts you see may be sponsored, we strive to uphold the highest standards of editorial quality and integrity, and do not publish any content that has not been vetted by our editors.
Learn more
Want to be the first to know about upcoming airdrops?
Subscribe to the CoinGecko Daily Newsletter!
Join 600,000+ crypto enthusiasts, traders, and degens in getting the latest crypto news, articles, videos, and reports by subscribing to our FREE newsletter.
Tell us how much you like this article!
Vote count: 12
Joel Agbo
Joel Agbo
Joel is deeply interested in the technologies behind cryptocurrencies and blockchain networks. In his over 7 years of involvement in the space, he helps startups build a stronger internet presence through written content. Follow the author on Twitter @agboifesinachi

Related Articles

Select Currency
Suggested Currencies
USD
US Dollar
IDR
Indonesian Rupiah
TWD
New Taiwan Dollar
EUR
Euro
KRW
South Korean Won
JPY
Japanese Yen
RUB
Russian Ruble
CNY
Chinese Yuan
Fiat Currencies
AED
United Arab Emirates Dirham
ARS
Argentine Peso
AUD
Australian Dollar
BDT
Bangladeshi Taka
BHD
Bahraini Dinar
BMD
Bermudian Dollar
BRL
Brazil Real
CAD
Canadian Dollar
CHF
Swiss Franc
CLP
Chilean Peso
CZK
Czech Koruna
DKK
Danish Krone
GBP
British Pound Sterling
GEL
Georgian Lari
HKD
Hong Kong Dollar
HUF
Hungarian Forint
ILS
Israeli New Shekel
INR
Indian Rupee
KWD
Kuwaiti Dinar
LKR
Sri Lankan Rupee
MMK
Burmese Kyat
MXN
Mexican Peso
MYR
Malaysian Ringgit
NGN
Nigerian Naira
NOK
Norwegian Krone
NZD
New Zealand Dollar
PHP
Philippine Peso
PKR
Pakistani Rupee
PLN
Polish Zloty
SAR
Saudi Riyal
SEK
Swedish Krona
SGD
Singapore Dollar
THB
Thai Baht
TRY
Turkish Lira
UAH
Ukrainian hryvnia
VEF
Venezuelan bolívar fuerte
VND
Vietnamese đồng
ZAR
South African Rand
XDR
IMF Special Drawing Rights
Cryptocurrencies
BTC
Bitcoin
ETH
Ether
LTC
Litecoin
BCH
Bitcoin Cash
BNB
Binance Coin
EOS
EOS
XRP
XRP
XLM
Lumens
LINK
Chainlink
DOT
Polkadot
YFI
Yearn.finance
Bitcoin Units
BITS
Bits
SATS
Satoshi
Commodities
XAG
Silver - Troy Ounce
XAU
Gold - Troy Ounce
Select Language
Popular Languages
EN
English
RU
Русский
DE
Deutsch
PL
język polski
ES
Español
VI
Tiếng việt
FR
Français
PT
Português
All Languages
AR
العربية
BG
български
CS
čeština
DA
dansk
EL
Ελληνικά
FI
suomen kieli
HE
עִבְרִית
HI
हिंदी
HR
hrvatski
HU
Magyar nyelv
ID
Bahasa Indonesia
IT
Italiano
JA
日本語
KO
한국어
LT
lietuvių kalba
NL
Nederlands
NO
norsk
RO
Limba română
SK
slovenský jazyk
SL
slovenski jezik
SV
Svenska
TH
ภาษาไทย
TR
Türkçe
UK
украї́нська мо́ва
ZH
简体中文
ZH-TW
繁體中文
Login to track your favorite coin easily 🚀
By continuing, you agree to CoinGecko Terms of Service and acknowledge you’ve read our Privacy Policy
or
Forgot your password?
Didn't receive confirmation instructions?
Resend confirmation instructions
IT'S FREE! Track your favorite coin easily with CoinGecko 🚀
By continuing, you agree to CoinGecko Terms of Service and acknowledge you’ve read our Privacy Policy
or
Password must contain at least 8 characters including 1 uppercase letter, 1 lowercase letter, 1 number, and 1 special character
Didn't receive confirmation instructions?
Resend confirmation instructions
Forgot your password?
You will receive an email with instructions on how to reset your password in a few minutes.
Resend confirmation instructions
You will receive an email with instructions for how to confirm your email address in a few minutes.
Get the CoinGecko app.
Scan this QR code to download the app now App QR Code Or check it out in the app stores
coingecko
Continue in app
Track prices in real-time
Open App