Eksekusi Paralel: Generasi Berikutnya dari Blockchain

Lanjutan5/10/2024, 10:43:24 AM
Shoal Research, sebuah lembaga riset enkripsi, menganalisis proyek terkait saat ini di bidang paralel blockchain, termasuk kemajuan Solana (SVM), parallel EVM (Sei, Monad) dan MoveVM (Aptos, Sui, Movement), serta menganalisis tantangan yang dihadapi di bidang ini dan peluang.

Prelude

1.0 Transaksi Blockchain

Blockchain adalah mesin virtual, sebuah model komputasi berbasis perangkat lunak yang berjalan di atas jaringan terdistribusi dari komputer fisik yang dapat diikuti siapa pun namun sangat sulit untuk dikontrol oleh entitas tunggal manapun. Konsep blockchain pertama kali dituangkan dalam tulisan dalam whitepaper Bitcoin yang terkenal karya Satoshi Nakomoto pada tahun 2008, sebagai infrastruktur inti yang memungkinkan pembayaran peer-to-peer yang diamankan secara kriptografis dalam Bitcoin. Transaksi adalah bagi blockchains apa yang log adalah bagi perusahaan media sosial dan internet; mereka berfungsi sebagai catatan aktivitas untuk jaringan tertentu tersebut, perbedaan utamanya adalah bahwa transaksi dalam blockchain bersifat tak tergoyahkan dan seringkali dapat dilihat secara publik.

Tapi apa sebenarnya transaksi itu?

Transaksi di blockchain melibatkan transfer aset digital dari satu alamat pada buku besar terdistribusi ke alamat lain, yang diamankan dengan menggunakan kriptografi kunci publik. Transaksi dapat digunakan untuk transfer peer to peer terdesentralisasi, atau untuk berbagai proses otentikasi dan verifikasi juga.

Contoh transaksi yang dapat diamati oleh siapa pun di penjelajah blockchain seperti SeiTrace

1.1 Bagaimana Transaksi Blockchain Bekerja

Ketika transaksi diinisiasi, yaitu Bob mengirim beberapa token ke Alice, transaksi Bob disiarkan ke jaringan blockchain yang mendasarinya. Kemudian, kelompok node khusus di jaringan mulai memverifikasi dan memvalidasi transaksi sebagai sah. Setelah cukup banyak node ini memverifikasi isi transaksi, transaksi tersebut ditambahkan ke blok bersama transaksi pengguna lainnya. Begitu suatu blok penuh, blok tersebut kemudian ditambahkan ke rantai, maka terbentuklah nama 'blockchain'. Transaksi Bob sekarang menjadi bagian dari buku besar yang aman dan transparan, dan baik ia maupun Alice dapat memverifikasi isinya.

Secara umum, semua transaksi blockchain mengandung metadata yang membantu node-node yang mengoperasikan dan mengamankan jaringan mengidentifikasi dan mengeksekusi serangkaian instruksi dan parameter yang diberikan. Setiap transaksi akan memiliki data input tingkat tinggi oleh pengirim asli, seperti jumlah yang akan ditransfer, alamat tujuan, dan tanda tangan digital untuk mengonfirmasi transaksi, serta berbagai data tingkat rendah yang dibuat dan dilampirkan secara otomatis, meskipun data ini bervariasi berdasarkan jaringan dan desainnya.

Pada akhirnya, namun, proses yang terlibat di balik layar di lapisan jaringan sebelum pelaksanaan transaksi bervariasi berdasarkan desain blockchain.

1.1.1 Mempool

Memory pool, atau mempool, adalah fitur umum dari desain blockchain, diimplementasikan oleh jaringan blockchain tradisional seperti Bitcoin dan Ethereum. Mempool hanyalah zona buffer, atau 'ruang tunggu', untuk transaksi tertunda yang belum ditambahkan ke blok dan dieksekusi.

Untuk lebih memahami, kita bisa menjabarkan siklus hidup transaksi pada blockchain yang menggunakan mempool;

  1. Pengguna menginisiasi dan menandatangani transaksi.
  2. Node khusus yang berpartisipasi dalam jaringan blockchain memverifikasi isi transaksi agar sah dan mengandung parameter yang sesuai.
  3. Setelah diverifikasi, transaksi tersebut diarahkan ke mempool publik bersama transaksi tertunda lainnya.
  4. Pada akhirnya, tergantung pada biaya gas yang dibayar untuk transaksi relatif terhadap transaksi lain di mempool, transaksi tertunda pengguna kami dipilih bersama dengan sekelompok transaksi tertunda lainnya untuk membentuk blok berikutnya pada blockchain. Pada tahap ini, status transaksi kami akan menunjukkan “Berhasil”.
  5. Setelah waktu tertentu atau ambang batas berbasis blok telah berlalu, blok itu sendiri difinalisasi dan transaksi menjadi catatan log yang tidak dapat diubah yang tercatat di blockchain, yang hanya dapat dikompromikan dalam kasus serangan 51%, tugas yang sangat sulit dilakukan secara lain.

1.1.2. Tidak Ada Mempool (Solana)

Penting untuk dicatat bahwa beberapa blockchain, seperti Solana, tidak menggunakan mempool, dan mungkin malah meneruskan transaksi langsung ke produsen blok sebagai cara untuk memungkinkan kecepatan dan throughput tinggi melalui produksi blok yang kontinu.

Mari kita jelajahi siklus hidup transaksi di sebuah blockchain non-mempool:

  1. Pengguna menginisiasi dan menandatangani transaksi untuk aplikasi yang mereka gunakan.
  2. Aplikasi mengarahkan info transaksi ke server Remote Procedure Call (RPC).
  3. Penyedia RPC mengirim transaksi ke produsen blok yang ditunjuk saat ini, dan tiga produsen berikutnya; ini adalah langkah pencegahan jika pemimpin saat ini tidak dapat mengeksekusi transaksi tepat waktu. Solana menggunakan jadwal pemimpin slot yang membantu RPC mengarahkan transaksi lebih mudah.
  4. Produsen blok kemudian mengirimkan transaksi yang ditandatangani ke node konsensus untuk diverifikasi.
  5. Node konsensus memberikan suara untuk memverifikasi isi transaksi, dan setelah selesai, status transaksi kemudian dikirim kembali ke RPC > aplikasi > pengguna sebagai 'berhasil' atau 'gagal'.
  6. Mirip dengan blockchain berbasis mempool, blok itu sendiri difinalisasi setelah waktu tertentu atau ambang batas berbasis blok telah berlalu.

1.2 Eksekusi Berurutan

Blockchain yang lebih lama, yaitu Bitcoin dan Ethereum, menggunakan mekanisme eksekusi berurutan untuk transaksi. Setiap transaksi yang ditambahkan ke blockchain memanggil perubahan dalam keadaan jaringan, dan VM terstruktur untuk hanya memproses satu perubahan keadaan pada satu waktu untuk tujuan keamanan.

