比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

StarkNet 性能路線圖_ARK

Author:

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

原文:StarkWare  由 DeFi 之道編譯

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

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

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

排序器(Sequencer)的并行化

為 Cairo 虛擬機(Cairo-VM)提供 Rust 語境下的實現

在 Rust 語境下的排序器

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

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

StarkNet跨鏈橋Stark Gate Alpha已在測試網上線:4月4日消息,StarkNet橋的第一個版本Stark Gate Alpha已在Goerli測試網上線。上線主網后,Stark Gate Alpha最初將僅支持ETH以允許使用費用機制,此后將添加對WBTC、USDC、USDT和DAI的支持。據悉,Stark Gate充當以太坊和Stark Net之間的網關,并允許用戶進行跨鏈資產轉賬。[2022/4/4 14:03:24]

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

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

烏克蘭與 FTX、Everstake 合作推出新的加密貨幣捐贈網站:金色財經報道,烏克蘭政府周一推出了一個新的加密貨幣捐贈網站,旨在簡化將比特幣轉化為子彈、繃帶和其他戰爭物資的數百萬美元努力。Everstake的增長主管Vlad Likhuta稱,援助烏克蘭 得到了FTX、Everstake平臺和烏克蘭的Kuna交易所的支持,它將把捐贈的加密貨幣送到烏克蘭國家銀行。烏克蘭精通加密貨幣的數字轉型部門也參與其中。

根據該網站,該國的努力已經籌集了約4800萬美元的比特幣、Polkadot、以太坊、Solana、Tether和其他加密貨幣。其他估計認為總數接近1億美元。(Coindesk)[2022/3/15 13:56:22]

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

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

Cash APP與說唱歌手Megan Thee Stallion合作推出100萬美元比特幣贈送活動:12月18日消息,美國金融服務公司Square推出的支持比特幣支付的應用程序Cash APP與格萊美提名說唱歌手Megan Thee Stallion合作推出贈送價值100萬美元比特幣的活動。Megan于12月17日在推特上宣布了這次活動。截至發稿時,這條推文已經收到了6萬多個贊和8800次轉發。這位說唱歌手鼓勵她的粉絲們發布“#BITCOINMEG”來參與贈送活動。該推文沒有明確說明每個人將收到多少比特幣,而許多獲獎者的回帖截圖顯示他們每個人都收到了5萬聰(價值約11.40美元)。(Cointelegraph)[2020/12/18 15:40:45]

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

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

Bitstamp尋求法院批準傳喚花旗銀行和美國銀行:金色財經報道,加密貨幣交易所Bitstamp已向美國紐約南區地方法院提交文件,以求傳喚花旗銀行和美國銀行,作為一項法律糾紛的發現過程的一部分。據悉,Bitstamp雇用丹麥公司CNG Processing代表其客戶促進國內和國際銀行轉賬,后者卻法滿足其業務安排的原始條款。CNG大大延遲了開立??美國銀行帳戶的時間。當開立了帳戶后,這些帳戶受到存款和取款限制,以及在相關的花旗銀行和美國銀行帳戶之間進行轉賬的其他限制。Bitstamp終止了兩者間的關系,要求提供超過170萬美元的保證金和大約100萬美元的客戶保證金。Bitstamp的律師稱,CNG拒絕交出這些資金。根據法院文件,CNG聲稱其無法歸還資金,因為相關賬戶已被上述銀行“凍結”。[2020/11/18 21:07:38]

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

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

BitStar公告:BitStar將在比特幣可能進行的Segwit2x分叉期間采取措施:擇機暫停比特幣的充值和提現服務;如分叉成功,BitStar將在區塊鏈網絡穩定后,按賬戶余額分發等額的分叉幣,并擇機恢復BTC的充值和提現服務,以及分叉幣的充值和提現服務。分叉失敗,則擇機恢復BTC的充值和提現服務。[2017/11/8]

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

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

Tx A(交易A,下同):將USDC兌換ETH

Tx B:為某款NFT支付ETH費用

Tx C:將USDT兌換BTC

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

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

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

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

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

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

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

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

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

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

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

wesely

個人專欄

閱讀更多

金色早8點

金色財經

去中心化金融社區

CertiK中文社區

虎嗅科技

區塊律動BlockBeats

念青

深潮TechFlow

Odaily星球日報

騰訊研究院

Tags:STASTARSTARKARKSTAIstarl幣上線了幾個交易所starknet幣價分析Credmark

火必交易所
詳解打造現象級游戲The Beacon的TreasureDAO_TREASURE

原文標題:《一文詳解打造現象級游戲 The Beacon 的 TreasureDAO》近期,Arbitrum 鏈上一款名為The Beacon 的游戲突然走火,各個社群和社交媒體開始大量討論.

1900/1/1 0:00:00
Solana 還有絕地反彈的機會嗎?_OLA

來源:Bankless 編譯:比推BitpushNews Mary Liu11 月對加密貨幣來說是艱難的一個月,市場不景氣,貸款平臺和一些基金破產,熊市氛圍全面蔓延.

1900/1/1 0:00:00
詳解Synthetix V3的重點更新:能否迎來「第二春」?_Synthetix

原文作者:Babywhale,Foresight News隨著 Synthetix 生態交易平臺 Kwenta 推出代幣,Synthetix 生態的項目已經基本完成了去中心化的進程.

1900/1/1 0:00:00
別再尬吹web3 聽得耳根都起繭了_WEB

來源:“銳見Neweekly”(ID:app-neweekly), 作者:土衛六 現有的互聯網,好多人都玩膩了.

1900/1/1 0:00:00
親密文化:建立持久的Web3社區_ETH

摘要: 我們需要在互聯網上有更多的親密感,但不是你想象的那種親密感。作為科技行業的運營商,我們被過于簡單化的增長概念所轟炸,這些增長專注于各種量化指標的指數增長.

1900/1/1 0:00:00
簡析三大模塊化區塊鏈方案:Celestia、Dymension 與 Fuel_EOS

原文標題:《Modular Blockchain Ecosystem Overview》撰文:Kadeem Clarke編譯:深潮 TechFlow區塊鏈一直在發展.

1900/1/1 0:00:00
ads