This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
GASメカニズムが初めてMOVE言語に導入され、設計原理と計算方法が完全に分析されました
MOVE言語の最初のGAS設計に関するディスカッション
MOVE言語の最新バージョンは元々無GAS環境での運用を計画していたため、GASメカニズムに対する準備は整っていませんでした。最近、あるブロックチェーンプロジェクトが初めてMOVE言語のためのGASプランを設計し、これは革新的な試みと見なされています。このプロジェクトチームはGASを策定するための原則、プロセス、計算方法、及び後の調整計画を発表し、コミュニティからの提案を歓迎すると述べました。
GAS計量は多くのブロックチェーンの基本概念であり、チェーン上の取引に必要な計算およびストレージリソースの実行と保存を定量化するために使用されます。GASプランは、チェーン上のすべての実行のコストを決定し、取引実行中のGAS消費を計算するために使用されます。
デザインプロセス
有効な実行を実現するために、このプロジェクトは以下のプロセスを採用しました:
デザイン原則
このプロジェクトが遵守する原則には次のものが含まれます:
GASの計算方法
ユーザーが取引を提出する際には、2つの数値を指定する必要があります:
取引実行中に手数料がかかります:
最終取引手数料 = 消費されたGASの合計量×GAS単価
取引実行中にGASが尽きると、送信者は最大GAS量で請求され、取引所の変更はロールバックされます。
GASスケジュールビルド
基本設定
GASプランには、取引のサイズや最大GAS単位など、具体的な操作とは無関係な複数の構成要素が含まれています。
トランザクション サイズ
ほとんどの取引規模はKBレベルですが、MOVEモジュールのリリースにより数千バイトに達します。プロジェクトフレームは約100KBで、ほとんどのユーザーモジュールは4-40KBの間です。最初の取引規模は32KBに設定されましたが、その後コミュニティのフィードバックに基づいて64KBに調整されました。
大規模な取引はネットワークの帯域幅コストを増加させ、性能に影響を与える可能性があります。スケールとアクセス性のバランスを取るために、メモリプールは大きすぎる取引を無視することがあります。
最大### GASユニット
GAS計画における最大GAS単位は、単一の取引で実行可能な最大操作量を定義します。設定が高すぎると、無限ループなどのパフォーマンス問題を引き起こす可能性があります。最大規模のフレームワークアップグレードを行っても、最大GAS単位(の90%未満しか使用されず、)は1,000,000に設定されています。
実行コスト評価
ベンチマークフレームワークと分析ツールを通じて実行コストを評価し、MOVE命令とネイティブ関数の相対コストを推定します。システムの安定性と安全性を考慮した後、最終的な実行に必要なマシン命令数を導き出し、ストレージと最大GAS単位のトレードオフを考慮して、GASプラン内の現在の値を確定します。
ストレージコスト
ストレージアクセスはデバイスの帯域幅とIOPSの制限を受けます。ストレージGASプランは、即時の希少性と恒久的な占有コストを考慮しています。任意の状態項目にアクセスすることは、ブロックチェーン全体の状態を検証することに関連するコストを発生させます。
GAS費の保存 = プロジェクト費 + (バイト費 × バイト数)
読み取り、作成、および書き込み操作
各取引で同じリソースの読み取り/書き込み料金が一度だけ請求されます。
安定したGAS単位コスト
固定GAS単位コストは、GASプランを安定させ、ネイティブトークンの時価総額の影響を受けないのに役立ちます。約3桁に精密化され、通常の送金取引コストは約700 GAS単位です。
コミュニティ参加
プロジェクトはコミュニティメンバーを奨励します:
GASコスト調整
GASプランはオンチェーンの設定ストレージとして機能し、ガバナンス提案を通じて変更可能です。設計はスケーラビリティを持ち、提案によるアップグレードを許可します。複雑な変更にはノードソフトウェアの更新と広範な採用が必要で、最終的にはガバナンス提案によって新しいバージョンが承認されます。
今後の方向性
MOVEの最初の実行可能なGASフレームワークとして、この設計は将来の作業の基礎を築きます:
このGASはMOVE言語エコシステムに新たな可能性をもたらし、今後まだ大きな発展と改善の余地があります。