並行EVM技術突破:區塊鏈執行層創新與挑戰

以太坊虛擬機EVM

EVM 與 Solidity

智能合約開發是區塊鏈工程師的基本技能。開發者通常使用 Solidity 等高級語言來實現業務邏輯。然而,EVM 無法直接執行 Solidity 代碼,需要將其編譯成虛擬機可解釋的低級語言(操作碼/字節碼)。現有工具可以自動完成這種轉換過程,減輕了開發者對編譯細節的關注需求。

雖然編譯過程會帶來一些額外開銷,但熟悉低級編碼的工程師可以直接在 Solidity 中使用操作碼編寫程序邏輯,以實現最高效率並降低 gas 消耗。例如,某知名NFT交易平台的協議就廣泛採用了內聯匯編來最小化用戶的 gas 開銷。

深入探討並行EVM及其生態

EVM性能的差異性:標準與實現

EVM,即"執行層",是編譯後的智能合約操作碼最終執行和處理的場所。EVM 定義的字節碼已成爲行業標準。無論是用於以太坊 Layer 網路還是其他獨立區塊鏈,與 EVM 標準的兼容性使開發者能夠在多個網路上高效部署智能合約。

盡管符合 EVM 字節碼標準是虛擬機被稱爲 EVM 的基礎,但實際實現方式可能差異很大。例如,以太坊的某客戶端用 Go 語言實現了 EVM 標準,而以太坊基金會的另一個團隊則維護着一個 C++ 實現。這種多樣性爲不同的工程優化和定制實現提供了可能性。

深入探討並行EVM及其生態

並行EVM技術

歷史上,區塊鏈社區主要關注共識算法的創新,一些知名項目更多因其共識機制而聞名,而非其執行層。盡管這些項目對執行層也有所創新,但它們的性能常被誤認爲僅源自共識算法。

實際上,高性能區塊鏈需要創新的共識算法和優化的執行層,類似於木桶理論。對於僅改進共識算法的EVM區塊鏈,提升性能往往需要更強大的節點配置。例如,某知名智能鏈在2000 TPS的gas限制下處理區塊,需要比以太坊全節點高幾倍的機器配置。雖然另一個知名網路理論上支持高達1000 TPS,但其實際性能常常不及預期。

並行處理的需求

大多數區塊鏈系統中,交易是按順序執行的,類似於單核CPU,下一次計算在當前計算完成後才開始。這種方法雖然簡單且系統復雜性低,但難以支持大規模用戶基礎。轉向多核CPU並行虛擬機模式可以同時處理多筆交易,大幅提高吞吐量。

並行執行帶來了工程挑戰,如處理並發交易對同一智能合約的寫入。需要設計新機制來解決這些衝突。對不相關的智能合約進行並行執行可以按並行處理線程數成比例提高吞吐量。

並行EVM的創新

並行EVM代表了一系列旨在優化區塊鏈系統執行層的創新。以某項目爲例,其關鍵創新包括:

  • 並行交易執行:採用樂觀並行執行算法,允許多個交易同時處理。這種方法從相同的初始狀態開始交易,跟蹤輸入和輸出,生成每筆交易的臨時結果。通過檢查下一筆交易的輸入是否與當前處理中交易的輸出相關來決定是否執行下一筆交易。

  • 延遲執行:在共識機制中,節點無需主節點或驗證節點執行交易即可達成交易的正式排序。起初,主節點對交易排序並在節點間達成共識。交易執行被推遲到獨立通道中,最大化利用區塊時間,提升整體執行效率。

  • 自定義狀態數據庫:通過直接將Merkle樹存儲在SSD上優化狀態存儲和訪問。這種方法最小化了讀取放大效應,提高了狀態訪問速度,使智能合約執行更快、更高效。

  • 高性能共識機制:基於HotStuff共識機制的改進版本,支持數百個全球分布節點間的同步,具有線性通信復雜度。使用流水線投票階段,使投票過程的不同階段可以重疊進行,減少延遲,增加共識效率。

深入探討並行EVM及其生態

挑戰

並行EVM的技術挑戰

順序交易執行的瓶頸主要與CPU和狀態讀/寫過程相關。並行執行引入了潛在的狀態衝突,需要進行執行前或執行後的衝突檢查。例如,當四個並行線程同時處理與同一DeFi池交互的交易時,就可能發生衝突。這種情況需要仔細的衝突檢測和解決機制,以確保高效的並行處理。

