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