Hal ini telah menyebabkan bottleneck yang signifikan untuk throughput jaringan yang mendasarinya, karena jumlah transaksi yang dapat ditambahkan ke blok menjadi terbatas, menyebabkan waktu tunggu yang lebih lama dan lonjakan biaya transaksi yang belum pernah terjadi sebelumnya yang dapat membuat jaringan tidak dapat digunakan pada beberapa saat. Selain itu, model eksekusi berurutan menggunakan komponen hardware dengan sangat tidak efisien, dan oleh karena itu tidak mendapatkan manfaat dari terobosan dalam komputasi, yaitu inti prosesor ganda.

Eksekusi Paralel

2.0 Apa itu Eksekusi Paralel?

Komputasi paralel adalah komponen kunci dari arsitektur komputer yang asal-usulnya dapat ditelusuri sejauh akhir 1950-an, meskipun ideasi dan teorinya bahkan telah dilacak kembali hingga ke1837Secara definisi, komputasi paralel merujuk pada tindakan menggunakan beberapa elemen pemrosesan secara bersamaan untuk menyelesaikan sebuah operasi, di mana tugas yang lebih besar dan kompleks dibagi menjadi yang lebih kecil untuk diselesaikan dengan lebih efisien daripada secara serial.

Awalnya hanya diterapkan dalam sistem komputasi kinerja tinggi, komputasi paralel telah berkembang menjadi paradigma dominan dalam arsitektur komputer saat ini, karena permintaan untuk komputasi telah meningkat secara eksponensial di era internet, diperparah oleh keterbatasan penskalaan frekuensi dalam dekade sebelumnya.

Standar arsitektur ini berlaku untuk blockchain dengan cara yang sama, hanya saja tugas utama yang diselesaikan oleh komputer adalah pemrosesan dan eksekusi transaksi, atau transfer nilai dari smart contract A ke smart contract B, maka disebut eksekusi paralel.

Eksekusi paralel berarti bahwa alih-alih memproses transaksi secara serial, blockchain dapat memproses beberapa transaksi non-konflik secara bersamaan. Hal ini dapat meningkatkan throughput jaringan blockchain secara signifikan, menjadikannya lebih skalabel dan efisien dalam menangani beban aktivitas dan permintaan ruang blok yang lebih tinggi.

Untuk analogi yang lebih sederhana. pertimbangkan efisiensi toko kelontong dengan beberapa jalur untuk pembeli check-out. vs hanya satu untuk semua orang.

Mengapa Pelaksanaan Paralel penting?

Eksekusi paralel dalam blockchain dirancang untuk membuka efisiensi dalam kecepatan dan kinerja jaringan, terutama ketika jaringan mengalami lalu lintas yang lebih tinggi dan permintaan sumber daya. Dalam konteks ekosistem kripto, eksekusi paralel berarti bahwa jika Bob ingin mencetak koleksi NFT populer terbaru, dan Alice ingin membeli memecoin favoritnya, jaringan akan melayani kedua pengguna tanpa mengorbankan kualitas kinerja dan pengalaman pengguna.

Meskipun ini mungkin terdengar hanya sebagai fitur kualitas hidup yang intuitif, bukaan dalam kinerja jaringan yang diaktifkan oleh eksekusi paralel memberikan jalan bagi pengembangan kasus penggunaan dan aplikasi baru dan inovatif yang dapat memanfaatkan latensi rendah dan volume tinggi, yang pada dasarnya membentuk dasar untuk memasukkan kohort pengguna massal berikutnya ke dalam ekosistem kripto.

Bagaimana Cara Kerja Eksekusi Paralel?

Meskipun premis eksekusi paralel relatif mudah dipahami, nuansa dalam desain dari blockchain yang mendasarinya memengaruhi bagaimana proses eksekusi paralel itu sendiri berjalan. Fitur paling relevan dalam merancang blockchain dengan eksekusi paralel adalah kemampuan transaksi untuk mengakses status jaringan yang mendasarinya, termasuk saldo akun, penyimpanan, dan kontrak pintar.

Eksekusi paralel pada blockchain dapat dikategorikan sebagai deterministik atau optimis. Eksekusi paralel deterministik, digunakan oleh blockchain seperti Solana, secara inheren memerlukan transaksi untuk mendeklarasikan semua ketergantungan memori di muka, yaitu bagian mana dari status global yang ingin mereka akses di muka. Meskipun langkah ini menciptakan overhead tambahan bagi pengembang, secara lebih luas hal ini memungkinkan jaringan untuk menyortir dan mengidentifikasi transaksi yang tidak bertentangan sebelum eksekusi, menciptakan sistem yang dioptimalkan yang dapat diprediksi dan efisien. Sebaliknya, eksekusi paralel optimis terstruktur untuk memproses semua transaksi secara paralel, beroperasi dengan asumsi inheren bahwa tidak ada konflik. Hal ini memungkinkan blockchain yang mendasarinya untuk memberikan eksekusi transaksi yang lebih cepat, meskipun dengan biaya re-eksekusi potensial setelahnya dalam kasus konflik. Jika dua transaksi yang bertentangan ditemukan, sistem kemudian dapat memproses dan mengeksekusinya kembali baik secara paralel maupun secara berurutan.

Untuk lebih memahami implikasi dari kerumitan desain ini, akan membantu untuk menganalisis eksekusi paralel melalui sudut pandang tim yang mendorong batas eksekusi paralel saat ini.

Keadaan Eksekusi Paralel Hari Ini

Untuk lebih memahami implikasi dari kerumitan desain ini, dapat membantu menganalisis eksekusi paralel melalui sudut pandang tim yang mendorong batas eksekusi paralel saat ini.

3.1 Mesin Virtual Solana (SVM)

Solana adalah jaringan blockchain pertama yang dirancang sekitar eksekusi paralel, terinspirasi oleh pengalaman pendiri Anatoly Yakovenko di industri telekomunikasi sebelumnya. Solana bertujuan untuk menyediakan platform pengembang yang berjalan sesuai dengan kecepatan fisika memungkinkan, oleh karena itu kecepatan dan efisiensi yang diungkapkan oleh komputasi paralel adalah pilihan desain yang sederhana dan intuitif.

Komponen penting untuk memungkinkan kecepatan dan throughput tinggi Solana adalah Sealevel, lingkungan runtime kontrak pintar paralel jaringan. Berbeda dengan lingkungan berbasis EVM dan WASM, Sealevel menggunakan arsitektur multi-threaded, yang berarti dapat memproses beberapa transaksi secara bersamaan sejauh kapasitas inti validator.

Kunci untuk memungkinkan eksekusi paralel Solana adalah bahwa ketika transaksi diaktifkan, jaringan akan menugaskan daftar instruksi untuk transaksi tersebut dieksekusi, khususnya akun dan status mana yang akan diakses dan perubahan apa yang akan dilakukan - ini adalah kunci untuk menentukan transaksi mana yang tidak konflik dan dapat dieksekusi secara bersamaan, serta memungkinkan transaksi yang mencoba mengakses status yang sama melakukan hal tersebut secara bersamaan.

Pertimbangkan efisiensi yang diberikan oleh label pada sistem bagasi yang diperiksa di bandara.

