laporan kinerja

Laporan "Rantai Tercepat" yang dirilis oleh CoinGecko pada 17 Mei menunjukkan bahwa Solana adalah yang tercepat di antara blockchain besar, dengan rata-rata TPS riil harian tertinggi mencapai 1,054 (transaksi pemungutan suara telah dihapus), dan Sui adalah Blockchain tercepat kedua, tertinggi rata-rata harian TPS riil mencapai 854, BSC menduduki peringkat ketiga, namun TPS riil yang dicapai kurang dari separuh Sui.

Seperti yang dapat dilihat dari laporan ini, Solana dan Sui dengan kinerja terbaik keduanya merupakan blockchain yang tidak kompatibel dengan EVM. Selain itu, rata-rata TPS nyata dari 8 blockchain yang tidak kompatibel dengan EVM adalah 284, 17 blockchain yang kompatibel dengan EVM dan rata-rata TPS. Ethereum Layer 2 hanya 74, dan kinerja blockchain yang tidak kompatibel dengan EVM sekitar 4 kali lipat dari blockchain yang kompatibel dengan EVM.

Artikel ini akan mengeksplorasi hambatan kinerja pada blockchain yang kompatibel dengan EVM dan mengungkap metode kinerja Solana.

Hambatan kinerja pada blockchain yang kompatibel dengan EVM

Pertama, kami menggeneralisasi blockchain EVM ke blockchain umum. Secara umum, jika blockchain ingin meningkatkan TPS, ada beberapa cara sebagai berikut:

  • Meningkatkan kinerja node: Meningkatkan kinerja node dengan menumpuk sumber daya perangkat keras. Persyaratan perangkat keras node akan memengaruhi tingkat desentralisasi, konfigurasi Ethereum yang disarankan, inti CPU 4, memori 16 G, bandwidth jaringan 25 Mbps, pengguna biasa- tingkat peralatan yang dapat dicapai, tingkat desentralisasi yang lebih tinggi; Solana merekomendasikan konfigurasi 32 inti CPU, memori 128 G, dan bandwidth jaringan 1 Gbps yang relatif lebih tinggi, yang hanya dapat dicapai dengan peralatan kelas profesional, dan tingkat desentralisasi rata-rata ;

  • Meningkatkan protokol yang mendasarinya: termasuk protokol jaringan, kriptografi, penyimpanan, dll. Meningkatkan protokol yang mendasari blockchain tidak mengubah properti dari blockchain itu sendiri, juga tidak mempengaruhi aturan pengoperasian blockchain blockchain, namun perhatian teknis yang mendasarinya rendah, dan tidak ada terobosan besar dalam bidang penelitian saat ini;

  • Memperluas blok: Meningkatkan ukuran blok dapat mencakup lebih banyak transaksi, sehingga meningkatkan throughput transaksi blockchain. Misalnya, Bitcoin Cash (BCH) memperluas blok dari 1 MB menjadi 8 MB dan kemudian menjadi 32 MB. Namun, perluasan blok juga akan meningkatkan penundaan propagasi dan menimbulkan ancaman keamanan, seperti meningkatkan kemungkinan serangan fork dan DDoS;

  • Protokol konsensus: Protokol konsensus memastikan bahwa semua node di blockchain mencapai kesepakatan mengenai pembaruan status blockchain. Ini adalah gerbang keamanan terpenting dari blockchain. Mekanisme konsensus yang telah digunakan dalam blockchain termasuk PoW, PoS, dan lain-lain. PBFT, dll. Untuk memenuhi kebutuhan skalabilitas, public chain berkinerja tinggi umumnya meningkatkan protokol konsensus dan menggabungkannya dengan mekanisme khusus mereka sendiri, seperti mekanisme konsensus berbasis PoH Solana dan mekanisme konsensus berbasis longsoran salju milik Avalanche;

  • Eksekusi transaksi: Eksekusi transaksi hanya memperhatikan jumlah transaksi atau tugas komputasi yang diproses per unit waktu. Blockchain seperti Ethereum menggunakan metode serial untuk mengeksekusi transaksi kontrak pintar dalam blok. Dalam eksekusi serial, hambatan kinerja CPU sangat jelas. , secara serius membatasi throughput blockchain. Umumnya, rantai publik berkinerja tinggi akan mengadopsi eksekusi paralel, dan beberapa akan mengusulkan model bahasa yang lebih kondusif bagi paralelisme untuk membangun kontrak pintar, seperti Sui Move.

