比特幣行情 比特幣行情
Ctrl+D 比特幣行情
ads
首頁 > 波場 > Info

TER:NNS 20461提案是如何通過不增加物理設備優化IC內存系統性能

Author:

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

?

InternetComputer上運行的所有開放網絡服務、DeFi、Dapp、NFT等泛平臺都是通過Canisters組成,Canisters的自主服務和多元化可組合特性推動非凡的網絡效應,基于這種特性是開發者可以在IC上重新構想任何去中心化應用。自5月IC主網上線至今已有數W個Canisters被創建托管,在這數W個Canisters中的許多Canisters組成了完整的Web3.0Dapp。

?

隨著IC鏈上Canisters和用戶的快速增長,IC子網的性能需求也在逐漸增長:最近內存密集型Canisters的增長表明IC的內存系統在重負載下存在性能瓶頸。這篇博文描述了NNS20461提案的性能是如何優化IC的內存系統內存的詳細信息)。

Bitcoin.com錢包添加DApp網關WalletConnect:金色財經報道,Bitcoin.com宣布通過WalletConnect在其錢包中支持基于以太坊的DApp。用戶可利用其加密資產賺取利息、使用DEX進行交易、參與NFT市場等等。[2021/10/9 5:48:50]

?NNS20461提案詳情:https://dashboard.internetcomputer.org/proposal/20461

提案功能升級后的優化結果:

在9月14日NNS20461提案被受理之后,提案中的優化功能逐步部署到所有InternetComputer子網中,圖1-3顯示了升級時優化對重負載子網的影響,你可以看到以下兩個主要改進;

1、增加和更穩定的區塊終結:斷斷續續的終結率從每秒0.5個區塊恢復到1個區塊的預期水平。

互聯網計算機NNS質押系統出現問題,正在修復:互聯網計算機NNS質押系統出現 bug,手續費不足的情況下仍會觸發交易成功,點擊全部質押可能會丟幣,請大家耐心等待官方修復。( Dfinity Club)[2021/5/12 21:54:54]

2、改進消息執行時間:執行消息的平均時間提高了約3倍,最大值提高了約10倍。

?圖?1.?優化推出前后的區塊終結率。紅線之后是優化升級后的區塊終結率。

?圖2.優化推出前后的消息執行平均時間。

動態 | 俄羅斯人權監察員要求引渡Alexander Vinnik:據ekathimerini報道,俄羅斯人權監察員Tatyana Moskalkova已致函希臘司法部長Michalis Kalogirou,要求引渡俄羅斯比特幣詐騙犯Alexander Vinnik。據報道,俄羅斯官員上周訪問了自去年11月以來一直在雅典一家醫院進行絕食抗議的Vinnik,他在會議結束后同意結束絕食抗議。[2019/2/26]

?圖3.優化推出前后的最長消息執行持續時間。

Canisters正交持久化:

Canisters可以接收和執行兩種類型的消息:查詢調用和更新調用,查詢調用只是執行一個讀取當前Canisters的狀態操作而不更改該Canisters的函數的調用,并且查詢調用在Wasm內存中執行的所有修改都會被丟棄。而更新調用消息允許更改Canisters的狀態并保留更改,并且更新調用消息的執行會自動保留所有內存更改,并使用它們可用于后續更新消息和查詢消息,這個概念被稱為正交持久化。

動態 | 梅西將支持區塊鏈手機Finney:據coincryptorama報道,足球運動員梅西將支持區塊鏈手機Finney。Finney除了通過區塊鏈技術保護底層技術之外,還將擁有一個冷錢包應用程序,允許用戶安全地存儲他們的數字貨幣。[2018/10/30]

任何正交持久化的實現都必須解決兩個問題:

如何將持久內存映射到Wasm內存中;如何跟蹤Wasm內存中的所有修改,以便以后可以持久保存。IC當前正交持久化的實現使用頁面保護來解決這兩個問題,當消息開始執行時,我們將Wasm內存的整個地址范圍劃分為4KiB塊,稱為頁面。最初使用操作系統的頁面保護標志將所有頁面標記為不可訪問,這意味著第一次內存訪問會觸發頁面錯誤、暫停執行并調用我們的信號處理程序。然后信號處理程序從持久內存中獲取相應的頁面并將該頁面標記為只讀之后,對該頁面的后續讀取訪問將會成功,無需信號處理程序的任何幫助。然而第一次寫入訪問將觸發另一個頁面錯誤,并允許信號處理程序記住該頁面已修改,并將該頁面標記為可讀和可寫,這意味著對該頁面的所有后續訪問都將成功,無需調用信號處理程序。

動態 | Coinness分析:BTC已然止跌,但反彈仍需時間驗證:據Coinness分析師W,連續4日的橫盤,疑似轉機來臨,但目前多頭力量薄弱,反彈仍然有待驗證。日線圖上,BTC價格走勢沿10日均線下方行走,在斐波那契78.6%(6347美元)附近震蕩整理,壓制較大,突破有困難。但多頭力量攢動,正在積蓄力量。[2018/8/14]

頁面保護詳情:https://www.gnu.org/software/libc/manual/html_node/Memory-Protection.html

調用信號處理程序和更改頁面保護標志是昂貴的操作,讀取和寫入大塊內存的消息會導致此類操作的風暴,從而降低整個系統的吸能。這是在目前在重負載下觀察到的性能瓶頸。請注意,信號處理程序是在InternetComputer推出之前編寫的,其主要優先事項正確性而不是性能。

