作者:霧月,極客web3
在Blockchain技術(shù)迭代越來越快的今天,針對性能的優(yōu)化已然成為了一個關(guān)鍵議題,Ethereum路線圖已經(jīng)非常明確以Rollup為中心,而EVM串行處理交易的特性是一種桎梏,無法滿足未來的高并發(fā)計算場景。
在之前的文章——《從Reddio看并行EVM的優(yōu)化之路》中,我們曾對Reddio的并行EVM設(shè)計思路進行了簡要概述,而在今天的文章中,我們將對其技術(shù)方案,以及其和AI的結(jié)合場景進行更深入的解讀。
由于Reddio的技術(shù)方案采用了CuEVM,這是一個利用GPU提升EVM執(zhí)行效率的項目,我們將先從CuEVM開始說起。CUDA概覽
CuEVM是一個用GPU對EVM進行加速的項目,它將EthereumEVM的操作碼轉(zhuǎn)換為CUDAKernels,以在NVIDIAGPU上并行執(zhí)行。通過GPU的并行計算能力,來提高EVM指令的執(zhí)行效率?赡躈卡用戶會常聽到CUDA這個詞——
ComputeUnifiedDeviceArchitecture,這其實是NVIDIA開發(fā)的一種并行計算平臺和編程模型。它允許開發(fā)者利用GPU的并行計算能力進行通用計算(例如Crypto中的Mining、ZK運算等),而不僅限于圖形處理。
作為一個開放的并行計算框架,CUDA本質(zhì)是C/C++語言的擴展,任何熟悉C/C++的底層程序員都可以快速上手。而在CUDA中一個很重要的概念是Kernel(核函數(shù)),它也是一種C++函數(shù)。
CUDA的每個線程都被分配了獨立的threadID,并且采用線程層次結(jié)構(gòu),將線程分配為塊(block)和網(wǎng)格(grid),以便于管理大量的并行線程。通過NVIDIA的nvcc編譯器,我們就可以將CUDA代碼編譯為可在GPU上運行的程序。
CuEVM的基礎(chǔ)工作流程
在理解了CUDA的一系列基礎(chǔ)概念后,就可以看下CuEVM的工作流了。
CuEVM的主入口為run_interpreter,從這里以json文件的形式,輸入要并行處理的交易。從項目用例中可以看出,輸入的都是標準的EVM內(nèi)容,無需開發(fā)者另行處理、翻譯等。
在run_interpreter()中可以看到,它使用CUDA定義的<<…>>語法調(diào)用了kernel_evm()核函數(shù)。我們上文提到過,核函數(shù)是會在GPU中并行調(diào)用。
在kernel_evm()方法中會調(diào)用到evm->run(),我們可以看到這里面有大量的分支判斷來將EVM操作碼轉(zhuǎn)換為CUDA操作。
以EVM中的加法操作碼OP_ADD為例,可以看到它將ADD轉(zhuǎn)化為了cgbn_add。而CGBN(CooperativeGroupsBigNumbers)就是CUDA高性能的多精度整數(shù)算術(shù)運算庫。
這兩步將EVM操作碼轉(zhuǎn)化為了CUDA操作。可以說,CuEVM也是對所有EVM操作在CUDA上的實現(xiàn)。最后,run_interpreter()方法返回運算結(jié)果,也即世界狀態(tài)及其他信息即可。
至此CuEVM的基本運行邏輯已經(jīng)介紹完畢。
CuEVM是有并行處理交易的能力,但CuEVM立項的目的(或者說主要展示的用例)是用來做Fuzzing測試的:Fuzzing是一種自動化的軟件測試技術(shù),它通過向程序輸入大量無效、意外或隨機的數(shù)據(jù),以觀察程序的響應(yīng),從而識別潛在的錯誤和安全問題。
我們可以看出Fuzzing非常適合并行處理。而CuEVM并不處理交易沖突等問題,那并不是它所關(guān)心的問題。如果想要集成CuEVM,那么還需對沖突交易進行處理。
我們在之前的文章
前文說并行EVM和L2僅僅是Reddio的起點,而其未來的路線圖中將明確和AI敘事相結(jié)合。使用GPU進行高速并行交易的Reddio,在諸多特性上天生適合AI運算:
GPU的并行處理能力強,適合執(zhí)行深度學習中的卷積運算,這些運算本質(zhì)上是大規(guī)模的矩陣乘法,而GPU專為這類任務(wù)優(yōu)化。
GPU的線程分級結(jié)構(gòu)能夠與AI計算中的不同數(shù)據(jù)結(jié)構(gòu)對應(yīng)關(guān)系相匹配,通過線程超配和Warp執(zhí)行單元來提高計算效率并掩蓋內(nèi)存延遲。
計算強度是衡量AI計算性能的關(guān)鍵指標,GPU通過優(yōu)化計算強度,如引入TensorCore,來提升AI計算中矩陣乘法的性能,實現(xiàn)計算與數(shù)據(jù)傳輸之間的有效平衡。
那么AI與L2到底如何結(jié)合呢?
我們知道在Rollup的架構(gòu)設(shè)計中,整個網(wǎng)絡(luò)中其實并不僅僅是排序器,也會有一些類似監(jiān)督者、轉(zhuǎn)發(fā)者的角色,來驗證或搜集交易,他們本質(zhì)上都使用了與排序器同樣的客戶端,只是承擔的職能不一樣。在傳統(tǒng)的Rollup中這些次要角色的職能和權(quán)限非常有限,如Arbitrum中的watcher這種角色,基本是被動性和防御性與公益性的,其盈利模式也值得懷疑。
Reddio會采用去中心化排序器的架構(gòu),礦工提供GPU作為節(jié)點。整個Reddio網(wǎng)絡(luò)可以從單純的L2演進為L2+AI的綜合網(wǎng)絡(luò),它可以很好地實現(xiàn)一些AI+Blockchain用例:AIAgent的交互基礎(chǔ)網(wǎng)絡(luò)
隨著Blockchain技術(shù)的不斷演進,AIAgent在Blockchain網(wǎng)絡(luò)中的應(yīng)用潛力巨大。我們以執(zhí)行金融交易的AIAgent為例,這些智能代理可以自主進行復(fù)雜的決策和執(zhí)行交易操作,甚至能在高頻條件下快速反應(yīng)。然而,L1在處理此類密集操作時,基本不可能承載巨大交易負載。
而Reddio作為L2項目,通過GPU加速可以大幅提高交易并行處理能力。相比L1,支持并行執(zhí)行交易的L2具備更高的吞吐量,可以高效處理大量AIAgent的高頻交易請求,確保網(wǎng)絡(luò)的流暢運行。
在高頻交易中,AIAgents對于交易速度和響應(yīng)時間的要求極其苛刻。L2減少交易的驗證和執(zhí)行時間,從而顯著降低延遲。這對于需要在毫秒級響應(yīng)的AIAgent至關(guān)重要。通過將大量交易遷移至L2,也有效緩解了主網(wǎng)的擁堵問題。使得AIAgents的操作更加經(jīng)濟高效。
隨著Reddio等L2項目的成熟,AIAgent將在Blockchain上發(fā)揮更重要的作用,推動DeFi和其他Blockchain應(yīng)用場景與AI結(jié)合的創(chuàng)新。去中心化算力市場
Reddio未來會采用去中心化排序器的架構(gòu),礦工以GPU算力來決定排序權(quán)利,整體網(wǎng)絡(luò)參與者的GPU的性能會隨著競爭逐漸提升,甚至能夠達到用來作為AI訓練的水平。
構(gòu)建去中心化的GPU算力市場,為AI訓練和推理提供更低成本的算力資源。算力從小到大,從個人計算機到機房集群,各種等級的GPU算力都可以加入該市場貢獻自己的閑置算力并賺取收益,這種模式可以降低AI計算成本,讓更多人參與AI模型開發(fā)和應(yīng)用。
在去中心化算力市場用例中,排序器可能并不主要負責AI的直接的運算,其主要職能一是處理交易,二是在整個網(wǎng)絡(luò)中協(xié)調(diào)AI算力。而關(guān)于算力和任務(wù)分配,這里面有兩種模式:
自上而下的中心化分配。由于有排序器,排序器可以將受到的算力請求分配給符合需求且名望較好的節(jié)點。這種分配方式雖然理論上存在中心化和不公平的問題,但實際上其帶來的效率優(yōu)勢遠大于其弊端,并且長遠來看排序器必須滿足整個網(wǎng)絡(luò)的正和性才能長遠發(fā)展,也即有隱性但直接的制約確保排序器不會有太嚴重的偏向。
自下而上的自發(fā)任務(wù)選擇。用戶也可以將AI運算請求提交給第三方節(jié)點,在特定的AI應(yīng)用領(lǐng)域這顯然比直接提交給排序器更有效率,也能防止排序器的審查和偏向。在運算完畢后該節(jié)點再將運算結(jié)果同步給排序器并上鏈。
我們可以看出在L2+AI的架構(gòu)中,算力市場有極高的靈活性,可以從兩個方向集結(jié)算力,最大程度上提升資源的利用率。鏈上AI推理
目前,開源模型的成熟度已經(jīng)足以滿足多樣化的需求。隨著AI推理服務(wù)的標準化,探索如何將算力上鏈以實現(xiàn)自動化定價成為可能。然而這需要克服多項技術(shù)挑戰(zhàn):
高效請求分發(fā)與記錄:大模型推理對延遲要求高,高效請求分發(fā)機制非常關(guān)鍵。盡管請求和響應(yīng)的數(shù)據(jù)量龐大且具私密性,不宜在Blockchain上公開,但也必須找到記錄和驗證的平衡點——例如,通過存儲hash實現(xiàn)。
算力節(jié)點輸出的驗證:節(jié)點是否真正地完成了所制定的運算任務(wù)?如,節(jié)點虛報用小模型運算結(jié)果代替大模型。
智能合約推理:將AI模型結(jié)合智能合約進行運算在很多場景下是必須的。由于AI推理具有不確定性,并不可能用于鏈上的方方面面,所以未來的AIdApp的邏輯很可能一部分位于鏈下而另一部分位于鏈上合約,鏈上合約對鏈下提供的輸入的有效性和數(shù)值合法性進行限定。而在Ethereum生態(tài)中,與智能合約結(jié)合就必須面對EVM的低效率的串行性。
但在Reddio的架構(gòu)中,這些都相對容易解決:
排序器對請求的分發(fā)是遠比L1高效的,可以認為等同于Web2的效率。而對于數(shù)據(jù)的記錄位置和保留方式,可以由各種價格便宜的DA方案來解決。
AI的運算結(jié)果可以最終由ZKP來驗證其正確性和善意性。而ZKP的特點是驗證非?欤勺C明較慢。而ZKP的生成也恰好可以使用GPU或者TEE加速。
Solidty→CUDA→GPU這一條EVM并行主線本就是Reddio的基礎(chǔ)。所以表面上看這個對Reddio而言是最簡單的問題。目前Reddio正與AiI6z的eliza合作,將其模塊引入Reddio,這是一個非常值得探索的方向?偨Y(jié)
整體來看,Layer2解決方案、并行EVM以及AI技術(shù)這幾個領(lǐng)域看似互不相關(guān),但Reddio通過充分利用GPU的運算特性,巧妙地將這幾大創(chuàng)新領(lǐng)域有機地結(jié)合在了一起。
通過利用GPU的并行計算特性,Reddio在Layer2上提升了交易速度和效率,使得Ethereum二層的性能得以增強。將AI技術(shù)融入Blockchain更是一個新穎且前景廣闊的嘗試。AI的引入可以為鏈上操作提供智能化的分析和決策支持,從而實現(xiàn)更為智能和動態(tài)的Blockchain應(yīng)用。這種跨領(lǐng)域的整合,無疑為整個行業(yè)的發(fā)展開辟了新的道路和機遇。
然而,需要注意的是,這一領(lǐng)域仍處于早期階段,仍需大量的研究和探索。技術(shù)的不斷迭代和優(yōu)化,以及市場先行者的想象力和行動,將是推動這項創(chuàng)新走向成熟的關(guān)鍵驅(qū)動力。Reddio已經(jīng)在這個交匯點上邁出了重要且大膽的一步,我們期待未來在這一整合領(lǐng)域中,能看到更多的突破與驚喜。
免責聲明:Reddio技術(shù)概覽:從并行EVM到AI的敘事綜述文章轉(zhuǎn)發(fā)自互聯(lián)網(wǎng),版權(quán)歸其所有。
文章內(nèi)容不代表本站立場和任何投資暗示。加密貨幣市場極其波動,風險很高,可能不適合所有投資者。在投資加密貨幣之前,請確保自己充分了解市場和投資的風險,并考慮自己的財務(wù)狀況和風險承受能力。此外,請遵循您所在國家的法律法規(guī),以及遵守交易所和錢包提供商的規(guī)定。對于任何因使用加密貨幣所造成的投資損失或其他損失,本站不承擔任何責任。
Copyright © 2021.Company 元宇宙YITB.COM All rights reserved.元宇宙YITB.COM