Solana juga menggunakan Cloudbreak, akunDB kustomnya sendiri, untuk menyimpan dan mengelola data status guna memungkinkan pembacaan dan penulisan transaksi bersamaan. Cloudbreak, dioptimalkan untuk eksekusi paralel, dapat diskalakan secara horizontal untuk mendistribusikan dan mengelola data status di sejumlah node.

Berkat arsitektur paralelnya, Solana dapat menangani sejumlah besar transaksi dan tetap menjalankan dengan cepat, memberikan finalitas hampir instan pada transaksi. Solana menangani antara 2.000 dan 10.000 transaksi per detik (TPS) rata-rata saat ini. Selain itu, kasus penggunaan untuk SVM secara perlahan namun pasti berkembang, saat tim seperti Eclipse meluncurkan infrastruktur Layer 2 yang bertujuan untuk memanfaatkan SVM sebagai lingkungan eksekusi.

3.2 Parallel EVM

Parallel EVM menggambarkan lingkungan eksekusi baru untuk blockchain yang bertujuan untuk membawa "yang terbaik dari kedua dunia" dari desain Solana dan Ethereum, dengan kecepatan dan kinerja Solana, serta keamanan dan likuiditas Ethereum. Dengan memproses transaksi secara paralel daripada secara berurutan sesuai desain EVM tradisional, parallel EVM memungkinkan pengembang untuk membangun aplikasi di jaringan yang sangat berkinerja sambil dapat memanfaatkan koneksi ke likuiditas EVM dan alat pengembang.

3.2.1 Jaringan Sei

Sei Network adalah blockchain Layer 1 sumber terbuka yang kompatibel dengan EVM, yang menghosting berbagai aplikasi terdesentralisasi yang dibangun di sekitar kinerja tinggi. Sei dibangun untuk memberikan kecepatan tinggi dengan biaya rendah bagi pengguna dan pengembang, dan eksekusi paralel adalah komponen kunci untuk memungkinkan kinerja dan UX ini. Saat ini, Sei memberikan waktu konfirmasi blok 390ms dan telah memproses lebih dari 1,9 miliar transaksi di mainnet pacific-nya.

Pada awalnya, Sei menggunakan model eksekusi paralel deterministik, di mana kontrak pintar menyatakan akses keadaan yang dibutuhkan mereka sebelumnya agar sistem dapat menjalankan transaksi yang tidak konflik secara bersamaan. Dengan dimulainya upgrade V2 mereka, Sei beralih ke model paralel optimis, artinya semua transaksi akan diproses secara paralel setelah diserahkan ke jaringan (tahap eksekusi), dan kemudian akan ditinjau untuk informasi yang konflik dengan transaksi sebelumnya (tahap validasi). Pada saat dua atau lebih transaksi yang konflik, yaitu transaksi yang mencoba mengakses keadaan jaringan yang sama, Sei mengidentifikasi titik konflik ini dan kemudian menjalankan ulang transaksi tersebut baik secara paralel atau berurutan tergantung pada sifat konfliknya.

Untuk menyimpan dan memelihara data transaksi, Sei juga akan memperkenalkan SeiDB, sebuah database kustom yang bertujuan untuk memperbaiki kekurangan dalam v1 dengan mengoptimalkan eksekusi paralel. SeiDB bertujuan untuk mengurangi overhead penyimpanan data yang berlebihan dan mempertahankan penggunaan disk yang efisien untuk performa jaringan yang lebih baik. V2 mengurangi jumlah metadata yang diperlukan untuk pelacakan dan penyimpanan, serta memungkinkan pencatatan tertulis sebelumnya untuk membantu pemulihan data dalam kejadian kegagalan.

Terakhir, Sei juga baru-baru ini mengumumkan peluncuran Parallel Stack-nya, sebuah kerangka kerja sumber terbuka untuk memungkinkan solusi penskalaan Layer 2, yaitu rollups, untuk menggunakan dan mendapatkan manfaat dari eksekusi paralel.

3.2.2 Monad

Monad adalah blockchain Layer 1 paralel-EVM yang akan datang yang membawa keterkaitan bytecode dan kompatibilitas RPC penuh untuk aplikasi dan infrastruktur Ethereum. Melalui sejumlah implementasi teknis inovatif, Monad bertujuan untuk memberikan pengalaman yang lebih interaktif daripada blockchain yang ada sambil menjaga biaya transaksi yang lebih rendah dengan mengoptimalkan kinerja dan portabilitas, dengan waktu blok 1 detik dan finalitas dengan hingga 10.000 TPS.

Monad menerapkan eksekusi paralel dan pipelining superscalar untuk mengoptimalkan kecepatan dan throughput transaksi. Serupa dengan Sei v2, Monad akan menggunakan model eksekusi optimis, yang berarti jaringan mulai mengeksekusi semua transaksi masuk secara bersamaan, lalu menganalisis dan memvalidasi transaksi untuk mencari konflik dan mengeksekusi ulang sesuai kebutuhan, dengan tujuan akhir bahwa hasilnya akan identik jika transaksi dieksekusi secara berurutan.

Penting untuk dicatat bahwa dalam menjaga sinkronisasi dengan Ethereum, Monad memesan transaksi dalam blok secara berurutan, dengan setiap transaksi diperbarui secara berurutan.

Untuk menjaga dan mengakses data blockchain dengan lebih efisien daripada apa yang ditawarkan klien Ethereum saat ini, Monad menciptakan MonadDB khususnya sendiri, yang dibangun secara native untuk blockchain. Monad DB memanfaatkan fitur kernel Linux canggih untuk operasi disk asinkron yang efisien, menghilangkan batasan akses input/output sinkron. MonadDB menawarkan akses input/output asinkron (async I/O), fitur utama dalam memungkinkan eksekusi paralel, di mana sistem dapat mulai memproses transaksi berikutnya sambil menunggu untuk membaca status untuk transaksi sebelumnya.

Untuk analogi yang sederhana, pertimbangkan memasak hidangan berbagai macam (spaghetti dengan bakso). Langkah-langkah yang terlibat adalah 1) menyiapkan saus, 2) memasak bakso, dan c) memasak pasta. Seorang koki yang efisien akan mulai dengan merebus air untuk pasta, kemudian menyiapkan bahan untuk saus, kemudian melemparkan pasta ke dalam air yang sudah mendidih, kemudian memasak saus, dan akhirnya bakso, daripada melakukan setiap langkah satu per satu, menyelesaikan satu tugas secara menyeluruh sebelum melangkah ke langkah berikutnya.

3.3 Gerakan

Move adalah bahasa pemrograman yang awalnya dikembangkan oleh tim Facebook pada tahun 2019 untuk proyek Diem yang kini sudah tidak aktif. Move dirancang untuk menangani data kontrak pintar dan transaksi secara aman, menghilangkan vektor serangan yang ada pada bahasa lain seperti serangan reentrancy.

MoveVM berfungsi sebagai lingkungan eksekusi asli untuk blockchain berbasis Move, memanfaatkan paralelisasi untuk memberikan kecepatan eksekusi transaksi yang lebih cepat dan efisiensi keseluruhan yang lebih besar.