Canisters并發查詢執行:

Canisters是按照順序一個接一個執行更新消息,相比之下,查詢消息可以相互并發運行并更新消息,對并發執行的支持使得內存實現更具有挑戰性,例如:一個Canisters正在H區塊高度執行更新消息,同時仍然有一個長時間運行的查詢消息,該查詢消息更早在區塊高度H-K處開始。這意味著同一個Canisters可以同時激活多個版本的內存。

這個問題的一個簡單解決方案是在每個更新消息后復制整個內存,這個過程會漫長,并且會使用大量的存儲空間,因此當前IC的內存實現采用不同的路線:該路線將修改的內存頁面保存在名為PageDelta持久樹數據結構中,該結構基于FastMergeableIntegerMaps。每隔一定時間,每N輪都會有一個檢查點時間,在克隆文件以保留其先前版本后,將修改的頁面提交到檢查點文件,在克隆文件以保留其先前版本后,將修改的頁面提交到檢查點文件中,圖4顯示了Wasm內存是如何PageDelta和檢查點文件構建的。

圖?4.a)?檢查點文件存儲最后一個檢查點的?Wasm?內存。b)?自上次檢查點以來修改的頁面存儲在稱為?PageDelta?的持久數據結構中。c)Wasm?內存是由信號處理程序通過復制檢查點文件頁面和修改頁面來構建的。

PageDelta詳情:https://en.wikipedia.org/wiki/Persistent_data_structure

優化1:內存映射檢查點文件

第一個優化是將內存映射到檢查點文件頁,這通過在同時運行的多個消息之間共享頁來減少內存使用,這種優化還通過避免讀取訪問時的頁復制來提高性能。因為信號處理程序調用次數與之前保持一致,經過內存映射檢查點優化后信號風暴問題仍然存在。

優化2:查詢中的頁面跟蹤

查詢修改所有內存頁在執行后都會被丟棄,這意味著信號處理程序不必跟蹤查詢的修改頁面,但是信號處理程序的沒有實現區分更新消息和查詢消息,我們為查詢引入了快速路徑,在第一次訪問時將頁面標記為可讀和可寫,這種簡易的優化使查詢速度平均提高了1.5到2倍。

優化3:分攤預取頁面

最有影響力的優化背后的想法很簡單:如果我們想減少頁面錯誤的數量,那么我們需要為每個信號處理程序調用做更多的事情。新的信號處理程序不是一次獲取一個頁面,而是嘗試推測性的獲取更多頁面,此處需要適當的平衡,因為預獲取太多頁面可能會降低僅訪問少數頁面的小消息性能。優化計算緊接在當前頁面之前的訪問頁面的最大連續范圍,它使用范圍大小為做預取更多頁面的的提示,通過這種方式,預取的成本由以前訪問的頁面分攤,因此優化將內存密集型消息中的頁面錯誤數量減少了一個輕量級。

總結:最初的信號處理程序是在InternetComputer之前編寫的,重點是正確性而不是性能,該區域需要針對性能進行優化也就不足為奇了,然而InternetComputer的快速增長需要比預期更早的進行優化,這些優化不僅消除了一個不需要增加物理設備的性能瓶頸,也為未來更多部署在ICDapp和增長用戶做出承載準備。

?

Tags:TERSTEISTANIKSM StarterStellarPayGlobalWISTATITANIA價格

波場
區塊鏈:區塊鏈權限專欄 | 誰允許你訪問了?

作為一種去中心化的分布式系統,區塊鏈系統在生產環境中會受到網絡條件、節點規模、監管政策等多方面因素的影響,因此系統需要解決運維與合規問題,以保證分布式系統線上運行的安全與穩定.

1900/1/1 0:00:00
POL:Polygon將Gas Price由默認的1 Gwei提高至30 Gwei

巴比特訊,10月9日,以太坊擴容方案Polygon將GasPrice由當前默認的1Gwei提高至30Gwei,以減少Polygon網絡中的垃圾交易數量.

1900/1/1 0:00:00
Rust智能合約養成日記: 用 Rust 開發智能合約

1.EVMorWASM?隨著Ethereum的普及,我們在談論智能合約時,往往默認都是利用Solidity語言開發,基于EVM的智能合約.

1900/1/1 0:00:00
BDC:數字英磅基金會啟動,以促進英國CBDC的開發

由技術、創新和監管專家組成的數字磅基金會(DPF)宣布在英國成立一個獨立的非營利組織。根據周四發布的一份聲明,DPF將致力于推動央行數字貨幣(CBDC)在英國的實施.

1900/1/1 0:00:00
CHA:英國加密初創企業Copper正計劃籌集高達5億美元資金

據TheBlock10月20日消息,三位知情人士透露,英國加密初創企業Copper正在籌集高達5億美元的資金。這筆投資將使Copper的估值超過10億美元,使其成為獨角獸.

1900/1/1 0:00:00
加密貨幣:投資平臺Republic完成1.5億美元B輪融資,Valor Equity Partners領投

據CoinDesk消息,10月20日,投資平臺Republic宣布完成1.5億美元B輪融資,ValorEquityPartners領投.

1900/1/1 0:00:00
ads