Peluncuran solusi GAS pertama untuk bahasa MOVE, membahas model penagihan sumber daya on-chain yang baru.

robot
Pembuatan abstrak sedang berlangsung

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

Versi sebelumnya dari bahasa MOVE awalnya direncanakan untuk dijalankan dalam lingkungan tanpa GAS, sehingga tidak dipersiapkan untuk rencana GAS. Baru-baru ini, rencana GAS yang dibangun untuk blockchain publik tertentu disebut sebagai "sebuah petualangan", ini adalah desain GAS pertama untuk bahasa MOVE.

Rencana GAS ini menjelaskan prinsip, proses, metode perhitungan, serta mekanisme penyesuaian GAS yang ditetapkan. Pengukuran GAS adalah konsep dasar dari banyak blockchain, yang mendefinisikan jumlah sumber daya komputasi dan penyimpanan yang diperlukan untuk mengeksekusi dan menyimpan transaksi on-chain. Rencana GAS akan menentukan biaya konsumsi dari semua eksekusi on-chain, yang digunakan untuk menghitung pengeluaran GAS selama pelaksanaan transaksi.

proses

Untuk mencapai eksekusi yang efektif, blockchain publik ini mengadopsi proses berikut:

  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 didefinisikan mencakup:

  1. Biaya operasional terkait langsung dengan sumber daya jaringan yang tersedia, setelah perbaikan teknologi biaya GAS seharusnya menurun.
  2. GAS diatur oleh pemerintahan on-chain, dapat dikonfigurasi tanpa batas.
  3. GAS dapat mencegah serangan DoS, dapat dengan cepat disesuaikan berdasarkan kondisi jaringan.
  4. Harga GAS mencerminkan visi untuk mempercepat pertumbuhan dan mempertahankan popularitas blockchain.
  5. Mendorong untuk memprioritaskan faktor-faktor seperti keamanan, modularitas, dan lain-lain dalam desain

perhitungan GAS

Pengguna harus menentukan dua jumlah saat mengajukan transaksi:

Jumlah GAS maksimum: Diukur dalam satuan GAS, adalah jumlah maksimum unit GAS yang bersedia dibayar oleh pengguna.

Harga GAS: dihitung dalam oktal per unit GAS, 1 oktal = 0,00000001 APT.

Biaya akan dikenakan selama proses eksekusi transaksi:

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

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

Jika eksekusi transaksi menghabiskan GAS, pengirim akan dikenakan biaya sesuai dengan jumlah maksimum GAS, perubahan yang dilakukan oleh bursa akan dipulihkan.

GAS rencana tabel dibangun

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 ukuran transaksi berada pada kisaran kilobyte, modul MOVE yang dirilis dapat mencapai beberapa ribu byte. Ukuran transaksi awal ditetapkan sebesar 32KB, kemudian disesuaikan menjadi 64KB berdasarkan umpan balik dari komunitas, untuk menyederhanakan pengembangan aplikasi.

Transaksi berskala besar dapat meningkatkan biaya bandwidth jaringan, mempengaruhi kinerja. Memori pool mungkin mengabaikan transaksi yang terlalu besar, sehingga perlu mencapai keseimbangan antara skala maksimum dan aksesibilitas.

3. Unit GAS maksimum

Definisi maksimum unit GAS dalam rencana GAS menentukan jumlah maksimum operasi yang dapat dieksekusi dalam satu transaksi. Menetapkan terlalu tinggi dapat berdampak negatif pada kinerja blockchain. Saat ini ditetapkan pada 1.000.000, bahkan setelah peningkatan kerangka maksimum tidak melebihi 90%.

4. Eksekusi

Dengan membangun kerangka acuan dan menggunakan Valgrind untuk menganalisis Move VM, memperkirakan biaya relatif dari semua instruksi Move dan fungsi asli. Mempertimbangkan contoh pengkodean yang meningkatkan ketahanan dan keamanan sistem, menghasilkan jumlah instruksi mesin yang dieksekusi akhir, dan dengan mempertimbangkan penyimpanan dan batas maksimum GAS, menentukan nilai saat ini dalam rencana GAS.