3.3.1 Aptos

Aptos adalah blockchain Layer 1 berbasis Move yang dikembangkan oleh anggota proyek Diem sebelumnya, yang menerapkan eksekusi paralel untuk memberikan lingkungan kinerja tinggi bagi pengembang aplikasi. Aptos menggunakan Block-STM, implementasi modifikasi dari mekanisme kontrol konkurensi Software Transactional Memory (STM).

Block-STM adalah mesin eksekusi paralel multithread yang memungkinkan eksekusi paralel yang optimis. Transaksi sudah diurutkan sebelumnya dan disusun secara strategis di dalam blok, yang merupakan kunci untuk menyelesaikan konflik secara efisien dan mengeksekusi ulang transaksi tersebut. Penelitian yang dilakukan oleh Aptos menemukan bahwa hingga 160K TPS secara teoritis dapat didukung menggunakan paralelisasi Block-STM.

3.3.2 Sui

Mirip dengan Aptos, Sui adalah blockchain lapisan 1 yang dikembangkan oleh mantan anggota proyek Diem, yang menggunakan bahasa Move. Namun, Sui menggunakan implementasi Move kustom yang mengubah model penyimpanan dan izin aset dari desain asli Diem. Secara khusus, ini memungkinkan Sui untuk menggunakan model penyimpanan status untuk mewakili transaksi independen sebagai objek. Setiap objek memiliki ID unik dalam lingkungan eksekusi Sui, dan dengan melakukan hal ini, sistem dapat dengan mudah mengidentifikasi transaksi yang tidak bertentangan dan memprosesnya secara paralel.

Mirip dengan Solana, Sui menerapkan eksekusi paralel yang bersifat deterministik, yang memerlukan transaksi untuk menyatakan akun mana yang perlu diakses sebelumnya.

3.3.3 Gerakan Laboratorium

Apa itu Gerakan?

Gerakan sedang membangun rangkaian alat pengembang dan layanan infrastruktur blockchain untuk memungkinkan pengembang dengan mudah mengakses manfaat dari membangun di Move. Beroperasi sebagai penyedia layanan eksekusi-sebagai-layanan mirip AWS untuk pengembang Move, Gerakan mengimplementasikan paralelisasi sebagai fitur desain inti untuk memungkinkan throughput yang lebih tinggi dan efisiensi jaringan secara keseluruhan yang lebih besar. MoveVM adalah lingkungan eksekusi modular yang memungkinkan jaringan blockchain untuk memperluas dan menyesuaikan kemampuan pemrosesan transaksi mereka sesuai kebutuhan untuk dapat mendukung peningkatan volume transaksi, memperkuat kemampuan mereka dalam memproses dan mengeksekusi transaksi secara paralel.

Arsitektur MoveVM

Gerakan juga akan meluncurkan M2, sebuah ZK-rollup yang akan dapat beroperasi dengan klien EVM dan Move sama. M2 akan mewarisi mesin paralelisasi Block-STM, dan diharapkan dapat memberikan puluhan ribu TPS sebagai hasilnya.

Pikiran Penutup

4.1 Tantangan Untuk Sistem Paralel Hari Ini

Beberapa pertanyaan penting dan pertimbangan yang perlu dipikirkan mengenai pengembangan blockchain paralel;

  • Apa tradeoff yang dilakukan jaringan untuk memungkinkan kinerja yang lebih baik melalui eksekusi paralel?
    • Jumlah validator yang lebih sedikit yang mengamankan jaringan memungkinkan kecepatan verifikasi dan eksekusi yang lebih cepat, tetapi apakah hal ini mengorbankan keamanan blockchain sehingga menjadi lebih mudah bagi validator untuk berkolusi melawan jaringan?
    • Apakah ada sejumlah validator yang berlokasi di tempat yang sama? Ini adalah strategi umum untuk meminimalkan laten dalam kedua sistem kripto dan non-kripto, tetapi apa yang terjadi pada jaringan jika pusat data tertentu tersebut dikompromikan?
  • Untuk sistem paralel yang optimis, apakah proses mengeksekusi ulang transaksi yang tidak valid menciptakan bottleneck seiring dengan meningkatnya skala jaringan? Bagaimana efisiensi ini diuji dan dievaluasi?

Secara umum, blockchain paralel menghadapi risiko ketidaksesuaian ledger, yaitu pengeluaran ganda dan perubahan urutan transaksi (memang, ini adalah keuntungan utama dari eksekusi sekuensial). Paralelisasi deterministik mengatasi hal ini dengan menciptakan sistem pelabelan internal untuk transaksi pada blockchain yang mendasarinya. Blockchain yang menerapkan pemrosesan optimis harus memastikan mekanisme yang mereka gunakan untuk memvalidasi dan mengeksekusi ulang transaksi adalah aman dan fungsional, dan kompromi yang dibuat untuk kinerja dapat diimplementasikan dengan wajar.

4.2 Prospek Masa Depan / Peluang

Sejarah komputer telah mengajarkan kita bahwa sistem paralel cenderung lebih efisien dan dapat diskalakan dari waktu ke waktu daripada sistem sekuensial. Munculnya blockchain paralel pasca-Solana menekankan bahwa gagasan ini berlaku juga untuk infrastruktur kripto. Bahkan Vitalik juga telah menyebutkan paralelisasisebagai salah satu solusi kunci potensial untuk meningkatkan skalabilitas EVM rollups belakangan ini. Secara umum, pertumbuhan adopsi crypto/blockchain menuntut sistem yang lebih optimal daripada yang tersedia saat ini, termasuk blockchain paralel. Kesulitan jaringan Solana baru-baru ini telah menyoroti bahwa masih ada banyak ruang untuk perbaikan dalam pengembangan blockchain paralel. Semakin banyak tim yang berusaha mendorong batas-batas frontier onchain dan mendatangkan kohort pengguna dan adopsi berikutnya ke aplikasi dan ekosistem asli blockchain, model eksekusi paralel menyediakan kerangka intuitif untuk membangun sistem yang dapat menangani aktivitas jaringan dalam skala yang sebanding dengan perusahaan Web2 dengan mudah.

Daftar Pustaka

Penafian:

  1. Artikel ini diambil dari [gerombolanTeruskan Judul Asli 'Eksekusi Paralel: Generasi Berikutnya dari Blockchain', Semua hak cipta dimiliki oleh penulis asliPAUL TIMOFEEV, MIKE JIN, DAN GABE MENGINJAK-INJAK]. Jika ada keberatan terhadap cetak ulang ini, silakan hubungi Gate Belajartim, dan mereka akan menanganinya dengan cepat.

  2. Penyangkalan Tanggung Jawab: Pandangan dan opini yang terdapat dalam artikel ini semata-mata milik penulis dan tidak merupakan saran investasi apa pun.

  3. Terjemahan artikel ke bahasa lain dilakukan oleh tim Gate Learn. Kecuali disebutkan, menyalin, mendistribusikan, atau menjiplak artikel yang diterjemahkan dilarang.

Eksekusi Paralel: Generasi Berikutnya dari Blockchain