Untuk blockchain EVM, tantangan terbesarnya terletak pada eksekusi transaksi karena keterbatasan mesin virtual, yang merupakan lingkungan eksekusi transaksi. EVM memiliki dua masalah kinerja utama:

  • 256-bit: EVM dirancang sebagai mesin virtual 256-bit untuk memudahkan pemrosesan algoritma hashing Ethereum, yang secara eksplisit akan menghasilkan output 256-bit. Namun, komputer yang benar-benar menjalankan EVM perlu memetakan byte 256-bit ke arsitektur lokal untuk dieksekusi. Satu opcode EVM akan berhubungan dengan beberapa opcode lokal, membuat keseluruhan sistem menjadi sangat tidak efisien dan tidak praktis;

  • Kurangnya perpustakaan standar: Tidak ada perpustakaan standar di Solidity, dan Anda harus mengimplementasikannya sendiri dengan kode Solidity. Meskipun OpenZeppelin telah memperbaiki situasi ini sampai batas tertentu, mereka menyediakan perpustakaan standar untuk implementasi Solidity (dengan memasukkan kode dalam kontrak atau kontrak). dalam bentuk delegasicall Panggil kontrak yang diterapkan), tetapi kecepatan eksekusi bytecode EVM jauh lebih rendah dibandingkan dengan perpustakaan standar yang telah dikompilasi sebelumnya.

Dari perspektif optimalisasi eksekusi, EVM masih memiliki dua kelemahan utama:

  • Kesulitan melakukan analisis statis: Eksekusi paralel di blockchain berarti memproses transaksi yang tidak terkait pada saat yang sama, memperlakukan transaksi yang tidak terkait sebagai peristiwa yang tidak saling mempengaruhi. Tantangan utama dalam mencapai eksekusi paralel adalah menentukan transaksi mana yang tidak relevan dan mana yang independen. Saat ini, beberapa rantai publik berkinerja tinggi melakukan analisis statis pada transaksi terlebih dahulu. Mekanisme lompatan dinamis EVM menyulitkan analisis kode secara statis. ;

  • Kompiler JIT belum matang: Kompiler JIT (Just In Time Compiler) adalah metode optimasi yang umum digunakan di mesin virtual modern. Tujuan utama JIT adalah mengubah eksekusi interpretasi menjadi eksekusi terkompilasi. Saat runtime, mesin virtual mengkompilasi kode panas menjadi kode mesin yang terkait dengan platform lokal dan melakukan berbagai tingkat optimasi. Meskipun saat ini terdapat proyek EVM JIT, namun masih dalam tahap percobaan dan belum cukup matang.

Oleh karena itu, dalam hal pemilihan mesin virtual, rantai publik berkinerja tinggi menggunakan mesin virtual berdasarkan WASM, bytecode eBPF, atau bytecode Pindahkan, bukan EVM. Solana, misalnya, menggunakan mesin virtual uniknya SVM dan SBF bytecode berbasis eBPF.

Rantai Tercepat:Solana

Solana terkenal dengan mekanisme PoH (Proof of History) dan latensi rendah serta throughput tinggi. Ini adalah salah satu "pembunuh Ethereum" yang paling terkenal.

Pada intinya, PoH adalah algoritma hash sederhana yang mirip dengan Fungsi Penundaan yang Dapat Diverifikasi (VDF). Solana diimplementasikan menggunakan fungsi hash tahan preimage urutan (SHA-256) yang berjalan terus menerus, menggunakan keluaran dari satu iterasi sebagai masukan untuk iterasi berikutnya. Perhitungan ini dijalankan pada satu inti per validator.

Meskipun pembuatan urutan bersifat berurutan dan berulir tunggal, verifikasi dapat dilakukan secara paralel, sehingga memungkinkan verifikasi yang efisien pada sistem multi-inti. Meskipun ada batasan atas kecepatan hashing, peningkatan perangkat keras dapat memberikan peningkatan kinerja tambahan.

Proses konsensus Solana

Mekanisme PoH berfungsi sebagai sumber waktu yang andal dan tidak dapat dipercaya, menciptakan catatan peristiwa yang dapat diverifikasi dan diurutkan dalam jaringan. Pengaturan waktu berbasis PoH memungkinkan jaringan Solana untuk merotasi pemimpin secara terjadwal dan transparan. Rotasi ini terjadi pada interval tetap sebanyak 4 slot, setiap slot saat ini disetel ke 400 milidetik. Mekanisme rotasi pemimpin ini memastikan bahwa setiap validator yang berpartisipasi memiliki peluang yang adil untuk menjadi pemimpin dan merupakan mekanisme penting bagi jaringan Solana untuk menjaga desentralisasi dan keamanan, mencegah validator tunggal mendapatkan terlalu banyak kekuasaan di jaringan.

Setiap periode slot, pemimpin mengusulkan blok baru berisi transaksi yang diterima dari pengguna. Pemimpin memvalidasi transaksi ini, mengemasnya ke dalam sebuah blok, dan kemudian menyiarkan blok tersebut ke validator jaringan yang tersisa. Proses pengusulan dan penyiaran blok ini disebut produksi blok, dan validator lain dalam jaringan harus melakukan pemungutan suara mengenai validitas blok tersebut. Validator memeriksa isi blok untuk memastikan transaksi valid dan mematuhi aturan jaringan. Sebuah blok dianggap terkonfirmasi jika menerima suara mayoritas dari bobot taruhan. Proses konfirmasi ini sangat penting untuk menjaga keamanan jaringan Solana dan mencegah pembelanjaan ganda.

