比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > 瑞波幣 > Info

StarkNet性能路線圖:如何攻克排序器難題?_STA

Author:

Time:1900/1/1 0:00:00

原文:《StarkNetPerformanceRoadmap》

編譯:wesely

路線圖中的并行化、Rust等改進,都是為接下來StarkNet提升TPS所做的準備。

rollups的有效性不受限于L1的吞吐量,使得L2的TPS可以很高。

在StarkNet的性能路線圖中,解決了系統中的一個關鍵因素——排序器。

性能的改進主要有以下幾點:

排序器的并行化

為Cairo虛擬機提供Rust語境下的實現

在Rust語境下的排序器

證明者并不是瓶頸,他們可以處理比現在更多的東西。

簡介

大約一年前,StarkNetAlpha正式上線了以太坊主網,這時,我們將重心放在了功能的構建上,現在,我們決定將重點轉移到提高性能之上,并計劃通過一系列的步驟來提高StarkNet上的用戶體驗。

StarkNet上資管協議Magnety宣布暫停運營:據官方消息,基于StarkNet的資管協議Magnety宣布暫停運營,Magnety解釋稱,鏈上資產管理非常復雜,涉及到很多法律問題,因此需要大量的法律費用。目前已經向所有投資者退款,另外代碼也已公開。今年6月份,Magnety上線測試網。[2022/9/12 13:23:25]

在這篇文章中,我將解釋為什么有很多優化措施只適用于有效性匯總,并分享StarkNet實施這些措施的計劃和步驟,其中一些計劃已經在StarkNetAlpha0.10.2中實現,在討論具體的細節之前,讓我們先來回顧一下限制鏈上性能的原因。

區塊限制:ValidityRollups與L1

提高區塊鏈可擴展性和TPS的方法之一是:在解除區塊的限制同時,保持區塊生成時間的不變。這需要區塊生產者提供更高效的服務,因此就需要更有效地執行這些組件,因此,我們將重點轉移到StarkNet排序器的優化之上,在下文會詳述具體內容。

非營利組織人權基金會和Starkware宣布推出一個為期4個月的ZK-Rollup贊助研究項目:3月25日消息,非營利組織人權基金會(HRF)和Starkware宣布推出一個為期4個月的ZK-Rollup贊助研究項目,研究員將獲得1BTC以支持他們的研究和寫作輸出,贊助部分來自Starkware,另一部分來自CMSHoldings最近對HRF的捐贈。研究將包含6個方面的問題。[2022/3/25 14:16:57]

這里會有一個問題,為什么對排序器的優化僅僅對ValidityRollups有效,換句話說,為什么我們不能在L1上以相同的方法改進,避免有效性匯總有復雜性?在下一節內容中,對這一問題將進行回答。

為什么L1吞吐量有限

如果L1的區塊限制被解除,會遇到一個很大的問題,因為鏈的高吞吐帶來了鏈上區塊的高增長率,為了確保不同的節點跟上最新的全鏈狀態,就需要增加了更多的全節點。又由于L1全節點必須記錄所有歷史記錄,區塊大小的大幅增加會給全節點運營者帶來巨大壓力,并導致部分全節點因為機器性能落后而退出系統,結果,能夠運營全節點的都是一些比較大的實體,最終就是用戶無法以無信任的姿態驗證狀態并參與網絡。

馬斯克:Starlink已試運行過比特幣全節點:7月22日消息,在The ? Word活動上,特斯拉CEO埃隆·馬斯克(Elon Musk)表示星鏈(Starlink)已經試運行過比特幣全節點,也可以作為以太坊或狗狗幣的挖礦節點,以此扮演太空加熱器的角色。

注,Starlink由馬斯克旗下的SpaceX發起,計劃在2019年至2024年間在太空搭建由約1.2萬顆衛星組成的星鏈網絡,為全球提供互聯網服務。[2021/7/22 1:08:39]

這也讓我們明白,從某種意義上來說正是L1吞吐量的限制,成就了一個真正去中心化的和相對安全的網絡系統。

上述問題為什么不會出現在ValidityRollups之上?

只有在考慮全節點的問題時,我們才能看到有效性匯總的優勢。正常情況下,一個L1全節點需要重新執行整個鏈的歷史以確保當前狀態的正確性,而StarkNet節點只需要驗證STARK證明,而且這種驗證需要的計算資源呈指數級下降。重點是,鏈上全節點狀態的驗證同步沒有涉及到執行;一個節點可以從另一個全節點那里接受當前狀態的轉儲,只需通過STARK證明來驗證這個狀態是否有效即可。這讓我們在增加網絡的吞吐量的同時,不用增加全節點的數量。