5. Penyimpanan

Saat mengakses item status buku besar atau data di penyimpanan permanen, node akan mengirimkan permintaan baca/tulis ke perangkat penyimpanan. Total akses data tergantung pada bandwidth perangkat penyimpanan dan kapasitas IOPS. Tim merancang rencana GAS penyimpanan dengan mempertimbangkan biaya-biaya ini.

Mengakses dan menyimpan item status apa pun akan menghasilkan biaya yang terkait dengan struktur data yang memverifikasi status seluruh blockchain. Biaya ini berkaitan dengan basis dari item status yang berbeda. Ada juga biaya yang sebanding dengan ukuran setiap item.

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 adalah yang paling umum, hanya dibatasi oleh kelangkaan sumber daya yang bersifat sementara.
  • Operasi pembuatan menambahkan item baru ke dalam penyimpanan status, dengan biaya tertinggi.
  • Operasi tulis memperbarui item yang ada tanpa menambah overhead struktur data autentikasi tambahan.

Berdasarkan pertimbangan di atas, enam parameter GAS didefinisikan:

  • per_item_read: Mengoreksi berdasarkan IOPs
  • per_byte_read: mengkalibrasi berdasarkan bandwidth yang sebenarnya
  • per_item_create: Sesuaikan berdasarkan total proyek yang ditargetkan
  • per_byte_create: Sesuaikan berdasarkan ukuran total yang diinginkan
  • per_item_write: sama dengan per_item_read
  • per_byte_write: sama dengan per_byte_create

biaya unit GAS stabil

Setiap operasi dan transaksi itu sendiri memerlukan biaya unit tetap yang relatif terhadap biaya penyimpanan dan eksekusi. Biaya unit GAS tetap membantu menjaga rencana GAS tetap, dan terlepas dari nilai pasar token. Tim menyatakan unit GAS dengan akurasi sekitar 3 digit, biaya transaksi transfer sekitar 700 unit GAS.

partisipasi komunitas

Anggota komunitas dapat:

  1. Temukan ketidakrasionalan dalam rencana GAS
  2. Mengajukan kekhawatiran dan berpartisipasi dalam diskusi
  3. Melakukan pemungutan suara untuk proposal tata kelola yang relevan

penyesuaian biaya GAS

Rencana GAS sebagai penyimpanan konfigurasi on-chain dapat diubah melalui proposal tata kelola dan dapat menambahkan instruksi baru atau fitur bawaan dengan mulus. Seiring berjalannya waktu, parameter GAS dapat disesuaikan berdasarkan umpan balik pengguna.

Perubahan rumus GAS yang kompleks memerlukan pembaruan perangkat lunak node, dan dibedakan melalui tanda fitur GAS yang baru. Setelah operator node mengadopsi perangkat lunak baru, mereka perlu menerbitkan dan menyetujui proposal tata kelola untuk menggunakan versi baru.

Pekerjaan Masa Depan

Sebagai kerangka GAS yang dapat digunakan pertama kali oleh Move, arah kerja di masa depan mencakup:

  1. Mengurangi biaya eksekusi
  2. Mengimplementasikan perhitungan GAS multidimensi, memungkinkan pengguna untuk menetapkan anggaran terpisah untuk eksekusi dan penyimpanan.
  3. Mengurangi kondisi bengkak, mengeksplorasi konsep TTL setiap proyek, menghapus item status yang tidak diakses saat TTL kedaluwarsa
MOVE2.42%
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
  • 2
  • Posting ulang
  • Bagikan
Komentar
0/400
BoredWatchervip
· 08-15 07:13
Sebenarnya harus memanggilnya bahasa tanpa Gas
Lihat AsliBalas0
NeverVoteOnDAOvip
· 08-15 07:12
move juga akan mulai memungut GAS, sedikit disayangkan
Lihat AsliBalas0
  • Sematkan
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)