Terobosan paralelisasi EVM: Eksekusi multi-thread meningkatkan kemampuan pemrosesan transaksi

robot
Pembuatan abstrak sedang berlangsung

Jalan Paralelisasi EVM: Dari Eksekusi Serial ke Multithreading

Seperti yang kita ketahui, EVM adalah mesin eksekusi inti Ethereum yang bertanggung jawab atas pelaksanaan kontrak pintar. Untuk memastikan bahwa kontrak pintar di berbagai node menghasilkan hasil eksekusi yang sama, EVM menyediakan lingkungan virtual yang seragam, mirip dengan Java Virtual Machine (JVM).

Kontrak pintar, saat dikerahkan ke blockchain, akan terlebih dahulu dikompilasi menjadi bytecode EVM. EVM saat mengeksekusi kontrak, akan membaca bytecode ini secara berurutan, setiap instruksi memiliki biaya Gas yang sesuai. EVM akan melacak konsumsi Gas saat setiap instruksi dieksekusi, jumlah konsumsi tergantung pada kompleksitas operasi.

Sebagai contoh Reddio, menjelaskan jalan optimasi EVM paralel

EVM tradisional memproses transaksi secara serial, di mana semua transaksi mengantri dalam satu antrean untuk dieksekusi secara berurutan. Desain ini sederhana dan mudah dipelihara, tetapi seiring pertumbuhan jumlah pengguna dan peningkatan permintaan TPS, bottleneck kinerja dari eksekusi serial semakin terlihat, terutama dalam solusi Layer 2.

Dengan Reddio sebagai contoh, menjelaskan jalan optimasi EVM paralel

Selain EVM, komponen inti lain dalam eksekusi transaksi Ethereum adalah stateDB, yang digunakan untuk mengelola status akun dan penyimpanan data. Setiap kali EVM mengeksekusi transaksi, data dalam stateDB akan diperbarui, dan perubahan ini akhirnya tercermin dalam pohon status global.

Dalam mode eksekusi serial, proses kolaborasi EVM dan stateDB untuk memproses transaksi adalah sebagai berikut:

  1. Transaksi dalam satu blok diproses secara berurutan.
  2. Setiap transaksi menggunakan instance EVM yang independen, tetapi berbagi stateDB yang sama
  3. Selama proses eksekusi EVM terus berinteraksi dengan stateDB, membaca dan menulis data.
  4. Setelah semua transaksi diproses, perubahan di stateDB akan diserahkan ke pohon status global.

Menggunakan Reddio sebagai contoh, menjelaskan jalan optimasi EVM paralel

Masalah utama dari mode serial ini adalah, transaksi kontrak pintar yang kompleks dapat menghalangi transaksi lainnya, sehingga tidak dapat memanfaatkan sumber daya perangkat keras secara maksimal.

Untuk mengatasi masalah ini, beberapa proyek mulai mengeksplorasi solusi optimasi paralel EVM. Sebagai contoh proyek Layer 2 tertentu, inti pemikirannya adalah untuk memberikan setiap thread sebuah basis data status sementara (pending-stateDB):

  1. Eksekusi perdagangan yang berbeda secara paralel dengan multithreading
  2. Setiap thread menggunakan pending-stateDB yang independen untuk mencatat perubahan status
  3. Setelah semua transaksi dieksekusi, perubahan di pending-stateDB akan disinkronkan ke global stateDB.

Dengan Reddio sebagai contoh, menjelaskan jalan optimasi EVM paralel

Proposal ini melakukan penanganan khusus untuk operasi baca-tulis:

  • Operasi baca pertama-tama memeriksa pending-stateDB, jika tidak ada data maka membaca global stateDB
  • Operasi penulisan disimpan sementara di pending-stateDB, tidak langsung mengubah global stateDB

Menggunakan Reddio sebagai contoh, menjelaskan jalan optimasi EVM paralel

Untuk menghindari konflik status, skema ini memperkenalkan mekanisme deteksi konflik:

  • Memantau apakah ada tumpang tindih antara kumpulan baca dan tulis dari transaksi yang berbeda
  • Tandai transaksi terkait yang perlu dieksekusi ulang saat konflik ditemukan

Menggunakan Reddio sebagai contoh, menjelaskan jalan optimasi EVM paralel

Akhirnya, gabungkan beberapa perubahan pending-stateDB ke dalam global stateDB untuk menghasilkan akar status baru.

Menggunakan Reddio sebagai contoh, menjelaskan jalan optimisasi EVM paralel

Skema optimasi paralel ini dapat meningkatkan TPS 3-5 kali lipat pada beban kerja dengan konflik rendah. Dalam situasi konflik tinggi, secara teori dapat mencapai peningkatan 60 kali lipat.

Menggunakan Reddio sebagai contoh, menjelaskan jalan optimasi EVM paralel

Secara keseluruhan, paralelisasi EVM adalah arah penting untuk meningkatkan kinerja Ethereum dan Layer 2-nya. Melalui teknologi eksekusi paralel multi-thread dan pustaka status sementara, kapasitas pemrosesan transaksi dapat ditingkatkan secara signifikan dengan tetap menjaga konsistensi. Di masa depan, EVM juga dapat ditingkatkan kinerjanya melalui optimasi efisiensi penyimpanan lebih lanjut, perbaikan strategi penanganan konflik, dan metode lainnya.

Menggunakan Reddio sebagai contoh, menjelaskan jalan optimasi EVM paralel

Menggunakan Reddio sebagai contoh, menjelaskan jalan optimasi EVM paralel

Menggunakan Reddio sebagai contoh, menjelaskan jalan optimasi EVM paralel

ETH-4.03%
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
  • 5
  • Bagikan
Komentar
0/400
FlatTaxvip
· 07-24 20:11
60 kali? Tidak ada pajak untuk berbicara besar
Lihat AsliBalas0
FastLeavervip
· 07-22 02:02
Bagus, bisa meningkatkan TPS hingga 60 kali lipat.
Lihat AsliBalas0
NftDeepBreathervip
· 07-22 00:27
Setelah itu, BTC kembali sebagai raja.
Lihat AsliBalas0
CounterIndicatorvip
· 07-22 00:11
bullish adalah puncak, turun adalah dasar
Lihat AsliBalas0
SerumDegenvip
· 07-22 00:10
hanya copium lain untuk pump eth sejujurnya... tampilkan saya angka tps yang sebenarnya terlebih dahulu
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)