並行EVM成為了最近新熱門詞。我們知道,過去幾年提高TPS一直是孜孜不倦的追求。以Rollup技術為代表的layer2已經紛紛落實。而並行EVM可以將TPS擴大到百萬級別,其價值不亞於l2。
相比之下,並行EVM仍處於早期。比起當年Layer2,並行EVM是近期被資本關注,例如今年4月剛獲得3,800萬融資的Movement Labs。
有人要問,就現在的鏈上活躍用戶,有必要不斷提升TPS嗎?答案是:非常有必要,只有基礎設施的不斷提高,才能確保應用端的技術革新才能發生。提升公鏈效能,如同人類一直追求更快的CPU/GPU硬件,或是更快的連網速度一樣,似乎是刻在人類的基因裡面的。試想在文字簡訊的2G時代,怎麼可能出現行動網路的革命。而在區塊鏈產業,每當TPS提升到一個量級,新型的應用創新才有可能出現。
在提升TPS方面,我們進行過很多方面的努力,有的成功有的失敗。例如,我們嘗試過增加區塊大小,導致了BTC分叉處BCH和BSV、採用新的共識機制、減小了出塊時間等等,可大概是上上個週期逐漸成熟落地的。而上個週期最以四大天王為主的Rollup公鏈紛紛落地。而這個週期,可能就是並行EVM的完善和落地了。
什麼是並行執行?
說起並行,那就一定有串列。串行就是按順序以此進行,one by one。關於串列和並行的區別,舉個簡單的列子。假設現在想要去黃山旅遊,而入口只有一個檢票口在工作,所有的人都能一個接著一個通過,輪流檢票,這就是串行。而到了假日,因為人多景區直接開放了10個檢票口,那麼遊客會安排在不同的10個地方,透過效率增加了10倍,這就叫並行。我們的電腦是可以並行工作的,那麼我們區塊鏈按道理可以並行。
現在以ETH為主的公鏈,大部分都是串列。雖然並行好處很大,但是在區塊鏈世界實現的難度也非常大。比如說,A地址現在有一個ETH轉帳給B地址,由於轉帳的處理需要一定時間。在處理的時間時,A地址如果作惡,可以透過並行處理一個ETH轉帳到C位址。那麼B和C都會收到一個ETH。所以說,並行處理並不是詳細那麼簡單。業界在解決平行執行的衝突問題上提出了三種執行機制:訊息傳遞機制、共享記憶體機制和嚴格狀態存取清單機制。專業的內容這裡就不展開了,想深入研究可以參考文章
https://foresightnews.pro/article/detail/57500
當然,並行執行也沒有那麼陌生。 Solana、以Move語言創建的Aptos、Sui都是並行執行的。他們的TPS能輕輕鬆過萬。但是他們並不是EVM相容,有著自己的虛擬機,整個世界像割裂一樣。而並行EVM的目的,就是又是EVM相容、又是並行執行。
並行EVM的方向大概有兩種
第一種,將現在並行執行的公鏈,對EVM相容。
比如說Neon, 它是Solana 網路上的EVM 模擬器,它可以將dApp 前端發出的以太坊交易經過代理轉換產生Solana 交易,然後在模擬器中執行,修改鏈上狀態。
第二種,在EVM系中,增加並行執行的功能。
第二種,又可以分為兩個小類。第一個小類,就是利用現有並行執行的公鏈的虛擬機器。現在已經實現成熟應用的有三大類型,分別是solana、Move語言的Aptos/Sui以及比特幣的UXTO模型。例如Movement Lab 是引用move的虛擬機,將交易在上面執行,然後在以太坊進行結算。有點跟Neon反過來操作的意思。
Lumio旨在成為首個VM抽象,將支援任意VM,包括SVM、平行EVM、MoveVM,並計畫支援ton、比特幣等其他生態系統。讓開發人員可以使用任何鏈上的任何虛擬機器進行部署。
Monad則屬於第二小類,它自己寫並行執行的邏輯。 Monad 為以太坊虛擬機器引進了兩項機制:一是超標量管線技術,二是改良的樂觀並行機制。其中的超標量管線技術將交易的執行階段並行化。目前性能達到10000 TPS。
Movement Lab
Move語言是Facebook為智慧合約設計的一種安全可靠的程式語言,強調所有權和安全性。 Move 中的資產表示為資源。由於Move 強大的所有權模型和明確的資源能力,Move 簡化了常見區塊鏈任務(例如資產轉讓所有權、鑄幣和銷毀)的安全智慧合約的開發。
Sui 和Aptos的選擇是基於Move開發一條獨立的公鏈。遇到的問題就是,對EVM開發者來說,這是一種全新的語言。 Movement Lab 則是將Move 執行環境引入的以太坊Layer2,擁有EVM生態,同時擁有Move語言的優點。
Movement Lab 旗艦產品M1 和M2 網絡,以及一套支援它們的強大工具。將推出M2 主網,它將是以太坊上第一個基於Move 語言的Layer 2 解決方案。它將支援多種Move 實現,包括Sui Move 和Aptos Move,以及我們的嵌入式EVM 解釋器MEVM。這將使得來自各種生態系統(包括Sui、Aptos 和基於EVM 的平台)的開發人員能夠利用我們L2 解決方案的優勢。
M2 的關鍵特性之一是其EVM 並行化功能。透過利用Move 語言和Sui 的平行化模型,我們可以讓EVM 交易實現高吞吐量和低延遲。這是透過以物件為中心的儲存和並行執行交易的能力來實現的。 EVM 並行化方法涉及將EVM 字節碼轉換為Move 字節碼,然後以並行方式執行。這個轉換過程保留了原始EVM 程式碼的語義,同時使其能夠利用Move 語言和Sui 執行模型提供的平行化優勢。
為了促進Movement Lab網路的發展和採用,團隊也正在開發Movement SDK、Movement CLI、Fractal 和Hyperlane 訊息基礎架構。這些工具將為開發人員提供他們必要的資源,以便在平台上輕鬆建置和部署應用程式。實現完全相容EVM,所以在平台上部署Uniswap 或任何智能合約只需10 分鐘
從現在比較熱的模組裡的角度來看,Movement Lab 屬於執行層,基於MoveVm優秀的效能和安全性。任何人都可以啟動任何啟動Layer2,可以選擇Arbitrum Orbit、OP Stack、Polygon CDK使用Celestia、EigenLayer 和NEAR 作為DA,然後使用Movement Lab的VM 進行執行,並連接到共用排序器。