Lanjutan5/10/2024, 10:43:24 AM
Shoal Research, sebuah lembaga riset enkripsi, menganalisis proyek terkait saat ini di bidang paralel blockchain, termasuk kemajuan Solana (SVM), parallel EVM (Sei, Monad) dan MoveVM (Aptos, Sui, Movement), serta menganalisis tantangan yang dihadapi di bidang ini dan peluang.

Prelude

1.0 Transaksi Blockchain

Blockchain adalah mesin virtual, sebuah model komputasi berbasis perangkat lunak yang berjalan di atas jaringan terdistribusi dari komputer fisik yang dapat diikuti siapa pun namun sangat sulit untuk dikontrol oleh entitas tunggal manapun. Konsep blockchain pertama kali dituangkan dalam tulisan dalam whitepaper Bitcoin yang terkenal karya Satoshi Nakomoto pada tahun 2008, sebagai infrastruktur inti yang memungkinkan pembayaran peer-to-peer yang diamankan secara kriptografis dalam Bitcoin. Transaksi adalah bagi blockchains apa yang log adalah bagi perusahaan media sosial dan internet; mereka berfungsi sebagai catatan aktivitas untuk jaringan tertentu tersebut, perbedaan utamanya adalah bahwa transaksi dalam blockchain bersifat tak tergoyahkan dan seringkali dapat dilihat secara publik.

Tapi apa sebenarnya transaksi itu?

Transaksi di blockchain melibatkan transfer aset digital dari satu alamat pada buku besar terdistribusi ke alamat lain, yang diamankan dengan menggunakan kriptografi kunci publik. Transaksi dapat digunakan untuk transfer peer to peer terdesentralisasi, atau untuk berbagai proses otentikasi dan verifikasi juga.

Contoh transaksi yang dapat diamati oleh siapa pun di penjelajah blockchain seperti SeiTrace

1.1 Bagaimana Transaksi Blockchain Bekerja

Ketika transaksi diinisiasi, yaitu Bob mengirim beberapa token ke Alice, transaksi Bob disiarkan ke jaringan blockchain yang mendasarinya. Kemudian, kelompok node khusus di jaringan mulai memverifikasi dan memvalidasi transaksi sebagai sah. Setelah cukup banyak node ini memverifikasi isi transaksi, transaksi tersebut ditambahkan ke blok bersama transaksi pengguna lainnya. Begitu suatu blok penuh, blok tersebut kemudian ditambahkan ke rantai, maka terbentuklah nama 'blockchain'. Transaksi Bob sekarang menjadi bagian dari buku besar yang aman dan transparan, dan baik ia maupun Alice dapat memverifikasi isinya.

Secara umum, semua transaksi blockchain mengandung metadata yang membantu node-node yang mengoperasikan dan mengamankan jaringan mengidentifikasi dan mengeksekusi serangkaian instruksi dan parameter yang diberikan. Setiap transaksi akan memiliki data input tingkat tinggi oleh pengirim asli, seperti jumlah yang akan ditransfer, alamat tujuan, dan tanda tangan digital untuk mengonfirmasi transaksi, serta berbagai data tingkat rendah yang dibuat dan dilampirkan secara otomatis, meskipun data ini bervariasi berdasarkan jaringan dan desainnya.

Pada akhirnya, namun, proses yang terlibat di balik layar di lapisan jaringan sebelum pelaksanaan transaksi bervariasi berdasarkan desain blockchain.

1.1.1 Mempool

Memory pool, atau mempool, adalah fitur umum dari desain blockchain, diimplementasikan oleh jaringan blockchain tradisional seperti Bitcoin dan Ethereum. Mempool hanyalah zona buffer, atau 'ruang tunggu', untuk transaksi tertunda yang belum ditambahkan ke blok dan dieksekusi.

Untuk lebih memahami, kita bisa menjabarkan siklus hidup transaksi pada blockchain yang menggunakan mempool;

  1. Pengguna menginisiasi dan menandatangani transaksi.
  2. Node khusus yang berpartisipasi dalam jaringan blockchain memverifikasi isi transaksi agar sah dan mengandung parameter yang sesuai.
  3. Setelah diverifikasi, transaksi tersebut diarahkan ke mempool publik bersama transaksi tertunda lainnya.
  4. Pada akhirnya, tergantung pada biaya gas yang dibayar untuk transaksi relatif terhadap transaksi lain di mempool, transaksi tertunda pengguna kami dipilih bersama dengan sekelompok transaksi tertunda lainnya untuk membentuk blok berikutnya pada blockchain. Pada tahap ini, status transaksi kami akan menunjukkan “Berhasil”.
  5. Setelah waktu tertentu atau ambang batas berbasis blok telah berlalu, blok itu sendiri difinalisasi dan transaksi menjadi catatan log yang tidak dapat diubah yang tercatat di blockchain, yang hanya dapat dikompromikan dalam kasus serangan 51%, tugas yang sangat sulit dilakukan secara lain.

1.1.2. Tidak Ada Mempool (Solana)

Penting untuk dicatat bahwa beberapa blockchain, seperti Solana, tidak menggunakan mempool, dan mungkin malah meneruskan transaksi langsung ke produsen blok sebagai cara untuk memungkinkan kecepatan dan throughput tinggi melalui produksi blok yang kontinu.

Mari kita jelajahi siklus hidup transaksi di sebuah blockchain non-mempool:

  1. Pengguna menginisiasi dan menandatangani transaksi untuk aplikasi yang mereka gunakan.
  2. Aplikasi mengarahkan info transaksi ke server Remote Procedure Call (RPC).
  3. Penyedia RPC mengirim transaksi ke produsen blok yang ditunjuk saat ini, dan tiga produsen berikutnya; ini adalah langkah pencegahan jika pemimpin saat ini tidak dapat mengeksekusi transaksi tepat waktu. Solana menggunakan jadwal pemimpin slot yang membantu RPC mengarahkan transaksi lebih mudah.
  4. Produsen blok kemudian mengirimkan transaksi yang ditandatangani ke node konsensus untuk diverifikasi.
  5. Node konsensus memberikan suara untuk memverifikasi isi transaksi, dan setelah selesai, status transaksi kemudian dikirim kembali ke RPC > aplikasi > pengguna sebagai 'berhasil' atau 'gagal'.
  6. Mirip dengan blockchain berbasis mempool, blok itu sendiri difinalisasi setelah waktu tertentu atau ambang batas berbasis blok telah berlalu.

1.2 Eksekusi Berurutan

Blockchain yang lebih lama, yaitu Bitcoin dan Ethereum, menggunakan mekanisme eksekusi berurutan untuk transaksi. Setiap transaksi yang ditambahkan ke blockchain memanggil perubahan dalam keadaan jaringan, dan VM terstruktur untuk hanya memproses satu perubahan keadaan pada satu waktu untuk tujuan keamanan.

