原文:《 Aptos 存儲和執行成本分開的Gas模型是如何規劃的?

12月23日,Aptos 團隊表示,通過與Aptos 社區的訪談與反饋,將在未來幾個月致力於改善Gas 費用。

第一步是在2023 年1 月將動態NFT 的Gas 價格降低10 倍(應為變為原來的1/10),第二步是在明年一季度構建Gas 高效數據結構,第三步是在2023年第二季度初設計一種新的Gas 模型,將存儲和執行成本分開,從而為執行提供需求驅動的Gas 成本。

關於Aptos Gas 計劃,主網上線前Aptos Labs 曾發布過自己制定GAS 的原則、流程、如何計算GAS、後期GAS 費調整。更多可以閱讀《 一文讀懂MOVE語言首個GAS設計:穩定且廉價的GAS單位成本

以下為AptosLabs 有關明年改進gas 模型計劃的文章

作為我們加速Aptos 生態系統發展的使命的一部分,我們經常與社區建設者合作,幫助他們實施並收集有關改進Aptos 的反饋。最重要的要求是改進gas 費用的時間表。

我們在Aptos 上交付需求驅動的gas 成本的三階段計劃:

2023 年1 月初:改進NFT 數據的操作,將動態NFT 的Gas 價格降低10 倍(應為變為原來的1/10)。

2023 年第一季度:通過從指南到索引的端到端支持構建高效的Gas數據結構。

2023 年第一季度末、第二季度初:設計先進的gas 模型,將存儲和執行成本分開,從而為執行提供需求驅動的gas 成本。

背景

最初,該團隊的目標是將gas 費率降低10 到100 倍,為了驗證這種可能性,我們直接與許多生態系統構建者進行了交談,包括Aries、AUX、Econia、Ferum、Nutrios、Pyth、Souffl3 、Switchboard、Topaz、Tsunami 等。通過這些採訪和對鏈上大量交易數據的分析得出了以下見解:

Aptos ( aptos_account::transfer) 上的代幣轉賬費用約為0.00055 APT。許多DeFi 操作落在.003 到.005 APT 的範圍內。 gas 成本主要佔execution 50%+ 和item creation 20% 以上。

儘管缺乏短期解決問題的良方,但我們發現了現有的gas 政策造成的難題:Aptos 將執行和存儲gas 成本捆綁在一起,儘管它們有不同的作用。

對於執行,gas 限制了交易的最大執行時間。對於存儲,gas 決定了稀缺資源的智能使用;畢竟,存儲是永久性的。考慮到這種捆綁,降低一方的成本會對另一方產生影響。

例如,執行gas 的大幅減少將導致可用於單個交易的存儲總量同樣大幅下降。我們的分析表明這會導致非常低的增益。

短期——降低10倍動態NFT gas

儘管缺乏將gas費降低10 到100 倍的立竿見影的良方,但我們發現了一個可以立即產生影響的領域:動態NFT!在編寫我們最初的SimpleMap 時,我們選擇了過早優化的道路。

SimpleMap 提供O(Log N) 次讀取和O(N) 次添加和刪除。然而,用於評估的比較器對gas 價格產生了重大影響,這在實施時是未知的。

事實證明,通過強行實施(brute force)可以實現便宜50% 以上! Aptos 團隊目前正在為Mainnet 準備此更新,並正在發布我們的第一個Aptos 改進提案(AIP)。

中期——gas-efficient 高效數據結構

生態系統中的許多團隊已經認識到存儲gas 的細微差別,並實施了自己的gas 高效數據結構。我們也在探索這些。在這個空間中,有幾個權衡因素需要探索:1) 數據的大小, 2) 數據的應用。

Aptos gas 存儲模型在創建插槽(即表項或資源)時提供免費字節。在現有槽內聚合超過某個點的數據最終將比創建新槽更昂貴。一些聰明的建設者已經找到了這種平衡。在與他們合作的過程中,我們已經開始開發SmartVector 來幫助促進這一點。

顯然,由於查找時間將對成本和規模產生直接影響,向量具有局限性。為此,該團隊還在探索具有高效查找和增量操作時間的SmartTree 。

最後,我們預計將恢復對BucketTable 的支持,以實現更高效的大規模類地圖存儲。目前,Table 是大部分此類工作的首選方法,如Aptos Token標準的TokenStore 所示。

Token可能更有效地存儲在BucketTable 中,為了使這項工作更有效,BucketTable 需要更多的愛。這些努力中的每一項都需要更多的強化、AIP、文檔和索引支持。

當然,許多這些改進的代碼很容易獲得;因此,您無需等待這些解決方案成為主流即可受益!

長期——需求驅動的gas 成本

目前的gas 框架結合了執行費和存儲費,這反過來導致gas 價格不平衡。此外,當前的存儲定價方案缺乏反映數據生命週期的能力;因此,存儲交互必須是昂貴的以防止存儲濫用。當前的存儲定價方案進一步沒有提供刪除數據的動機。

在接下來的幾個月裡,Aptos 團隊致力於通過兩項舉措解決這些問題:

1)分離存儲和執行gas 費用並降低執行費用

2)提供支持存儲費用返還的框架

雖然倉儲退款仍處於早期集思廣益階段,但我們已經確立了以下核心原則:存儲費用返還應返回到為數據創建支付的原始帳戶。

數據創建的補貼應該可以從中央賬戶獲得,例如,創建NFT 或促進DeFi 操作的資源賬戶。雖然現在還早,但我們期待在AIP 或未來的Medium 帖子中分享更多細節!

在這些重大努力結束時,移動或修改NFT、更新預言機,甚至更新DeFi 操作中的頭寸等交易都將受益於gas費用價格的大幅下跌。