MOVE мова вперше запровадила механізм GAS: детальний аналіз методу обчислення GAS та принципів дизайну певної публічної мережі

robot
Генерація анотацій у процесі

Перший дизайн GAS мови MOVE: метод розрахунку витрат GAS певного публічного блокчейну

Одна з публічних блокчейн-мереж нещодавно оголосила про свій план GAS. Як перший дизайн GAS для мови MOVE, це розглядається як "пригодницька" спроба. Цей план викладає принципи, процеси, методи розрахунку GAS, а також майбутні механізми коригування.

GAS-облік є основним поняттям багатьох блокчейнів, що використовується для кількісної оцінки обчислювальних і сховищних ресурсів, необхідних для виконання та зберігання транзакцій на ланцюзі. GAS-план визначає вартість усіх операцій виконання на ланцюзі, використовуваних для обчислення витрат GAS під час виконання транзакцій.

Процес дизайну

Процес дизайну GAS цієї публічної мережі включає:

  1. Визначення принципів
  2. Підготовка оцінювальної рамки, визначення ціни для кожного виконання
  3. Створити систему вимірювання GAS та безпечну алгебру GAS для MOVE
  4. Імпортувати верхній GAS фрейм
  5. Зробити фреймворк GAS свідомим зберігання
  6. Додаткова деталізація плану GAS

Принципи дизайну

  1. Витрати на операції повинні бути безпосередньо пов'язані з доступними ресурсами мережі і знижуватися в міру прогресу технологій.
  2. GAS встановлюється через управління на ланцюзі, його можна безшовно налаштувати
  3. GAS може запобігти атакам DoS, може швидко налаштовуватися в залежності від стану мережі
  4. Ціна GAS відображає бачення прискореного зростання та підтримки доступності блокчейну.
  5. Заохочення до прийняття хороших рішень у дизайні, таких як пріоритет безпеки, модульності тощо.

Метод розрахунку GAS

Користувач повинен вказати дві кількості під час подання угоди:

  • Максимальна кількість GAS: максимальна кількість одиниць GAS, яку користувач готовий витратити для виконання транзакції.
  • Ціна за одиницю GAS: обчислюється в восьмичній системі, 1 восьмеричне = 0.00000001 рідного токена

Під час виконання угоди стягуватиметься:

  1. Фіксовані витрати
  2. Витрати на виконання ( виконати команду MOVE )
  3. Читання вартості ( з постійного сховища даних )
  4. Записати вартість ( дані у постійне зберігання )

Кінцеві торгові витрати = Загальна кількість спожитого GAS × Ціна за GAS

Наприклад, якщо транзакція споживає 670 одиниць GAS, а вказана користувачем ціна за одиницю GAS становить 100 Octa, тоді остаточна вартість транзакції становить 670 × 100 = 67000 Octa = 0.00067 нативного токена.

Якщо під час виконання транзакції вичерпується GAS, відправник буде стягнутий за максимальну кількість GAS, і всі зміни, зроблені транзакцією, будуть скасовані.

GAS план

базова конфігурація

План GAS містить деякі компоненти, які не пов'язані з окремими операціями, такі як розмір транзакції та максимальна кількість одиниць GAS.

обсяг торгівлі

Більшість обсягів транзакцій на рівні тисячі байтів, але модуль MOVE може досягати кількох тисяч байтів. Спочатку обсяг транзакцій було встановлено на 32KB, а потім, відповідно до відгуків спільноти, було відкориговано на 64KB.

Дуже великі обсяги транзакцій збільшать витрати на пропускну здатність мережі, що може вплинути на продуктивність. Пул пам'яті, швидше за все, буде ігнорувати транзакції більших обсягів, тому необхідно знайти баланс між максимальним обсягом і доступністю.

найбільша одиниця GAS

Максимальна одиниця GAS, визначена в плані GAS, визначає максимальну кількість операцій, які можуть бути виконані в одній транзакції. Занадто висока установка може негативно вплинути на продуктивність блокчейну. Тестування показало, що навіть під час масштабного оновлення фреймворку, використання не перевищує 90% від максимальної одиниці GAS (, встановленої на 1,000,000).

оцінка витрат на виконання

Команда оцінила відносну вартість усіх команд MOVE та нативних функцій, створивши базову структуру та використовуючи аналітичні інструменти. Враховуючи надійність та безпеку системи, було остаточно визначено кількість виконуваних машинних інструкцій, а також проведено балансування з обсягом пам'яті та максимальними одиницями GAS, що призвело до значень у нинішній GAS схемі.

вартість зберігання

Зберігання витрат GAS враховує миттєву дефіцитність доступу до даних та постійні витрати на дискове місце. Формула для розрахунку витрат:

Зберігання GAS-кошту = проектний кошт + ( байт-кошту × кількість байтів )

Доступ до статусних елементів поділяється на три типи: читання, створення та запис, кожен з яких має свої тарифи. Витрати на читання базуються на калібруванні дискових IOPS та пропускної здатності, витрати на створення – на калібруванні простору на диску, а витрати на запис лежать між цими двома.

Слід зазначити, що витрати на зберігання оцінюються на основі кожної транзакції, навіть якщо один і той же ресурс читається/записується кілька разів, стягується лише одна плата.

Стабільна вартість одиниці GAS

Щоб зберегти стабільність програми GAS і відокремити її від ринкової вартості нативного токена, кожна операція та сама транзакція повинні мати відносно фіксовану одиничну вартість. Команда представляє одиницю GAS з точністю приблизно до трьох цифр, наприклад, вартість транзакції переказу становить приблизно 700 одиниць GAS.

Участь у спільноті

Як спільнота проекту, користувачі можуть:

  1. Вказати на неправомірності в плані GAS
  2. Брати участь у обговореннях спільноти, висловлювати занепокоєння щодо плану GAS
  3. Проголосувати за відповідні пропозиції щодо управління

Механізм коригування витрат на GAS

План GAS, як конфігурація зберігання в ланцюгу, може бути змінений через пропозиції з управління. Він розроблений як розширювальний, що дозволяє оновлення через пропозиції з управління. З розвитком технологій та зворотним зв'язком від спільноти параметри GAS можуть коригуватися з часом.

Складні зміни формули GAS вимагають оновлення програмного забезпечення вузлів і схвалення нової версії через пропозицію щодо управління.

Майбутні напрямки роботи

  1. Зниження витрат на виконання: шляхом покращення ефективності компілятора та віртуальної машини
  2. Багатовимірні обчислення GAS: дозволяє користувачам вказати окремий бюджет для виконання та зберігання
  3. Пом'якшення розширення стану: дослідження концепції TTL для кожного проекту, видалення невідвіданих станів проекту після закінчення TTL
GAS-3.48%
MOVE3.33%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 3
  • Поділіться
Прокоментувати
0/400
DevChivevip
· 07-20 05:13
Знову потрібно підняти ставку для дідуся?
Переглянути оригіналвідповісти на0
MevTearsvip
· 07-20 05:07
Знову ж таки, це не новинка, а має присмак пастки криптосвіту.
Переглянути оригіналвідповісти на0
LidoStakeAddictvip
· 07-20 04:57
Витрати знову мають нові хитрощі??!! Просто подивимось, хто першим оптимізує газ.
Переглянути оригіналвідповісти на0
  • Закріпити