Ketika periode waktu pemimpin saat ini berakhir, jaringan tidak akan berhenti atau menunggu konfirmasi blok, tetapi akan berpindah ke periode waktu berikutnya, memberikan kesempatan kepada pemimpin berikutnya untuk menghasilkan blok, dan seluruh proses dimulai dari awal. Pendekatan ini memastikan bahwa jaringan Solana mempertahankan throughput yang tinggi dan tetap tangguh, meskipun beberapa validator mengalami masalah teknis atau offline.

Pertunjukan Solana Tao

Karena jaringan Solana telah mengonfirmasi pemimpin sebelumnya, Solana tidak memerlukan mempool publik untuk menampung transaksi pengguna. Saat pengguna mengirimkan transaksi, server RPC mengubahnya menjadi paket QUIC dan segera meneruskannya ke validator pemimpin. Pendekatan ini disebut Gulf Stream, dan memungkinkan transisi pemimpin yang cepat dan pra-eksekusi transaksi, sehingga mengurangi beban memori pada validator lain.

Data blok Solana dibawa ke ruang kernel, dan kemudian diteruskan ke GPU untuk verifikasi tanda tangan paralel. Setelah tanda tangan diverifikasi di GPU, data akan diteruskan ke CPU untuk eksekusi transaksi, dan akhirnya dikembalikan ke ruang kernel untuk digunakan. ketekunan data. Proses pemrosesan ganda yang membagi data menjadi komponen perangkat keras yang berbeda, yang disebut teknologi pipeline, dapat memaksimalkan pemanfaatan perangkat keras dan mempercepat verifikasi dan transmisi blok.

Karena transaksi Solana secara eksplisit menentukan akun mana yang diakses, penjadwal transaksi Solana dapat memanfaatkan mekanisme penguncian baca-tulis untuk mengeksekusi transaksi secara paralel. Setiap thread pada penjadwal transaksi Solana memiliki antrian terkelola sendiri, memproses transaksi secara berurutan dan independen, upaya untuk mengunci (baca-tulis kunci) akun transaksi dan mengeksekusi transaksi tersebut nantinya. Teknologi eksekusi paralel multi-utas ini disebut Sealevel.

Proses penyebaran blok pemimpin, membagi paket QUIC (opsional menggunakan pengkodean penghapusan) menjadi paket yang lebih kecil dan mendistribusikannya ke validator dalam struktur hierarki. Teknik ini disebut Turbin, dan teknik ini terutama mengurangi penggunaan bandwidth pemimpin.

Selama proses voting, validator menggunakan mekanisme konsensus untuk fork voting. Validator tidak perlu menunggu pemungutan suara untuk melanjutkan produksi blok, melainkan produsen blok terus memantau pemungutan suara baru yang valid dan memasukkannya ke dalam blok saat ini secara real-time; Mekanisme konsensus ini disebut TowerBFT, dan dengan menggabungkan pemungutan suara secara real-time, Solana memastikan proses konsensus yang lebih efisien dan efisien, sehingga meningkatkan kinerja secara keseluruhan.

Untuk proses persistensi blok, Solana mengembangkan database Cloudbreak untuk memaksimalkan efisiensi SSD dengan mempartisi struktur data akun dengan cara tertentu untuk memanfaatkan kecepatan operasi sekuensial dan menggunakan file yang dipetakan memori.

Untuk mengurangi beban validator, Solana mentransfer penyimpanan data dari validator ke jaringan node yang disebut Archiver. Riwayat status transaksi dibagi menjadi banyak bagian dan teknologi pengkodean penghapusan digunakan. Pengarsip digunakan untuk menyimpan bagian-bagian negara, tetapi tidak berpartisipasi dalam konsensus.

Meringkaskan

Visi Solana adalah menjadi blockchain yang perangkat lunaknya berskala dengan kecepatan perangkat keras, sehingga Solana memanfaatkan sepenuhnya semua kemampuan CPU, GPU, dan bandwidth yang tersedia di komputer saat ini untuk memaksimalkan kinerja, dengan kecepatan maksimum teoretis sebesar 65.000 TPS.

Justru karena kinerja dan skalabilitas Solana yang tinggi, Solana telah menjadi platform blockchain pilihan untuk memproses transaksi frekuensi tinggi dan kontrak pintar yang kompleks. Baik itu jalur DePIN/AI di awal tahun atau jalur Meme yang sedang populer baru-baru ini, Solana telah menunjukkan potensi yang sangat besar.

Setelah peluncuran ETF Ethereum, Solana juga menjadi mata uang kripto dengan permintaan terbanyak untuk ETF berikutnya. Meskipun SEC masih mencantumkan Solana sebagai sekuritas, ETF mata uang kripto lainnya tidak akan disetujui dalam jangka pendek. Namun di pasar kripto, konsensus adalah nilai, dan konsensus Solana mungkin tidak bisa dihancurkan seperti Bitcoin dan Ethereum.