Desain GAS pertama untuk bahasa MOVE: Analisis lengkap skema penagihan sumber daya on-chain

Desain GAS pertama MOVE: Analisis metode perhitungan biaya GAS on-chain

Versi awal bahasa MOVE tidak mempertimbangkan mekanisme GAS, sehingga rencana GAS yang dirancang untuk proyek blockchain tertentu disebut sebagai "sebuah petualangan". Rencana tersebut menjelaskan prinsip, proses, metode perhitungan, penyesuaian di kemudian hari, dan lain-lain terkait pembuatan GAS, serta menyambut masukan dari komunitas.

Pengukuran GAS adalah konsep dasar di banyak blockchain, digunakan untuk mengukur sumber daya komputasi dan penyimpanan yang diperlukan untuk mengeksekusi dan menyimpan transaksi on-chain. Rencana GAS menentukan biaya semua eksekusi on-chain, digunakan untuk menghitung pengeluaran GAS selama eksekusi transaksi.

alur

Proses implementasi GAS dari proyek blockchain ini mencakup:

  1. Prinsip Definisi
  2. Siapkan kerangka evaluasi, tentukan harga untuk setiap pelaksanaan
  3. Membangun sistem pengukuran GAS dan aljabar GAS yang aman untuk MOVE
  4. Mengimpor kerangka GAS hulu
  5. Membuat kerangka GAS memiliki kesadaran penyimpanan
  6. Memperinci lebih lanjut rencana GAS

Prinsip

Prinsip yang ditetapkan oleh proyek meliputi:

  1. Biaya operasi harus terkait langsung dengan sumber daya yang tersedia di jaringan, dan harus menurun seiring dengan kemajuan teknologi.
  2. GAS diatur oleh pemerintahan on-chain, dapat dikonfigurasi dengan mulus
  3. GAS dapat mencegah serangan DoS, dapat disesuaikan dengan cepat berdasarkan kondisi jaringan.
  4. Harga GAS mencerminkan visi untuk pertumbuhan yang cepat dan menjaga popularitas blockchain.
  5. Mendorong pilihan dalam desain yang menguntungkan keamanan, modulasi, dan lainnya.

menghitung GAS

Pengguna harus menentukan saat mengajukan transaksi:

  • Jumlah GAS maksimum: jumlah unit GAS maksimum yang bersedia dikeluarkan untuk mengeksekusi transaksi
  • Harga GAS: dihitung dalam octal, 1 octal = 0.00000001 token asli

Biaya yang dikenakan selama proses eksekusi transaksi:

  1. Biaya tetap
  2. Biaya Eksekusi
  3. Biaya Pembacaan
  4. Biaya Penulisan

Biaya transaksi akhir = Total GAS yang digunakan × Harga GAS per unit

Misalnya, sebuah transaksi menghabiskan 670 unit GAS, pengguna menetapkan harga GAS per unit sebesar 100 Octa/unit, maka biaya akhirnya adalah 670 × 100 = 67000 Octa = 0.00067 token asli.

Jika GAS habis selama eksekusi transaksi, pengirim akan dikenakan biaya berdasarkan jumlah maksimum GAS yang digunakan, semua perubahan yang dilakukan oleh transaksi tersebut akan dibatalkan.

Membuat tabel rencana GAS

1. Konfigurasi Dasar

Rencana GAS mencakup komponen yang tidak terkait dengan satu operasi, seperti ukuran transaksi dan unit GAS maksimum.

2. Skala Transaksi

Sebagian besar ukuran transaksi berada pada tingkat kilobyte, tetapi modul Move yang dirilis dapat mencapai beberapa kilobyte. Awalnya, ukuran transaksi ditetapkan pada 32KB, kemudian disesuaikan menjadi 64KB berdasarkan umpan balik dari komunitas.

Transaksi berskala besar akan meningkatkan biaya bandwidth jaringan dan mungkin mempengaruhi kinerja. Memori pool cenderung mengabaikan transaksi yang lebih besar, sehingga perlu menyeimbangkan antara skala maksimum dan aksesibilitas.

3. Unit GAS Maksimal

Definisi unit GAS maksimum dalam rencana GAS menentukan jumlah maksimum operasi yang dapat dieksekusi dalam transaksi. Menetapkan terlalu tinggi dapat menyebabkan dampak kinerja negatif, seperti loop tak terbatas. Pengujian menunjukkan bahwa bahkan dengan peningkatan kerangka maksimum, tidak mencapai 90% dari unit GAS maksimum yang ditetapkan (1,000,000).

