Desain GAS pertama kali diperkenalkan oleh bahasa MOVE: Analisis rencana perhitungan biaya transaksi on-chain.

robot
Pembuatan abstrak sedang berlangsung

Desain GAS pertama untuk bahasa MOVE: skema perhitungan biaya GAS on-chain

Versi sebelumnya dari bahasa MOVE awalnya direncanakan untuk beroperasi tanpa GAS, sehingga tidak dipersiapkan untuk rencana GAS. Rencana GAS yang baru-baru ini diumumkan oleh sebuah platform blockchain merupakan desain GAS pertama untuk bahasa MOVE, yang secara resmi disebut sebagai "sebuah petualangan".

Rencana GAS ini menjelaskan prinsip, proses, metode perhitungan, penyesuaian di kemudian hari, serta sikap terbuka terhadap saran komunitas dalam menyusun GAS. Pengukuran GAS adalah konsep dasar dari blockchain ini dan banyak blockchain lainnya, yang mendefinisikan jumlah sumber daya komputasi dan penyimpanan yang diperlukan untuk mengeksekusi dan menyimpan transaksi on-chain. Rencana GAS menetapkan biaya yang dikeluarkan untuk semua eksekusi yang dilakukan on-chain, digunakan untuk menghitung pengeluaran GAS yang digunakan selama eksekusi transaksi.

proses

Untuk melakukan eksekusi yang efektif, proses di on-chain ini mencakup:

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

Prinsip

Prinsip yang didefinisikan meliputi:

  1. Biaya operasional harus terkait langsung dengan sumber daya yang tersedia di jaringan dan menurun seiring kemajuan teknologi.
  2. Gas harus diset oleh pengelolaan on-chain, dapat dikonfigurasi tanpa hambatan.
  3. Gas dapat mencegah serangan DoS dan dapat disesuaikan dengan cepat berdasarkan kondisi jaringan.
  4. Harga GAS mencerminkan visi untuk mempercepat pertumbuhan dan menjaga aksesibilitas blockchain.
  5. Mendorong untuk membuat pilihan yang baik dalam desain, seperti memprioritaskan keamanan, modularitas, dan lain-lain.

Menghitung GAS

Pengguna harus menentukan dua jumlah saat mengajukan transaksi:

  1. Jumlah gas maksimum: diukur dalam unit GAS, jumlah unit GAS maksimum yang bersedia dibayar pengguna untuk mengeksekusi transaksi.
  2. Harga Gas: dihitung dalam basis delapan per unit GAS, 1 basis delapan = 0.00000001 APT

Selama proses eksekusi, biaya transaksi akan dikenakan:

  1. Biaya tetap: Basis tetap ditambah biaya tambahan untuk transaksi besar
  2. Biaya Eksekusi: digunakan untuk mengeksekusi instruksi MOVE
  3. Biaya membaca: digunakan untuk membaca data dari penyimpanan permanen
  4. Biaya penulisan: digunakan untuk menulis data ke penyimpanan permanen

Biaya transaksi akhir = Total konsumsi GAS × Harga per unit GAS. Misalnya, jika transaksi mengkonsumsi 670 unit GAS, dan harga gas yang ditentukan pengguna adalah 100 Octa per unit, maka biaya akhir adalah 670 × 100 = 67000 Octa = 0.00067 APT.

Jika gas habis selama eksekusi transaksi, pengirim akan dikenakan biaya berdasarkan jumlah gas maksimum, dan semua perubahan yang dilakukan oleh bursa akan dikembalikan.

Membuat tabel rencana GAS

  1. Konfigurasi Dasar Rencana GAS mencakup komponen yang tidak terkait dengan operasi tunggal, seperti ukuran transaksi dan unit GAS maksimum.

  2. Skala Transaksi Sebagian besar skala transaksi berada di tingkat kilobyte, modul Move dirilis dapat mencapai beberapa ribu byte. Awalnya diatur menjadi 32KB, kemudian disesuaikan menjadi 64KB berdasarkan permintaan komunitas.

  3. Unit GAS maksimum Menentukan jumlah maksimum operasi yang dapat dilakukan dalam transaksi, ditetapkan sebesar 1.000.000, bahkan dengan peningkatan kerangka maksimum tidak lebih dari 90%.

  4. Eksekusi Melalui kerangka acuan dan analisis Valgrind terhadap Move VM, memperkirakan biaya relatif instruksi Move dan fungsi native.

  5. Penyimpanan Pertimbangkan bandwidth perangkat penyimpanan, kapasitas IOPS, dan biaya penggunaan disk permanen untuk merancang rencana GAS penyimpanan.

Baca, buat, dan tulis

Akses item status dibagi menjadi tiga jenis: baca, buat, dan tulis, masing-masing dengan cara perhitungan biaya yang berbeda.

biaya unit GAS yang stabil

Biaya unit gas tetap membantu menjaga stabilitas rencana gas, terlepas dari nilai pasar APT.

partisipasi komunitas

Anggota komunitas dapat:

  1. Menunjukkan ketidakwajaran rencana GAS
  2. Berpartisipasi dalam diskusi komunitas
  3. Memilih proposal tata kelola terkait GAS

penyesuaian biaya GAS

Rencana GAS dapat diubah melalui proposal tata kelola, dirancang untuk dapat diperluas, memungkinkan penyesuaian parameter seiring waktu.

Pekerjaan Masa Depan

  1. Mengurangi biaya eksekusi
  2. Mewujudkan perhitungan GAS multidimensi
  3. Mengatasi masalah status yang membengkak

Ini adalah kerangka GAS yang dapat digunakan untuk MOVE yang pertama, yang menjadi dasar untuk pekerjaan di masa depan, termasuk perbaikan efisiensi kompiler dan mesin virtual, penerapan penetapan harga GAS yang lebih terperinci, serta eksplorasi solusi untuk masalah kurangnya insentif untuk penghapusan data on-chain.

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
  • 6
  • Bagikan
Komentar
0/400
DataPickledFishvip
· 07-11 09:02
Kenapa lagi ini semua hiasan yang berlebihan?
Lihat AsliBalas0
GateUser-40edb63bvip
· 07-10 14:08
Cara perhitungan sangat kaya ya
Lihat AsliBalas0
GasOptimizervip
· 07-09 07:42
Biaya benar-benar ilmiah
Lihat AsliBalas0
OnChainArchaeologistvip
· 07-09 07:24
Ada struktur biaya baru yang menarik.
Lihat AsliBalas0
Rugman_Walkingvip
· 07-09 07:19
Siapa yang bertanggung jawab untuk menetapkan harga gas?
Lihat AsliBalas0
LiquidityHuntervip
· 07-09 07:18
Desain cukup hardcore gas dihitung secara akurat hingga byte
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)