AptosLabs于10月14日公布了Aptos的GAS計劃,因為MOVE語言的上一個版本其實是打算在沒有GAS的前提下運行的,所以并沒有為GAS計劃做好準備,所以Aptoslabs此次為Aptos建立的GAS計劃是MOVE語言首個GAS設計,被官方稱為「一場冒險」。
在Aptos的GAS計劃中,AptosLabs表明了自己制定GAS的原則、流程、如何計算GAS、后期GAS費調整以及積極接受Aptos社區的建議。
GAS計量是Aptos和其他很多區塊鏈的基本概念,它定義了執行和存儲鏈上交易平臺需的計算和存儲資源量的抽象計算。GAS計劃將鏈上所有執行所消耗的成本確定,用于計算執行交易期間使用的GAS花費。
流程
為了有效的執行,我們在Aptos鏈上的流程是:
1)定義我們的原則;
2)準備一個評估框架,以確定每個執行的價格;
3)為Move建立GAS計量系統和安全GAS代數;
4)將上游GAS框架導入Aptos;
5)使GAS框架具有存儲意識;
6)最后,進一步細化GAS計劃。
原則
我們的定義原則是:
1、操作的成本應該與網絡上的可用資源直接相關(例如CPU、內存、網絡、存儲I/O和空間使用等)。此外,當技術和流程改進后,GAS所需的成本應該要隨之降低。
互操作性協議LayerZero推出Aptos Bridge:10月20日消息,互操作性協議LayerZero推出Aptos Bridge,用戶可將USDC、USDT和ETH從以太坊、Arbitrum、Optimism、Avalanche、Polygon和BNB Chain轉移到Aptos。[2022/10/20 16:31:23]
2、Gas應該由鏈上治理設置,并且可以無縫配置。
3、Gas可以防止對網絡中固定資源集的DoS攻擊,并且可能需要根據網絡情況通過治理建議迅速進行調整。
4、Aptos的GAS價格反映了Aptos基金會加速增長和保持區塊鏈人人可及的愿望。
5、鼓勵在設計中做出好的選擇——例如優先考慮安全性、模塊化、斷言等事件。
計算GAS
當用戶提交交易時,他們還必須在事務中指定兩個數量:
Maxgasamount:以GAS單位計量。這是用戶(即,交易發送者)愿意為執行交易花費的最大GAS單位數。
Gasunitprice:以每單位GAS的八進制計算,其中1八進制=0.00000001APT(=$10^{-8}$)。這是用戶愿意支付的GAS價格。
在執行過程中,交易將被收取:
Aptos:基金會和Labs將各司其職推動協議生態發展:10月19日消息,Aptos基金會官方宣布,將和Aptos Labs各司其職推動協議生態的發展。Aptos基金會將聚焦Aptos網絡和生態系統的開發,其主要目標是支持Aptos區塊鏈的發展,該基金會將負責制定贈款方案、向全球宣傳推廣Aptos并培育Aptos生態系統。Aptos Labs則將專注于在Aptos網絡上構建基礎設施,Petra錢包和官方域名服務Aptos Name Service是由Aptos Labs團隊構建的兩個產品。[2022/10/19 17:31:54]
1)固定成本,固定基數加上大額交易的額外費用。
2)執行成本,用于執行Move指令。
3)讀取成本,用于從持久存儲讀取數據。
4)寫入成本,用于將數據寫入持久存儲。
最終的交易費用可以用消耗的GAS總量(以GAS單位計算)乘以GAS單價來計算。例如,如果一筆交易消耗670個GAS單位,而用戶在交易中指定的天然氣單位價格為每單位100Octa,那么最終的交易費用為670*100=67000Octa=0.00067APT。
如果一個交易在執行過程中耗盡了gas,那么發送方將根據最大gas量收取費用,并且該交易平臺做的所有更改都將被恢復。
Aptos代幣經濟學疑似泄露,其中51.02%的代幣分配給社區:10月18日消息,The Block研究副總裁Larry Cermak發推表示,加密交易所Upbit疑似意外在他們的Aptos PDF報告中泄露了Aptos代幣經濟學。根據對應圖表,51.02%的代幣分配給社區、16.5%分配給基金會、19%分配給核心貢獻者、13.48%分配給投資人。[2022/10/18 17:30:41]
建立一個GAS計劃表
1、基本配置
GAS計劃中有幾個組成部分與單個操作的細節無關,包括交易大小和最大GAS單位(不同于用戶在交易中指定的最大GAS量)。
2、交易規模
對于大多數交易,交易規模可能在千字節的數量級。然而,Move模塊的發布很容易就有幾千字節,而Aptos框架大約有100KB。大多數用戶模塊的大小一般在4KB到40KB之間。最初,我們將交易規模的值設置為32KB,但根據社區的反應,要求提供更多空間以簡化應用程序開發,因此我們將交易規模調整為64KB。
非常大規模的交易會導致整個網絡的帶寬成本提高,并可能對性能產生負面影響。如果被濫用,內存池會被鼓勵忽略規模更大的交易,因此我們的方法是在最大規模交易的大小和可訪問性之間取得平衡。
3、最大GAS單位
Aptos生態NFT市場Topaz已上線Aptos主網,暫未開放交易:10月18日消息,Aptos生態NFT市場Topaz已上線Aptos主網,但尚未開放交易,目前只支持查看NFT系列。[2022/10/18 17:30:23]
GAS計劃中的的最大GAS單位定義了一個交易最多可以執行多少操作。注意!這不同于用戶在交易中指定的最大GAS量。
GAS計劃的最大GAS單位直接影響到一個交易可以執行多長時間,將其設置過高可能會導致對區塊鏈產生負面性能影響交易。例如,用戶可能忘記在while循環中有一個增量,從而導致無限循環,這是一個常見錯誤。我們發現,即使我們進行了最大的框架升級,我們仍然不到gas計劃的最大gas單位的90%。
4、執行
為了評估執行成本,我們構建了一個基準框架,并在執行該框架時使用。
Valgrind?來分析MoveVM。它的輸出是一組帶注釋的源代碼,它告訴我們每行代碼產生了多少機器指令。
在上述分析的幫助下,我們粗略估計了所有Move指令和本機函數的相對成本。然而,我們注意到這個方法與內聯函數存在一些問題:它們不會自動包含在調用者的計數中。我們還看到,這只發生在我們分析某些Move指令時,我們可以通過將數字相加來解決這個問題。
Aptos生態NFT市場Topaz將為用戶空投NFT,快照在一小時內進行:8月4日消息,Aptos生態NFT市場Topaz表示,正在對空投腳本和Token收件箱進行測試,將為曾進行過購買或上架的用戶空投devnet NFT,將在一個小時內快照。[2022/8/4 2:58:21]
隨后,通過考慮增強系統穩健性和安全性的編碼范例,團隊得出了最終執行的機器指令數量。這個數字依次與存儲和最大GAS單位進行權衡,以確定它們在GAS計劃中的當前值。
5、存儲
每當訪問存儲在持久存儲中的賬本狀態項或數據時,Aptos節點都會向存儲設備發出讀取或寫入。每秒的數據訪問總數取決于存儲設備的帶寬和IOPS容量。與gas調度計算部分的CPU周期類似,數據訪問是區塊鏈用戶在系統負載時通過費用市場競爭的瞬時稀缺性,此外,寫入數據的磁盤占用成本在鏈上是永久的。Aptos團隊通過考慮這些成本來設計存儲GAS計劃。
訪問和存儲任何狀態項都會產生與驗證整個區塊鏈狀態的數據結構
水母默克爾樹相關的成本:
此成本與不同狀態項的基數有關。還有一個成本與每個項目的大小成正比。要對一個狀態項進行操作,費用為:
存儲GAS費=item_fee+(byte_fee*bytes)
讀、創建和寫
對狀態項的任何訪問都屬于以下三種類型之一:讀、創建或寫。訪問按項目費和字節費收費,如上面的等式所示。
讀操作是最常見的操作,它只受瞬時資源稀缺的限制。因此,讀取費用是根據磁盤IOPS(項目費用)和參考硬件規范的帶寬容量進行校準的。
create是在狀態存儲中添加一個新項。因此,create增加了身份驗證數據結構,使一切都變得更昂貴,因此成本最高。創建費用是根據網絡擁有的參考磁盤空間進行校準的。因此,用項目(item_fee)和字節(byte_fee)填滿磁盤需要大量的GAS。
寫操作更新狀態存儲中的現有項。因此,寫操作不會在身份驗證數據結構中產生額外的開銷。然而,通過修改現有的條目到更大的字節,仍然可以破壞磁盤。因此,我們對更新項中的字節收取與創建時相同的費用。
應該注意的是,與存儲相關的成本是基于每一筆交易進行評估的:即使您多次讀取/寫入相同的資源,也只需要支付一次費用。
基于上述考慮,我們定義了6個GAS參數,它們構成了GAS總費用的組成部分。見以下:
per_item_read:根據IOPs進行校正
per_byte_read:根據實際帶寬校準
per_item_create:根據目標總項目進行校準
per_byte_create:根據目標總大小進行校準-每個項目包含的第一個1KB
per_item_write:與per_item_read相同
per_byte_write:與per_byte_create相同
更多信息,請訪問此處。
穩定的GAS單位成本
無論以APT或法定貨幣的市場價值計算執行操作的成本如何,每個操作和交易本身都需要相對于存儲和執行成本的固定單位成本。固定的gas單位成本有助于保持gas計劃不變,并與APT的自由市場價值脫鉤。此外,正確選擇GAS單位的精確位數有助于保持GAS計劃不變。考慮到這一點,Aptos團隊以大約3位數的精度來表示GAS單位。因此,轉賬交易的成本大約是700個gas單位。
社區參與
即使我們對GAS計劃投入了大量的精力,但是它還遠遠不夠完善。作為一個社區項目,Aptos社區成員可以選擇:
1)根據你的經驗,找出GAS計劃不合理的地方;
2)說出你對GAS計劃的擔憂,并參與社區討論。
3)就Aptos上與GAS相關的治理提案進行投票。
如何調整GAS成本?
GAS計劃作為鏈上配置被存儲,但是可以通過Aptos治理提案進行更改,并且可以無縫添加新指令或原生功能。
GAS計劃被設計為可擴展的,允許通過治理提案對其進行升級。隨著Aptos和Aptos社區不斷改進MoveVM并納入用戶反饋,GAS參數可以隨著時間的推移進行調整。
有時,GAS公式可能需要超出鏈上配置的復雜更改。這些GAS公式通常用Rust編碼,并通過鏈上GAS特征標志來區分。要升級這些公式,必須使用新公式更新節點軟件,并以不同的GAS特征標志進行區分。然后必須發布節點軟件并為節點運營商大量采用,最后,必須發布并批準治理提案才能使用新的gas版本。
未來的工作
這是Move的第一個可行的GAS框架。它需要對MoveVM和Aptos-Core進行大量修改。我們希望這項工作為今后的工作鋪平道路:
1)降低執行成本,擁有一個真實的GAS模型表明編譯器和虛擬機在哪里有效率,團隊可以改進其中的大部分以降低執行成本。
2)多維GAS計算,允許用戶為執行和存儲指定單獨的預算。這樣,用戶就不必為因為代碼編寫不佳的應用程序花費過長的執行時間,支付高昂的gas價格。它還將允許對區塊鏈端交易的最大Gas價格進行更細粒度的定義;
3)緩解臃腫狀態,目前沒有簡單的方法來縮小狀態集,除了合約顯式刪除事物。用戶付錢刪除數據可能會帶來套利機會,用戶在便宜的時候創建存儲,在昂貴的時候刪除它。Aptos推遲了解決這一挑戰,這可能會削弱開發人員刪除鏈上數據的動力。該團隊正在探索每個項目TTL的概念,該概念將在TTL到期時刪除未訪問的狀態項目。
互聯網已經存在了幾十年。如今的互聯網生態始于Web1時代,在那個時代,軟件開發人員和內容創建者組成的小團體創建了用戶可以檢索和訪問信息的網站.
1900/1/1 0:00:00來源:老雅痞 在Paragraph,創作者能夠直接向讀者出售會員資格,使粉絲和支持者能夠選擇通過直接參與的創作來支持作者的newsletter,能否要了出版業的命?原文:《讀者變作者.
1900/1/1 0:00:00能來參加波哥大的ETHDevCon,是出國后的一大驚喜。大會討論了很多干貨,既具備現實的迫切性又具備對未來的引導性。遺憾的是條件所限,國內媒體幾乎沒有報道,討論廖廖.
1900/1/1 0:00:00原文作者:DanielLi亨利·梅因《古代法》里的一句話:“所有進步社會的運動,到此處為止,都是一個‘從身份到契約’的運動”.
1900/1/1 0:00:00根據Meta創始人馬克·扎克伯格的說法,元宇宙是下一代互聯網的體現,用戶不僅僅可以在其中查看內容,更重要的是他們可以完全置身其中,而這一切將從根本上改變我們現有的生活.
1900/1/1 0:00:00文章作者:JustinPeyton主張內容主要突出了3個點,1)向人們和品牌宣傳Web3和元界技術將為企業、營銷以及人們、社區和世界提供的價值。2)突出可能推動規模和采用的用例.
1900/1/1 0:00:00