Hal ini telah menyebabkan bottleneck yang signifikan untuk throughput jaringan yang mendasarinya, karena jumlah transaksi yang dapat ditambahkan ke blok menjadi terbatas, menyebabkan waktu tunggu yang lebih lama dan lonjakan biaya transaksi yang belum pernah terjadi sebelumnya yang dapat membuat jaringan tidak dapat digunakan pada beberapa saat. Selain itu, model eksekusi berurutan menggunakan komponen hardware dengan sangat tidak efisien, dan oleh karena itu tidak mendapatkan manfaat dari terobosan dalam komputasi, yaitu inti prosesor ganda.

Eksekusi Paralel

2.0 Apa itu Eksekusi Paralel?

Komputasi paralel adalah komponen kunci dari arsitektur komputer yang asal-usulnya dapat ditelusuri sejauh akhir 1950-an, meskipun ideasi dan teorinya bahkan telah dilacak kembali hingga ke1837Secara definisi, komputasi paralel merujuk pada tindakan menggunakan beberapa elemen pemrosesan secara bersamaan untuk menyelesaikan sebuah operasi, di mana tugas yang lebih besar dan kompleks dibagi menjadi yang lebih kecil untuk diselesaikan dengan lebih efisien daripada secara serial.

Awalnya hanya diterapkan dalam sistem komputasi kinerja tinggi, komputasi paralel telah berkembang menjadi paradigma dominan dalam arsitektur komputer saat ini, karena permintaan untuk komputasi telah meningkat secara eksponensial di era internet, diperparah oleh keterbatasan penskalaan frekuensi dalam dekade sebelumnya.

Standar arsitektur ini berlaku untuk blockchain dengan cara yang sama, hanya saja tugas utama yang diselesaikan oleh komputer adalah pemrosesan dan eksekusi transaksi, atau transfer nilai dari smart contract A ke smart contract B, maka disebut eksekusi paralel.

Eksekusi paralel berarti bahwa alih-alih memproses transaksi secara serial, blockchain dapat memproses beberapa transaksi non-konflik secara bersamaan. Hal ini dapat meningkatkan throughput jaringan blockchain secara signifikan, menjadikannya lebih skalabel dan efisien dalam menangani beban aktivitas dan permintaan ruang blok yang lebih tinggi.

Untuk analogi yang lebih sederhana. pertimbangkan efisiensi toko kelontong dengan beberapa jalur untuk pembeli check-out. vs hanya satu untuk semua orang.

Mengapa Pelaksanaan Paralel penting?

Eksekusi paralel dalam blockchain dirancang untuk membuka efisiensi dalam kecepatan dan kinerja jaringan, terutama ketika jaringan mengalami lalu lintas yang lebih tinggi dan permintaan sumber daya. Dalam konteks ekosistem kripto, eksekusi paralel berarti bahwa jika Bob ingin mencetak koleksi NFT populer terbaru, dan Alice ingin membeli memecoin favoritnya, jaringan akan melayani kedua pengguna tanpa mengorbankan kualitas kinerja dan pengalaman pengguna.

Meskipun ini mungkin terdengar hanya sebagai fitur kualitas hidup yang intuitif, bukaan dalam kinerja jaringan yang diaktifkan oleh eksekusi paralel memberikan jalan bagi pengembangan kasus penggunaan dan aplikasi baru dan inovatif yang dapat memanfaatkan latensi rendah dan volume tinggi, yang pada dasarnya membentuk dasar untuk memasukkan kohort pengguna massal berikutnya ke dalam ekosistem kripto.

Bagaimana Cara Kerja Eksekusi Paralel?

Meskipun premis eksekusi paralel relatif mudah dipahami, nuansa dalam desain dari blockchain yang mendasarinya memengaruhi bagaimana proses eksekusi paralel itu sendiri berjalan. Fitur paling relevan dalam merancang blockchain dengan eksekusi paralel adalah kemampuan transaksi untuk mengakses status jaringan yang mendasarinya, termasuk saldo akun, penyimpanan, dan kontrak pintar.

Eksekusi paralel pada blockchain dapat dikategorikan sebagai deterministik atau optimis. Eksekusi paralel deterministik, digunakan oleh blockchain seperti Solana, secara inheren memerlukan transaksi untuk mendeklarasikan semua ketergantungan memori di muka, yaitu bagian mana dari status global yang ingin mereka akses di muka. Meskipun langkah ini menciptakan overhead tambahan bagi pengembang, secara lebih luas hal ini memungkinkan jaringan untuk menyortir dan mengidentifikasi transaksi yang tidak bertentangan sebelum eksekusi, menciptakan sistem yang dioptimalkan yang dapat diprediksi dan efisien. Sebaliknya, eksekusi paralel optimis terstruktur untuk memproses semua transaksi secara paralel, beroperasi dengan asumsi inheren bahwa tidak ada konflik. Hal ini memungkinkan blockchain yang mendasarinya untuk memberikan eksekusi transaksi yang lebih cepat, meskipun dengan biaya re-eksekusi potensial setelahnya dalam kasus konflik. Jika dua transaksi yang bertentangan ditemukan, sistem kemudian dapat memproses dan mengeksekusinya kembali baik secara paralel maupun secara berurutan.

Untuk lebih memahami implikasi dari kerumitan desain ini, akan membantu untuk menganalisis eksekusi paralel melalui sudut pandang tim yang mendorong batas eksekusi paralel saat ini.

Keadaan Eksekusi Paralel Hari Ini

Untuk lebih memahami implikasi dari kerumitan desain ini, dapat membantu menganalisis eksekusi paralel melalui sudut pandang tim yang mendorong batas eksekusi paralel saat ini.

3.1 Mesin Virtual Solana (SVM)

Solana adalah jaringan blockchain pertama yang dirancang sekitar eksekusi paralel, terinspirasi oleh pengalaman pendiri Anatoly Yakovenko di industri telekomunikasi sebelumnya. Solana bertujuan untuk menyediakan platform pengembang yang berjalan sesuai dengan kecepatan fisika memungkinkan, oleh karena itu kecepatan dan efisiensi yang diungkapkan oleh komputasi paralel adalah pilihan desain yang sederhana dan intuitif.

Komponen penting untuk memungkinkan kecepatan dan throughput tinggi Solana adalah Sealevel, lingkungan runtime kontrak pintar paralel jaringan. Berbeda dengan lingkungan berbasis EVM dan WASM, Sealevel menggunakan arsitektur multi-threaded, yang berarti dapat memproses beberapa transaksi secara bersamaan sejauh kapasitas inti validator.

Kunci untuk memungkinkan eksekusi paralel Solana adalah bahwa ketika transaksi diaktifkan, jaringan akan menugaskan daftar instruksi untuk transaksi tersebut dieksekusi, khususnya akun dan status mana yang akan diakses dan perubahan apa yang akan dilakukan - ini adalah kunci untuk menentukan transaksi mana yang tidak konflik dan dapat dieksekusi secara bersamaan, serta memungkinkan transaksi yang mencoba mengakses status yang sama melakukan hal tersebut secara bersamaan.

Pertimbangkan efisiensi yang diberikan oleh label pada sistem bagasi yang diperiksa di bandara.

