# MOVE言語での最初のGASメカニズムの設計:チェーン上のガス消費量の計算の詳細な説明10月14日、重要なブロックチェーン技術のブレークスルーが発表されました。これはMOVE言語による初のGASメカニズムの設計であり、公式には「冒険」と呼ばれています。このメカニズムは、オンチェーン取引を実行および保存するために必要な計算および保存リソースの量を抽象的に計算する方法を定義し、取引実行中のGAS消費を計算するために使用されます。## デザインプロセス効果的に実行するために、デザインチームは以下のプロセスに従いました:1. デザイン原則を確定する2. 評価フレームワークを策定し、各操作の価格を決定する3. MOVEのためのGAS計量システムと安全なGAS代数を構築する4. 上流のGASフレームワークをオンチェーンにインポートする5. GASフレームワークにストレージ意識を持たせる6. GAS方案をさらに最適化する## デザイン原則主要な原則には次のものが含まれます:1. 操作コストはネットワークの利用可能なリソースに直接関連しており、技術の進歩に伴い低下します。2. GASはオンチェーンガバナンスによって設定され、柔軟に構成できます3. GASはDoS攻撃を防ぎ、ネットワークの状況に応じて迅速に調整できます。4. GAS価格は加速的な成長とブロックチェーンのアクセス可能性を維持するビジョンを反映しています5. 設計において優れた選択を促進する、例えば安全性やモジュール性に重点を置くなど## GASの計算方法ユーザーが取引を提出する際には、2つの数量を指定する必要があります:- GASの最大数:ユーザーが支払う意思のあるGASユニットの最大数- GAS単価:1オクタル=0.00000001 APTとして、1単位GASのオクタルで計算します取引の実行中に、以下の料金が請求されます。1. 固定コスト2. 実行コスト 3. コストを読み取る4. 書き込みコスト最終取引手数料 = GAS消費量の合計 × GAS単価例えば、1つのトランザクションが670 GASユニットを消費し、ユーザーが指定したGAS単価が100 Octa/ユニットの場合、最終的な手数料は670 * 100 = 67000 Octa = 0.00067 APT。もし取引の実行がGASを使い果たした場合、送信者は最大GAS量に基づいて料金が請求され、取引のすべての変更は取り消されます。## GASスケジュールビルド### 1. 基本設定GASプランには、トランザクションのサイズや最大GASユニットなど、単一操作とは無関係な要素が含まれています。### 2. トランザクションのサイズほとんどの取引規模はキロバイトレベルですが、MOVEモジュールを発行すると数千バイトに達することができます。現在、取引規模の上限は64KBに設定されており、規模とアクセス性の間でバランスを取っています。### 3. 最大GAS単位 単一の取引で実行可能な最大操作量を1,000,000に設定します。最大フレームワークのアップグレードを行っても、90%未満しか使用しません。### 4. 実行コスト評価ベンチマークフレームワークとValgrind分析ツールを使用して、すべてのMOVE命令とネイティブ関数の相対コストを推定します。システムの堅牢性と安全性を考慮して、最終的な実行命令数を導き出します。### 5. ストレージコストストレージデバイスの帯域幅、IOPS容量、永続的な占有コストを考慮して、ストレージGASプランを設計します。基本的な公式は次のとおりです:GAS費用 = プロジェクト費用 + (バイト費用 * バイト数)### 読み取り、作成、および書き込み操作- 読み取り: ディスクIOPSと帯域幅の容量をキャリブレーションする- 作成:コストが最も高く、参照ディスクスペースに基づいて調整されます- 書き込み:更新項のバイトには作成と同じ料金がかかります6つのGASパラメータが総費用を構成することを定義しました:- per_item_read- バイトごとの読み取り - per_item_create- per_byte_create- per_item_write- per_byte_write## 安定したGAS単位コスト固定GAS単位コストはGASプランの安定を維持するのに役立ちます。チームは約3桁の精度でGAS単位を表示しており、例えば送金取引コストは約700個のGAS単位です。## コミュニティ参加コミュニティプロジェクトとして、メンバーは:1. GASプランの不合理な点を指摘する2. コミュニティディスカッションに参加する3. 関連するガバナンス提案の投票## GASコスト調整GASプランはオンチェーン構成ストレージとして機能し、ガバナンス提案を通じて変更できます。拡張性を考慮して設計されており、アップグレードが可能です。複雑な変更にはノードソフトウェアの更新と広範な採用が必要で、最終的にはガバナンス提案によって承認されます。## 今後の取り組みMOVEの最初の実行可能なGASフレームワークとして、今後の作業には次のものが含まれます:1. 実行コストを削減する2. 多次元GAS計算の実装3. ステータス膨張問題の緩和チームは各プロジェクトのTTLの概念を探求しており、TTLが期限切れになるとアクセスされていない状態のプロジェクトを削除します。
MOVE言語の初のGASメカニズム:オンチェーンリソース消費計算の詳細
MOVE言語での最初のGASメカニズムの設計:チェーン上のガス消費量の計算の詳細な説明
10月14日、重要なブロックチェーン技術のブレークスルーが発表されました。これはMOVE言語による初のGASメカニズムの設計であり、公式には「冒険」と呼ばれています。このメカニズムは、オンチェーン取引を実行および保存するために必要な計算および保存リソースの量を抽象的に計算する方法を定義し、取引実行中のGAS消費を計算するために使用されます。
デザインプロセス
効果的に実行するために、デザインチームは以下のプロセスに従いました:
デザイン原則
主要な原則には次のものが含まれます:
GASの計算方法
ユーザーが取引を提出する際には、2つの数量を指定する必要があります:
取引の実行中に、以下の料金が請求されます。
最終取引手数料 = GAS消費量の合計 × GAS単価
例えば、1つのトランザクションが670 GASユニットを消費し、ユーザーが指定したGAS単価が100 Octa/ユニットの場合、最終的な手数料は670 * 100 = 67000 Octa = 0.00067 APT。
もし取引の実行がGASを使い果たした場合、送信者は最大GAS量に基づいて料金が請求され、取引のすべての変更は取り消されます。
GASスケジュールビルド
1. 基本設定
GASプランには、トランザクションのサイズや最大GASユニットなど、単一操作とは無関係な要素が含まれています。
2. トランザクションのサイズ
ほとんどの取引規模はキロバイトレベルですが、MOVEモジュールを発行すると数千バイトに達することができます。現在、取引規模の上限は64KBに設定されており、規模とアクセス性の間でバランスを取っています。
3. 最大GAS単位
単一の取引で実行可能な最大操作量を1,000,000に設定します。最大フレームワークのアップグレードを行っても、90%未満しか使用しません。
4. 実行コスト評価
ベンチマークフレームワークとValgrind分析ツールを使用して、すべてのMOVE命令とネイティブ関数の相対コストを推定します。システムの堅牢性と安全性を考慮して、最終的な実行命令数を導き出します。
5. ストレージコスト
ストレージデバイスの帯域幅、IOPS容量、永続的な占有コストを考慮して、ストレージGASプランを設計します。基本的な公式は次のとおりです:
GAS費用 = プロジェクト費用 + (バイト費用 * バイト数)
読み取り、作成、および書き込み操作
6つのGASパラメータが総費用を構成することを定義しました:
安定したGAS単位コスト
固定GAS単位コストはGASプランの安定を維持するのに役立ちます。チームは約3桁の精度でGAS単位を表示しており、例えば送金取引コストは約700個のGAS単位です。
コミュニティ参加
コミュニティプロジェクトとして、メンバーは:
GASコスト調整
GASプランはオンチェーン構成ストレージとして機能し、ガバナンス提案を通じて変更できます。拡張性を考慮して設計されており、アップグレードが可能です。複雑な変更にはノードソフトウェアの更新と広範な採用が必要で、最終的にはガバナンス提案によって承認されます。
今後の取り組み
MOVEの最初の実行可能なGASフレームワークとして、今後の作業には次のものが含まれます:
チームは各プロジェクトのTTLの概念を探求しており、TTLが期限切れになるとアクセスされていない状態のプロジェクトを削除します。