Introduction
Fuel v1 started off as a Layer 2 (L2) scalability solution for a monolithic Ethereum. Deployed at the end of 2020, it was the first optimistic rollup on mainnet Ethereum.
As blockchains are slowly moving away from a monolithic design (aka Layer-1s where consensus, data availability, and execution are tightly coupled), Fuel believes that the future is modular. This means that execution is separated from data availability and consensus.
The separation allows for specialization at the base layer, allowing for a higher transaction output due to a significant increase in bandwidth capacity.
Fuel is building the fastest execution layer for the modular blockchain stack.
Problems
Even though the emergence of L2s have reduced transaction fees significantly, the total throughput increase has been modest at best (with both optimistic and ZK approaches).
Fuel believes that if we want to achieve true global access to blockchain technology, we cannot settle for a modest reduction in fees. A dramatic change is needed, a change that not only reduces waste and inefficiency.
Hence, today Fuel is building the fastest modular execution layer. Fuel delivers the highest security and flexible throughput, with a focus on a superior developer experience.
Before we move on to discuss how Fuel achieves this, we need to first understand what is a Modular Execution Layer.
Modular Execution Layer
Fuel defines a modular execution layer as: a verifiable computation system designed for the modular blockchain stack.
In other words, Fuel is building a fraud / validity provable blockchain that leverages on a modular blockchain for data availability. It specializes in making execution as efficient as possible. From here, we can see the shift in Fuel’s focus (from the original L2 rollup to the current modular execution layer).
Solution
There are 3 central pillars to Fuel’s technology stack:
Parallel transaction execution
Fuel Virtual Machine (FuelVM)
Superior developer experience (Sway and Forc)
Parallel Transaction Execution
Fuel delivers unmatched processing capacity through its ability to execute transactions in parallel by using strict state access lists in the form of a UTXO model, used by the FuelVM. (Watch this video to find out more about the UTXO model)
Fuel uses far more threads and cores of our CPU that are typically idle in single-threaded blockchains, allowing far more computations, state accesses, and transactional throughput than its single-threaded counterparts.
FuelVM (Improved VM)
Similar to EVM (Ethereum Virtual Machine), FuelVM learns from the Ethereum ecosystem. FuelVM implemented improvements that were suggested to EVM for many years but could not be implemented due to the need to maintain backward compatability.
View a more complete list of the differences between FuelVM vs. EVM here. Nevertheless, here is a short summary:
FuelVM has a globally shared memory architecture instead of context-local memory
This allows us to pass data around between contracts without expensive storage and pass chunks of data without having to serialize, copy from call data to memory etc.
FuelVM is designed for fraud-provability
FuelVM has multiple native assets
In Fuel, any contract can mint its UTXO-based native asset using a set of easy asset opcodes. This is compared to Ethereum where its only native asset is Ether.
Sway & Forc (Superior Developer Experience)
Fuel provides a powerful and sleek developer experience with their own domain-specific language, Sway. It also has a supportive toolchain, called Forc (the Fuel Orchestrator).
The FuelVM is designed to be vertically integrated with tooling. Unlike EVM which was designed without a language from the start, the FuelVM is built alongside its companion language, Sway, ensuring it has handy and efficient ops, such as getting specific parts of a transaction. Read more about Sway here
Fuel Labs has also developed the Fuel Toolchain: the full stack of tools for enabling/assisting the Fuel application development experience.
Read more about the Fuel Toolchain here
Why Fuel?
On top of the 3 central pillars, there are some other factors about Fuel that make them stand out:
User Sovereignty with Fraud Proofs
Fuel was designed and built specifically to be fraud-provable, enabling support for trust-minimized light clients. This means that:
There is long-term liquidity access
Users can validate the chain without having to run full nodes
Users can safely bridge assets
Fuel’s design lets light clients say that blocks are valid through fraud proofs. This eliminates the need for a trust party while still maintaining low resource requirements and achieving high security.
For a more detailed explanation, head here to find out more.
Fuel Configurations
As a Modular Execution Layer, Fuel can function in any one of these categories:
Rollup
L1
State Channel
Sidechain
Developers can easily configure Fuel as-needed by switching out a few modules in the client.
Fuel as a Rollup or L2
Fuel is designed to run a modular execution layer, and the technology is agnostic to either Optimistic or Zk-configuration for a validity / fraud-proving system. Fuel is uniquely configured to handle large amounts of layer-1 bandwidth, unlike ordinary Layer 2s and rollups.
Fuel as a Layer-1
The Fuel technology includes all the components to run as a complete Layer-1 solution. However, Fuel does not promote or support this, as the broader mission of Fuel is to enhance existing blockchains such as Ethereum as a high-performance execution layer.
Fuel as a State Channel
FuelVM is a priced virtual machine architecture with a deterministic state system, making it perfect for multi-party channel designs where all parties must know what is the exact state of the system at each communication window.
Fuel as a Sidechain
The Fuel technology can also run as a sidechain to an existing Layer-1, indicating there is a message passing bridge between layer-1 and Fuel. In this configuration, data availability would be handled by the side chain, while settlement is handled by the Layer-1.
Projects Building on Fuel
According to FuelLabs’ resources, there are currently 4 projects building on Fuel.
Since most of them are still building in stealth, there has not been much activity in terms of the TVL.
Recent Developments
Funding
Recently, Fuel Labs announced $80M USD of support led by Blockchain Capital and Stratos, with additional support from Alameda Research, CoinFund, Bain Capital Crypto, TRGC, Maven 11 Capital, Blockwall, Spartan, Dialectic, and ZMT.
“Our vision is to build the engine for the autonomous future, powering the next generation of independent human coordination and cooperation,” says John Adler, Co-Founder of Fuel Labs.
ETHBerlin
Fuel will be one of the sponsors for the upcoming ETH Berlin (September 16th-18th 2022)
Community Statistics
Twitter - 19426 Followers
Discord - 4679 Members
Personal Thoughts & Conclusion
As what Fuel mentioned, I believe and agree with the notion that we have to go beyond monolithic. Fuel’s parallel execution engines are exciting solutions that will improve the throughput of smart contract platforms, allowing it to approach or even exceed 100,000 TPS. This rivals even Visa and Mastercard and expands the possibilities of new use cases.
However, I believe that there are still some challenges that need to be mentioned. First, the challenge to accurately estimate the actual percentage of transactions that can be executed in parallel. Second is how this form of parallel execution will gradually push the network towards centralization.
For more clarity, I highly recommend reading this article by Fouda where he talks in-depth about the aforementioned two challenges.
Fortunately, the Fuel team is receptive towards decentralization advocates who have been proposing solutions to address these issues. Nevertheless, only time will tell.
What are your thoughts about Fuel? Let me know in the comments!