Solana juga menggunakan Cloudbreak, akunDB kustomnya sendiri, untuk menyimpan dan mengelola data status guna memungkinkan pembacaan dan penulisan transaksi bersamaan. Cloudbreak, dioptimalkan untuk eksekusi paralel, dapat diskalakan secara horizontal untuk mendistribusikan dan mengelola data status di sejumlah node.

Berkat arsitektur paralelnya, Solana dapat menangani sejumlah besar transaksi dan tetap menjalankan dengan cepat, memberikan finalitas hampir instan pada transaksi. Solana menangani antara 2.000 dan 10.000 transaksi per detik (TPS) rata-rata saat ini. Selain itu, kasus penggunaan untuk SVM secara perlahan namun pasti berkembang, saat tim seperti Eclipse meluncurkan infrastruktur Layer 2 yang bertujuan untuk memanfaatkan SVM sebagai lingkungan eksekusi.

3.2 Parallel EVM

Parallel EVM menggambarkan lingkungan eksekusi baru untuk blockchain yang bertujuan untuk membawa "yang terbaik dari kedua dunia" dari desain Solana dan Ethereum, dengan kecepatan dan kinerja Solana, serta keamanan dan likuiditas Ethereum. Dengan memproses transaksi secara paralel daripada secara berurutan sesuai desain EVM tradisional, parallel EVM memungkinkan pengembang untuk membangun aplikasi di jaringan yang sangat berkinerja sambil dapat memanfaatkan koneksi ke likuiditas EVM dan alat pengembang.

3.2.1 Jaringan Sei

Sei Network adalah blockchain Layer 1 sumber terbuka yang kompatibel dengan EVM, yang menghosting berbagai aplikasi terdesentralisasi yang dibangun di sekitar kinerja tinggi. Sei dibangun untuk memberikan kecepatan tinggi dengan biaya rendah bagi pengguna dan pengembang, dan eksekusi paralel adalah komponen kunci untuk memungkinkan kinerja dan UX ini. Saat ini, Sei memberikan waktu konfirmasi blok 390ms dan telah memproses lebih dari 1,9 miliar transaksi di mainnet pacific-nya.

Pada awalnya, Sei menggunakan model eksekusi paralel deterministik, di mana kontrak pintar menyatakan akses keadaan yang dibutuhkan mereka sebelumnya agar sistem dapat menjalankan transaksi yang tidak konflik secara bersamaan. Dengan dimulainya upgrade V2 mereka, Sei beralih ke model paralel optimis, artinya semua transaksi akan diproses secara paralel setelah diserahkan ke jaringan (tahap eksekusi), dan kemudian akan ditinjau untuk informasi yang konflik dengan transaksi sebelumnya (tahap validasi). Pada saat dua atau lebih transaksi yang konflik, yaitu transaksi yang mencoba mengakses keadaan jaringan yang sama, Sei mengidentifikasi titik konflik ini dan kemudian menjalankan ulang transaksi tersebut baik secara paralel atau berurutan tergantung pada sifat konfliknya.

Untuk menyimpan dan memelihara data transaksi, Sei juga akan memperkenalkan SeiDB, sebuah database kustom yang bertujuan untuk memperbaiki kekurangan dalam v1 dengan mengoptimalkan eksekusi paralel. SeiDB bertujuan untuk mengurangi overhead penyimpanan data yang berlebihan dan mempertahankan penggunaan disk yang efisien untuk performa jaringan yang lebih baik. V2 mengurangi jumlah metadata yang diperlukan untuk pelacakan dan penyimpanan, serta memungkinkan pencatatan tertulis sebelumnya untuk membantu pemulihan data dalam kejadian kegagalan.

Terakhir, Sei juga baru-baru ini mengumumkan peluncuran Parallel Stack-nya, sebuah kerangka kerja sumber terbuka untuk memungkinkan solusi penskalaan Layer 2, yaitu rollups, untuk menggunakan dan mendapatkan manfaat dari eksekusi paralel.

3.2.2 Monad

Monad adalah blockchain Layer 1 paralel-EVM yang akan datang yang membawa keterkaitan bytecode dan kompatibilitas RPC penuh untuk aplikasi dan infrastruktur Ethereum. Melalui sejumlah implementasi teknis inovatif, Monad bertujuan untuk memberikan pengalaman yang lebih interaktif daripada blockchain yang ada sambil menjaga biaya transaksi yang lebih rendah dengan mengoptimalkan kinerja dan portabilitas, dengan waktu blok 1 detik dan finalitas dengan hingga 10.000 TPS.

Monad menerapkan eksekusi paralel dan pipelining superscalar untuk mengoptimalkan kecepatan dan throughput transaksi. Serupa dengan Sei v2, Monad akan menggunakan model eksekusi optimis, yang berarti jaringan mulai mengeksekusi semua transaksi masuk secara bersamaan, lalu menganalisis dan memvalidasi transaksi untuk mencari konflik dan mengeksekusi ulang sesuai kebutuhan, dengan tujuan akhir bahwa hasilnya akan identik jika transaksi dieksekusi secara berurutan.

Penting untuk dicatat bahwa dalam menjaga sinkronisasi dengan Ethereum, Monad memesan transaksi dalam blok secara berurutan, dengan setiap transaksi diperbarui secara berurutan.

Untuk menjaga dan mengakses data blockchain dengan lebih efisien daripada apa yang ditawarkan klien Ethereum saat ini, Monad menciptakan MonadDB khususnya sendiri, yang dibangun secara native untuk blockchain. Monad DB memanfaatkan fitur kernel Linux canggih untuk operasi disk asinkron yang efisien, menghilangkan batasan akses input/output sinkron. MonadDB menawarkan akses input/output asinkron (async I/O), fitur utama dalam memungkinkan eksekusi paralel, di mana sistem dapat mulai memproses transaksi berikutnya sambil menunggu untuk membaca status untuk transaksi sebelumnya.

Untuk analogi yang sederhana, pertimbangkan memasak hidangan berbagai macam (spaghetti dengan bakso). Langkah-langkah yang terlibat adalah 1) menyiapkan saus, 2) memasak bakso, dan c) memasak pasta. Seorang koki yang efisien akan mulai dengan merebus air untuk pasta, kemudian menyiapkan bahan untuk saus, kemudian melemparkan pasta ke dalam air yang sudah mendidih, kemudian memasak saus, dan akhirnya bakso, daripada melakukan setiap langkah satu per satu, menyelesaikan satu tugas secara menyeluruh sebelum melangkah ke langkah berikutnya.

3.3 Gerakan

Move adalah bahasa pemrograman yang awalnya dikembangkan oleh tim Facebook pada tahun 2019 untuk proyek Diem yang kini sudah tidak aktif. Move dirancang untuk menangani data kontrak pintar dan transaksi secara aman, menghilangkan vektor serangan yang ada pada bahasa lain seperti serangan reentrancy.

MoveVM berfungsi sebagai lingkungan eksekusi asli untuk blockchain berbasis Move, memanfaatkan paralelisasi untuk memberikan kecepatan eksekusi transaksi yang lebih cepat dan efisiensi keseluruhan yang lebih besar.