火幣生態鏈項目StarLink首期關鍵詞(NFT)拍賣結束:2月22日消息,火幣生態鏈項目StarLink首期關鍵詞(NFT)拍賣結束,比特幣以最終1707378.90 LP Token的價格獲勝,總價值超過120萬USDT。區塊鏈、火幣分別以988150.72 、550010的LP Token價格落錘,分別價格69萬USDT、38萬USDT,共鎖倉超過400萬LP Token,總價值超過280萬USDT。

StarLink于2月23日16點開啟第二期關鍵詞(NFT)拍賣,關鍵詞拍賣方式為抵押LP競價拍賣,用戶需使用SLNV2-USDT的LP Token進行抵押拍賣,每次出價會扣除10LP手續費。手續費地址將會公開,未來用于回購銷毀、社區活動。[2021/2/22 17:40:07]

因此,在L2上,通過對排序器的優化可以對整個系統的性能進行提升,但這在L1上不能實現的。

StarkNet的未來性能路線圖

吳夢夏:托管機構需要能支持更多POS幣種以及鏈上治理和Staking等操作。:在今日,由金色財經和Matrixport主辦的“全方位解讀資產安全的奧秘”的AMA中,針對“作為專業托管生態的從業者,您認為未來托管業務將會如何發展來更好的滿足各類機構客戶,促進區塊鏈生態的穩步發展?”Matrixport托管業務負責人吳夢夏表示,一個是幣種上,很多新興幣種采用了POS共識,POS幣種也許是未來的另一個趨勢,托管機構需要能支持更多POS幣種以及鏈上治理和staking等操作。技術上,目前主要采用的方案是加密機(HSM),多簽(Multi-sig),或者是兩者混合方案。我們認為多種技術未來可能有機會被混合使用在托管方案中,可能是MPC+HSM,對于技術上,市場的競爭和技術的進步會彼此促進, 我們也會始終追蹤技術前沿,在技術成熟之后選擇融入我們的方案。另一個不容忽視的趨勢是合規,各國監管機構會在未來一兩年對托管機構制定出更加清晰可依的框架,推出更有針對性的托管牌照,其中包含更嚴格的AML/CFT和鏈上KYT的指引。這會一定程度增加服務提供商的成本,但是確能打開一個廣闊的金融市場容量。[2020/3/21]

這一部分,我們將討論目前有哪些計劃用于對StarkNet排序器的優化。

排序器并行化

性能路線圖的第一步是為交易執行引入并行化。這個提議是在StarkNetalpha0.10.2中正式引入的,該版本于11月29日在以太坊主網上發布,我們現在來深入探討下什么是并行化。

一般來說,并行執行多個交易區塊是不可以的,因為不同的交易可能是相互依賴的。以下方示例中進行說明,我們假設有一個包含來自同一用戶的三筆交易的區塊:

TxA:將USDC兌換ETH

TxB:為某款NFT支付ETH費用

TxC:將USDT兌換BTC

顯然,交易A必須發生在交易B之前,但交易C完全獨立于兩者,是可以并行執行的。如果每個交易需要1秒執行,那么通過引入并行化處理之后,區塊生產時間可以從3秒減少到2秒。

問題的關鍵在于,我們事先并不知道不同交易之間的依賴性。在實踐中,只有當我們執行到示例中的TxB時,我們才會發現它是依賴于TxA所做的改變。更準確地說,這種依賴性源于TxB從TxA寫入的存儲單元中讀取這一動作。我們可以把不同的Tx看成是一個依賴圖,其中存在從交易A到交易B的一條邊,當且僅當A寫入一個由B讀取的存儲單元時,B才可能執行。下圖顯示了這種依賴之間的關系:

在上面的示例中,每一列都可以并行執行。

為了克服事先無法確定不同交易事件之間的依賴關系,我們根據AptosLabs推出的BLOCK-STM,將OP并行化引入到StarkNet排序器中。在這種模式下,會以樂觀地方式并行地處理事務,并在發現碰撞時重新執行。比如在上述示例圖中,我們可以并行執行TX1-4,但事后發現Tx4依賴于Tx1,因此這次執行是無效的,在這種情況下,將重新執行Tx4。

