Filecoin的Gas 費歸“零”?計算方式告訴你沒真的歸零

隨著Filecoin v13“HyperDrive”網路的升級,萬眾期待的Base Gas Fee比起升級前確實有很大幅度的下降,但似乎并沒有網傳的“歸零”的態勢,那么未來的Gas Fee到底會是多少,該如何計算?

數據來源:filfox網站(https://filfox.info/zh/stats/gas) 根據24h內Base Gas Fee的統計數據(Base Gas Fee不斷波動,并沒有趨于平衡)可以看出,很多節點已經開始使用聚合扇區提交證明,但還有部分節點并未使用,

數據來源:filfox網站(https://filfox.info/zh/stats/gas) 今天,我們就從Github抓取了關于Base Gas Fee的代碼,我們將通過「解碼」計算Base Gas Fee,并根據它來最優化、最便宜地選擇扇區提交證明方式。那首先我們從聚合扇區證明與單個扇區證明的消耗開始吧~

相較于單個證明而言,聚合證明除消息Gas Fee以外,還增加了聚合扇區Gas Fee的消耗, 但額外增加消耗并不代表聚合證明的單扇區總消耗>單個證明總消耗 聚合扇區Gas Fee

我們一起通過以下代碼計算一下聚合扇區Gas Fee。

代碼來源:filfox網站(https://github.com/filecoin-project/)

代碼關鍵詞解讀:(很重要,需理解才能解析公式) ①BatchDiscount(聚合折扣)=1/20 unitless:一個GAS使用折扣工具,它使聚合證明原則上比單條證明消息的GasUsage更便宜(僅占1/20), ②BatchBalancer(聚合平衡值)=2 nano FIL:設置了GasCharge的最低值,它調節ProveCommit聚合和Gas費,確保大規模存儲上線支付網路費用并建立使用閾值,使之為其他網路操作維持較低的BaseFee,

③SingleProofGasUsage(單扇區消耗GAS量) =65,733,296.73

④NumProofsBatched(聚合扇區總數) ⑤BatchGasFee(聚合GAS價格)= Max(BatchBalancer, BaseFee):取聚合平衡值與base gas fee兩者的最大值

公式解讀:

原公式(圖片最后一條代碼):BatchGasCharge = BatchGasFee * SingleProofGasUsage * numProofsBatched * BatchDiscount

翻譯下來就是:聚合扇區Gas Fee=聚合Gas價格*單扇區消耗Gas量*聚合扇區總數*聚合折扣

※ 鑒于聚合Gas價格是取聚合平衡值與base gas Fee兩者的最大值。

代入后最終得到以下公式:聚合扇區GasFee= Max(聚合平衡值, BasegasFee)*單扇區消耗Gas量*聚合扇區總數*聚合折扣

∴ 聚合扇區Gas Fee中的單扇區消耗= Max(聚合平衡值, Base Gas Fee)*單扇區消耗Gas量*聚合扇區總數*聚合折扣=2*65,733,296.73*1/20=0.1*65,733,296.73=6,573,329.673 聚合證明的單扇區消耗vs單個證明的扇區消耗

前文說到兩者公式如下:聚合證明的單扇區消耗Gas Fee=消息Gas Fee+聚合扇區Gas Fee單個證明的扇區消耗Gas Fee=消息Gas Fee

※而其中消息Gas Fee=平均gas消耗/聚合扇區總數*BaseGasFee

根據以上公式,我們計算一下兩者孰高孰低。這里,以64G扇區為例。

本圖是聚合證明的64G扇區消耗Gas Fee數據來源:filfox網站(https://github.com/filecoin-project/)

聚合證明的單扇區消耗Gas Fee最大值和最小值計算過程如下:

最小值=509,880,640/819*Basegasfee+6,573,329.673最大值=102,581,240/6*Basegasfee+6,573,329.673

單個證明的單扇區消耗Gas Fee計算過程如下:消耗Gas Fee=50,873,192*Basegasfee

計算兩者均衡值

接著,我們再計算聚合證明和單個證明的均衡值:

最小均衡值:509,880,640/819*Basegasfee+6,573,329.673=50,873,192*Basegasfee∴ Basegasfee最小均衡值≈0.13 nano fil 最大均衡值:102,581,240/6*Basegasfee+6,573,329.673=50,873,192*Basegasfee∴ Basegasfee最大均衡值≈0.19 nano fil 現在我們以同樣的公式,設定Basegasfee后,代入32G扇區看看聚合證明的單扇區總消耗最小值與單個證明的Gas Fee的數據:

『綜上所述』無論是32G還是64G,※ 當基礎Gas費>0.19 nano fil,聚合扇區內的單扇區消耗Gas費<單扇區消耗Gas Fee(即:聚合扇區證明更便宜)※ 當基礎Gas費<0.13 nano fil,聚合扇區內的單扇區消耗Gas費>單扇區消耗Gas Fee(即:單個扇區證明更便宜)※ 當0.13 nano fil<基礎Gas費<0.19 nano fil時,需計算聚合證明的單扇區總消耗與單個證明的消耗Gas Fee差距再做決定。

0 条回复 A文章作者 M管理員
    暫無討論,說說你的看法吧