3.3.1 Aptos

Aptos adalah blockchain Layer 1 berbasis Move yang dikembangkan oleh anggota proyek Diem sebelumnya, yang menerapkan eksekusi paralel untuk memberikan lingkungan kinerja tinggi bagi pengembang aplikasi. Aptos menggunakan Block-STM, implementasi modifikasi dari mekanisme kontrol konkurensi Software Transactional Memory (STM).

Block-STM adalah mesin eksekusi paralel multithread yang memungkinkan eksekusi paralel yang optimis. Transaksi sudah diurutkan sebelumnya dan disusun secara strategis di dalam blok, yang merupakan kunci untuk menyelesaikan konflik secara efisien dan mengeksekusi ulang transaksi tersebut. Penelitian yang dilakukan oleh Aptos menemukan bahwa hingga 160K TPS secara teoritis dapat didukung menggunakan paralelisasi Block-STM.

3.3.2 Sui

Mirip dengan Aptos, Sui adalah blockchain lapisan 1 yang dikembangkan oleh mantan anggota proyek Diem, yang menggunakan bahasa Move. Namun, Sui menggunakan implementasi Move kustom yang mengubah model penyimpanan dan izin aset dari desain asli Diem. Secara khusus, ini memungkinkan Sui untuk menggunakan model penyimpanan status untuk mewakili transaksi independen sebagai objek. Setiap objek memiliki ID unik dalam lingkungan eksekusi Sui, dan dengan melakukan hal ini, sistem dapat dengan mudah mengidentifikasi transaksi yang tidak bertentangan dan memprosesnya secara paralel.

Mirip dengan Solana, Sui menerapkan eksekusi paralel yang bersifat deterministik, yang memerlukan transaksi untuk menyatakan akun mana yang perlu diakses sebelumnya.

3.3.3 Gerakan Laboratorium

Apa itu Gerakan?

Gerakan sedang membangun rangkaian alat pengembang dan layanan infrastruktur blockchain untuk memungkinkan pengembang dengan mudah mengakses manfaat dari membangun di Move. Beroperasi sebagai penyedia layanan eksekusi-sebagai-layanan mirip AWS untuk pengembang Move, Gerakan mengimplementasikan paralelisasi sebagai fitur desain inti untuk memungkinkan throughput yang lebih tinggi dan efisiensi jaringan secara keseluruhan yang lebih besar. MoveVM adalah lingkungan eksekusi modular yang memungkinkan jaringan blockchain untuk memperluas dan menyesuaikan kemampuan pemrosesan transaksi mereka sesuai kebutuhan untuk dapat mendukung peningkatan volume transaksi, memperkuat kemampuan mereka dalam memproses dan mengeksekusi transaksi secara paralel.

Arsitektur MoveVM

Gerakan juga akan meluncurkan M2, sebuah ZK-rollup yang akan dapat beroperasi dengan klien EVM dan Move sama. M2 akan mewarisi mesin paralelisasi Block-STM, dan diharapkan dapat memberikan puluhan ribu TPS sebagai hasilnya.

Pikiran Penutup

4.1 Tantangan Untuk Sistem Paralel Hari Ini

Beberapa pertanyaan penting dan pertimbangan yang perlu dipikirkan mengenai pengembangan blockchain paralel;

  • Apa tradeoff yang dilakukan jaringan untuk memungkinkan kinerja yang lebih baik melalui eksekusi paralel?
    • Jumlah validator yang lebih sedikit yang mengamankan jaringan memungkinkan kecepatan verifikasi dan eksekusi yang lebih cepat, tetapi apakah hal ini mengorbankan keamanan blockchain sehingga menjadi lebih mudah bagi validator untuk berkolusi melawan jaringan?
    • Apakah ada sejumlah validator yang berlokasi di tempat yang sama? Ini adalah strategi umum untuk meminimalkan laten dalam kedua sistem kripto dan non-kripto, tetapi apa yang terjadi pada jaringan jika pusat data tertentu tersebut dikompromikan?
  • Untuk sistem paralel yang optimis, apakah proses mengeksekusi ulang transaksi yang tidak valid menciptakan bottleneck seiring dengan meningkatnya skala jaringan? Bagaimana efisiensi ini diuji dan dievaluasi?

Secara umum, blockchain paralel menghadapi risiko ketidaksesuaian ledger, yaitu pengeluaran ganda dan perubahan urutan transaksi (memang, ini adalah keuntungan utama dari eksekusi sekuensial). Paralelisasi deterministik mengatasi hal ini dengan menciptakan sistem pelabelan internal untuk transaksi pada blockchain yang mendasarinya. Blockchain yang menerapkan pemrosesan optimis harus memastikan mekanisme yang mereka gunakan untuk memvalidasi dan mengeksekusi ulang transaksi adalah aman dan fungsional, dan kompromi yang dibuat untuk kinerja dapat diimplementasikan dengan wajar.

4.2 Prospek Masa Depan / Peluang

Sejarah komputer telah mengajarkan kita bahwa sistem paralel cenderung lebih efisien dan dapat diskalakan dari waktu ke waktu daripada sistem sekuensial. Munculnya blockchain paralel pasca-Solana menekankan bahwa gagasan ini berlaku juga untuk infrastruktur kripto. Bahkan Vitalik juga telah menyebutkan paralelisasisebagai salah satu solusi kunci potensial untuk meningkatkan skalabilitas EVM rollups belakangan ini. Secara umum, pertumbuhan adopsi crypto/blockchain menuntut sistem yang lebih optimal daripada yang tersedia saat ini, termasuk blockchain paralel. Kesulitan jaringan Solana baru-baru ini telah menyoroti bahwa masih ada banyak ruang untuk perbaikan dalam pengembangan blockchain paralel. Semakin banyak tim yang berusaha mendorong batas-batas frontier onchain dan mendatangkan kohort pengguna dan adopsi berikutnya ke aplikasi dan ekosistem asli blockchain, model eksekusi paralel menyediakan kerangka intuitif untuk membangun sistem yang dapat menangani aktivitas jaringan dalam skala yang sebanding dengan perusahaan Web2 dengan mudah.

Daftar Pustaka

Penafian:

  1. Artikel ini diambil dari [gerombolanTeruskan Judul Asli 'Eksekusi Paralel: Generasi Berikutnya dari Blockchain', Semua hak cipta dimiliki oleh penulis asliPAUL TIMOFEEV, MIKE JIN, DAN GABE MENGINJAK-INJAK]. Jika ada keberatan terhadap cetak ulang ini, silakan hubungi Gate Belajartim, dan mereka akan menanganinya dengan cepat.

  2. Penyangkalan Tanggung Jawab: Pandangan dan opini yang terdapat dalam artikel ini semata-mata milik penulis dan tidak merupakan saran investasi apa pun.

  3. Terjemahan artikel ke bahasa lain dilakukan oleh tim Gate Learn. Kecuali disebutkan, menyalin, mendistribusikan, atau menjiplak artikel yang diterjemahkan dilarang.

Розпочати зараз
Зареєструйтеся та отримайте ваучер на
$100
!