4. Eksekusi

Tim membangun kerangka acuan dan menggunakan alat analisis untuk mengevaluasi biaya eksekusi, memperkirakan secara kasar biaya relatif semua instruksi MOVE dan fungsi bawaan. Dengan mempertimbangkan contoh pengkodean yang meningkatkan ketahanan dan keamanan sistem, jumlah instruksi mesin yang dieksekusi akhirnya diperoleh.

5. Penyimpanan

Saat mengakses item status buku besar atau data, node akan mengeluarkan permintaan baca/tulis ke perangkat penyimpanan. Jumlah akses data dibatasi oleh bandwidth perangkat penyimpanan dan kapasitas IOPS. Tim mempertimbangkan biaya ini saat merancang rencana penyimpanan GAS.

Mengakses dan menyimpan item status akan menimbulkan biaya yang terkait dengan struktur data yang memverifikasi seluruh status blockchain. Rumus perhitungan biaya adalah:

Biaya penyimpanan GAS = Biaya proyek + ( biaya byte × jumlah byte )

Baca, buat, dan tulis

Akses item status dibagi menjadi tiga jenis: baca, buat, dan tulis:

  • Operasi baca paling umum, hanya dibatasi oleh kelangkaan sumber daya sesaat.
  • Membuat operasi menambahkan item baru ke dalam penyimpanan status, biaya tertinggi
  • Operasi tulis memperbarui item yang ada, tidak menghasilkan overhead struktur data verifikasi tambahan

Biaya terkait penyimpanan dievaluasi berdasarkan setiap transaksi, biaya hanya dikenakan sekali untuk beberapa kali baca dan tulis sumber daya yang sama.

Tim telah mendefinisikan 6 parameter GAS yang membentuk total biaya GAS:

  • per_item_read:kalibrasi berdasarkan IOPs
  • per_byte_read: disesuaikan berdasarkan bandwidth
  • per_item_create: sesuai dengan kalibrasi total proyek yang ditargetkan
  • per_byte_create: menyesuaikan berdasarkan total ukuran target
  • per_item_write: sama dengan per_item_read
  • per_byte_write: sama dengan per_byte_create

biaya unit GAS yang stabil

Setiap operasi dan transaksi itu sendiri membutuhkan biaya unit tetap relatif terhadap biaya penyimpanan dan eksekusi. Biaya unit GAS tetap membantu menjaga rencana GAS tetap konsisten dan terlepas dari nilai pasar token asli.

Tim menyatakan unit GAS dengan presisi sekitar 3 digit, seperti biaya transaksi transfer sekitar 700 unit GAS.

partisipasi komunitas

Anggota komunitas dapat:

  1. Temukan ketidakwajaran dalam rencana GAS
  2. Menyampaikan kekhawatiran tentang rencana GAS dan berpartisipasi dalam diskusi
  3. Tentang pemungutan suara untuk proposal tata kelola terkait GAS

Bagaimana cara menyesuaikan biaya GAS?

Rencana GAS sebagai penyimpanan konfigurasi on-chain, dapat diubah melalui proposal tata kelola, dan dapat menambahkan instruksi atau fungsi baru secara seamless.

Desain rencana GAS yang dapat diperluas, memungkinkan peningkatan melalui proposal tata kelola. Seiring dengan perbaikan proyek dan penggabungan umpan balik pengguna, parameter GAS dapat disesuaikan secara bertahap.

Perubahan rumus GAS yang kompleks perlu memperbarui perangkat lunak node, setelah diadopsi secara luas, penggunaan versi baru disetujui melalui proposal tata kelola.

Pekerjaan Masa Depan

Sebagai kerangka GAS yang dapat digunakan pertama kali di MOVE, proyek ini meletakkan dasar untuk pekerjaan di masa depan:

  1. Mengurangi biaya eksekusi: Meningkatkan efisiensi kompilator dan mesin virtual
  2. Perhitungan GAS Multi-Dimensi: memungkinkan pengguna untuk menetapkan anggaran terpisah untuk eksekusi dan penyimpanan.
  3. Mengurangi status yang tidak efisien: menjelajahi konsep TTL setiap proyek, menghapus item status yang tidak diakses saat TTL kedaluwarsa.
MOVE4.63%
Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
  • Hadiah
  • 1
  • Bagikan
Komentar
0/400
StablecoinGuardianvip
· 07-25 15:15
Akhirnya ada GAS yang dapat diandalkan
Lihat AsliBalas0
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)