除了實現並行EVM的技術差異外,各團隊通常還需重新設計並增強狀態數據庫的讀/寫性能,並開發兼容的共識算法。

挑戰與考量

並行EVM面臨的兩個主要挑戰是以太坊的長期工程價值捕獲和節點集中化。雖然目前的開發階段尚未完全開源以保護知識產權,但這些細節最終將在測試網和主網啓動時披露,面臨被其他區塊鏈吸收的風險。快速的生態系統發展將是保持競爭優勢的關鍵。

節點集中化是所有高性能區塊鏈面臨的挑戰,需要在"區塊鏈三難困境"——無許可、無需信任的操作和高性能需求之間取得平衡。"每硬件需求的TPS"等指標可以幫助比較區塊鏈在特定硬件條件下的效率,較低的硬件需求有助於實現更多去中心化的節點。

深入探討並行EVM及其生態

並行EVM的格局

並行EVM格局包括多個項目,有些是Layer 1區塊鏈,有些可能是Layer解決方案。還有一些是基於其他網路的EVM兼容解決方案或開源客戶端。

目前,現有的並行EVM網路可分爲三類:

  1. 通過並行執行技術升級的EVM兼容Layer 1網路:這些網路最初不採用並行執行,後通過技術迭代升級支持並行EVM。

  2. 從一開始就採用並行執行技術的EVM兼容Layer 1網路:一些新興項目從設計之初就考慮了並行執行。

  3. 採用非EVM並行執行技術的Layer網路:這些包括擴展導向的Layer EVM兼容鏈。這些網路將EVM抽象成可插拔的執行模塊,允許根據需要選擇最佳的"VM執行層",從而實現並行能力。

深入探討並行EVM及其生態

項目介紹

項目A:領先的並行EVM

該項目旨在通過優化EVM並行執行和流水線架構解決傳統EVM的可擴展性問題,目標是達到10,000 TPS。項目已完成大額融資,創始團隊包括來自知名交易機構的成員。內部測試網已啓動,預計不久將向公衆開放。

項目B:推出並行EVM網路

這個項目最初是一個專注於交易的Layer 1網路,提供先進的交易應用基礎設施。最近宣布全面升級,成爲高性能並行EVM,大幅提高TPS。並行EVM測試網已上線,支持EVM應用的一鍵遷移。主網預計將在今年上半年上線。

項目C:通過雙虛擬機增強執行層

該項目旨在通過擴展EVM支持並行執行來提升Layer 1網路的可擴展性。通過構建雙虛擬機系統,旨在提升EVM區塊鏈性能和網路執行效率。公測網已上線,生態系統激勵計劃也已推出。

項目D:引入並行EVM技術

這是一個基於某SDK構建的EVM兼容Layer 1網路,專爲DeFi應用設計。最近宣布了開發計劃,旨在引入並行執行EVM技術以提升網路性能。

項目E:特定網路的EVM兼容性解決方案

該項目是建立在某高性能網路上的並行EVM,是首個該網路的EVM兼容性解決方案。它支持Solidity和Vyper EVM開發者一鍵部署DApp,享受高吞吐量和低gas費。

項目F:將特定VM引入以太坊

這是一個由某虛擬機支持的Rollup Layer模塊化通用解決方案。它在以太坊上結算交易數據,使用ETH作爲gas,但其執行層在特定VM環境中運行。最近完成了大額融資,主網預計很快會向開發者開放。

項目G:模塊化VM Layer

該項目基於某技術棧構建,是一個模塊化VM Layer網路。它旨在將高性能虛擬機引入現有的主要以太坊和比特幣Layer網路。支持使用以太坊或比特幣作爲結算層,執行層能夠使用多種虛擬機進行並行執行。

深入探討並行EVM及其生態

結論

隨着區塊鏈技術的發展,關注執行層與共識算法同樣重要,以實現高性能。並行EVM等創新爲提高吞吐量和效率提供了有前景的解決方案,使區塊鏈更具可擴展性,能夠支持廣泛的用戶羣體。這些技術的發展和實施將塑造區塊鏈生態系統的未來,推動該領域的進一步進步和應用。

深入探討並行EVM及其生態

ETH1%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 3
  • 轉發
  • 分享
留言
0/400
alpha_leakervip
· 12小時前
gas贵到吃土 谁还管你编译不编译
回復0
散户心理医生vip
· 12小時前
gas费太贵了谁扛得住啊~
回復0
UncommonNPCvip
· 12小時前
这gas费还能搞下来
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)