請注意,在上述這種樂觀并行化的基礎上我們也增加一些優化措施。例如,與其等待每個執行的結束,可以在發現一個使之運行結果無效的依賴關系時就中止執行。

另一個優化的例子是選擇哪些事務來重新執行。假設由上述示例圖的所有事務組成的區塊被送入一個擁有五核CPU的排序器。首先,我們嘗試并行執行tx1-5,如果完成的順序是Tx2、Tx3、Tx4、Tx1,最后是Tx5,那么我們將在Tx4已經執行后才發現依賴關系Tx1→Tx4,這表明它應該被重新執行。直觀地說,考慮到Tx4的重新執行,Tx5也需要重新執行,然而,我們可以遍歷由執行已經結束的事務構建的依賴圖,只重新執行依賴于Tx4的事務,而不是將失效Tx4之后的事務都重新執。

Rust語境下的Cairo-VM實現

StarkNet中的智能合約是通過Cairo語言編寫的,并在Cairo-VM虛擬機中執行。目前,排序器正在使用python語言在Cairo-VM上運行。為了優化虛擬機的實現性能,我們之前發起了用Rust重寫Cairo-VM虛擬機的工作。

目前,cairo-rs可以執行原生Cairo代碼,下一步是處理智能合約的執行和與pythonic排序器的集成,一旦與cairo-rs集成,排序器的性能有望進一步提高。

Rust語境下的排序器

通過python到rust的轉變以提高網絡性能,不僅限于Cairo-VM,StarkNet用Rust重寫了排序器相關的代碼。除了Rust的內部優勢之外,這還為排序器的其他優化提供了可能,比如,可以集合cairo-rs的優勢,而無需python-rust通信的開銷,也可以完全重新設計狀態的存儲和訪問方式。

證明者

在整篇文章中,沒有提到有效性匯總中核心元素之一——證明者。作為可以說是架構中最復雜的組件,證明者算是瓶頸,也是優化的重點。但現在,StarkNet的瓶頸是更加“標準”的組件,特別是對于遞歸證明,可以將當前測試網/主網上的更多交易放入證明中。事實上,StarkNet區塊與StarkEx交易一起得到有效的市場證明,后者有時會有數十萬NFT的鑄造事件。

總之,并行化、Rust等改進,都是為接下來StarkNet提升TPS所做的準備。

Tags:STASTARSTARKARKStar ChainSTARP幣STARK價格Shark Lock

瑞波幣
Maverick?內部信:我們如何躲過“FTX災難”對未來宏觀走勢的判斷_FTX

撰文:Simiao?Li,MaverickCrypto編譯:餅干,ChainCatcher 原文鏈接: https://www.chaincatcher.com/article/2083117F.

1900/1/1 0:00:00
DEX發展趨勢盤點:CeFi信任危機會開啟真正的DeFi 2.0嗎?_EFI

CeFi信任危機 FTX作為行業僅次于幣安的第二大加密生態,在短時間內遭遇擠兌,突然暴雷,震驚了整個加密貨幣世界。我們應該重新審視CEX的風險.

1900/1/1 0:00:00
ZK-rollups能否在BTC上獲得成功?_比特幣

原文:《ZKrollupsonEthereumvs.ZKrollupsonBitcoin》比特幣和以太坊存儲用戶數據的方式,以及智能合約與上述數據互動的方式,都有很大不同.

1900/1/1 0:00:00
金色晨訊 | 12月5日隔夜重要動態一覽_比特幣

21:00-7:00關鍵詞:VitalikButerin、三箭資本、Messari、ENS1.美聯儲12月加息50個基點的概率為78.2%;2.

1900/1/1 0:00:00
將 Web2 用戶帶入 Web3:未來屬于無助記詞錢包_WEB

作者:ChenLi,IvyZeng和IvoEntchev? 來源:Youbi 對于第一次接觸Web3的Web2用戶來說,初次上手的體驗是不大愉悅的.

1900/1/1 0:00:00
加密行業的危機與重建:面對新生吧_FTX

作者:john,ChainCatcher必須體驗過痛苦,才能體會到生的快樂。 一、覆滅與循環 縱觀古今,“曲折向前”幾乎是事物發展的基本規律,這條規律目前正在10歲的“加密行業”身上頻繁“顯化”.

1900/1/1 0:00:00
ads