Parallel EVM hứa hẹn cải thiện khả năng mở rộng và hiệu suất của blockchain thông qua thực thi liên tục trên nhiều bộ xử lý, giải quyết những hạn chế của xử lý giao dịch tuần tự truyền thống. Dù cần thiết cho Ethereum, việc triển khai vẫn phải đối mặt với nhiều thách thức kỹ thuật để đảm bảo không xung đột với kiến trúc hiện tại. Hãy cùng Woalith tìm hiểu chi tiết Parallel EVM là gì qua bài viết dưới đây nhé.
1. Ethereum Virtual Machine (EVM)
EVM là thành phần cốt lõi của Ethereum, đóng vai trò là môi trường thực thi các hợp đồng thông minh (smart contracts).
EVM được chạy trên mọi node Ethereum, đảm bảo việc thực thi hợp đồng thông minh diễn ra đồng bộ trên toàn mạng. Mỗi lệnh được biên dịch thành mã byte và xử lý bởi EVM. Tại mooic khối, EVM xác định quy tắc chuyển đổi trạng thái, đảm bảo Ethereum luôn luôn có một trạng thái chuẩn duy nhất.
Mô tả hoạt động của một EVM
EVM là một máy ảo Turing-complete, có khả năng xử lý mọi tác vụ tính toán nếu được mô tả đúng và có đủ thời gian, bộ nhớ.
EVM cho phép các nhà phát triển xây dựng ứng dụng phi tập trung và hợp đồng thông minh trên nền tảng Ethereum, loại bỏ nhu cầu tin tưởng bên thứ ba, nhờ vào mã nguồn mở và cơ chế thực thi minh bạch của EVM.
2. Phân biệt Parallel và Concurrent
Song song và đồng thời là hai khái niệm dễ nhầm lẫn, dù đều tăng hiệu quả xử lý hệ thống. Tuy nhiên, chúng khác nhau về bản chất và cách ứng dụng. Hãy cùng phân biện qua ví dụ sau.
Hãy tưởng tượng có 2 hàng chờ muốn mua Coke từ máy bán hàng tự động:
- Tính song song (Parallel): ví như có 2 máy bán hàng, mỗi hàng chờ được phục vụ bởi một máy riêng biệt cùng lúc, giúp xử lý giao dịch đồng thời.
- Tính đồng thời (Concurrent): Một máy bán hàng phục vụ hai hàng chờ xen kẽ, xử lý nhiều tác vụ gần như cùng lúc nhưng không thực sự đồng thời
Mô tả về tính song song và đồng thời
Trong blockchain, tính song song (Parallel) là khả năng xử lý nhiều tác vụ cùng lúc qua nhiều luồng. Tính đồng thời (Concurrent) là một luỗng xử lý xen kẽ nhiều tác vụ để tối ưu hiệu suất. Ví dụ: khi chờ dữ liệu từ ổ đĩa, luồng chính có thể tranh thủ thức hiện các tác vụ khác rồi quay lại tiếp tục sau.
3. Parallel EVM là gì ?
3.1 Khái niệm Parallel EVM
Parallel EVM là phiên bản nâng cấp của EVM trên Ethereum, nổi bật với khả năng xử lý giao dịch và thực thi hợp đồng theo cách song song, giúp tăng hiệu suất mạng.
EVM tiêu chuẩn xử lý giao dịch và hợp đồng thông minh theo cách tuần tự, dễ gây tắc nghẽn khi lưu lượng cao, làm tăng thời gian xử lý cà chi phí gas.
Để khác phục vấn đề tắc nghẽn, Parallel EVM áp dụng xử lý song song, cho phép thực hiện nhiều giao dịch cùng lúc nếu chúng không phụ thuộc lẫn nhau, từ đó nâng cao hiệu suất và khả năng mở rộng của mạng lưới.
Khi thực hiện giao dịch hoặc tương tác với hợp đồng thông minh trên Ethereum, hệ thống cần truy vấn trạng thái toàn cục (global state), dễ dẫn đến xung quanh đột nếu trạng thái chưa được xác nhận (finality). Ví dụ dễ hiểu giống như tài khoảng ngân hàng, bạn phải đợi số dư được cập nhật sau một giao dịch thì mới có thể thực hiện giao dịch tiếp theo.
3.2 Lợi ích của Parallel EVM
- Nâng cao độ ổn định của hệ thống: Parallel EVM giảm khối lượng tính toán mạng, tiết kiệm năng lượng và nâng cao hiệu quả xử lý giao dịch.
- Giảm chi phí: Parallel EVM nâng cao khả năng mở rộng và thông lượng, giảm chi phí giao dịch nhờ giảm cạnh tranh hàng chờ, từ đó thu hút thêm nhiều người dùng và tổ chức tham gia blockchain.
- Nâng cao hiệu quả dApps: Các ứng dụng phi tập trung hưởng lợi từ việc xử lý giao dịch mượt mà, tránh tắc nghẽn khi lượng giao dịch tăng, giúp cải thiện trại nghiệm của người dùng.
3.3 Phương pháp tiếp cận Parallel EVM
Khó khắn lớn nhất của việc triển khai vận hành song song (Parallel Execution) là xác định trong hệ thống các giao dịch có trạng thái độc lập.
Với hạ tầng EVM hiện tại, hai hoạt động phố biến nhất là sload (đọc trạng thái) và sstore (ghi trạng thái) vào state trie. Khi thực thi song song, cần đảm bảo không xay ra xung đột giữa các luồng xử lý tại các điểm đọc/ghi đây chính là một hướng tiếp cẩn trọng yếu để triển khai Parallel EVM.
Ngoải ra, Ethereum hỗ trợ loại giao dịch đặc biệt theo chuẩn (EIP-2930), gọi là Access list, cho phép khai báo trước các địa chỉ và vùng lưu trữ sẽ được truy cập. Điều này mở ra hướng tiếp cận hiệu quả cho triển khai đồng thời (cocurrent) dựa trên việc lập lịch, nhờ khả năng xác định trước các vùng trạng thái, từ đó giảm thiệu xung đột khi thực thi.
Việc triển khai Parallel EVM thường theo ba cách phổ biến của Parallel/Concurrent EVM:
- Chạy đa luồng một phiên bản EVM duy nhất (Multithreading of a single EVM instance): Đây là một phương pháp phổ biến, tạo nhiều luồng xử lý trong cùng một phiên bản EVM. Mỗi luồng xử lý đồng thời một giao dịch hoặc hợp đồng thông minh, tận dụng lõi CPU đa nhân để nậng cao hiệu suất hệ thống.
- Đa luồng của nhiều phiên bản EVM trên một nút duy nhất (Multithreading of multiple EVM instances on a single node): Thay vì chỉ chạy một phiên bản EVM triên mỗi node, có thể triển khai nhiều phiên bản EVM song song trên cùng một node, cho phép xử lý độc lập các giao dịch và hợp đồng thông minh mà không gây ảnh hưởng lẫn nhau.
- Đa luồng của nhiều phiên bản EVM trên nhiều nút (Multithreading of multiple EVM instances across multiple nodes): Phương pháp này tương tự sharding ở cấp hệ thống, khi các hợp đồng thông minh được phân chia thành các đoạn nhỏ và xử lý riêng biệt bởi các phiên bản EVM khác nhau trên cùng một node, từ đó nâng cao khả năng mở rộng và phân phối công việc hiệu quả hơn.
3.4 Thách thức đối với Parallel EVM
- Đồng bộ hóa dữ liệu: Khi chạy hợp đồng thông minh song song trên nhiều luồng, việc đồng bộ kết quả và trạng thái giữa các luồng trở nên phức tạp, trong đó quản lý đồng bộ và tránh xung đột dữ liệu là thách thức lớn nhất.
- Bảo mật: Parallel EVM phải đảm bảo thực thi hợp đồng thông minh song song không làm mất tính toàn vẹn và bảo mật mạng, đặc biệt quan trọng với các ứng dụng tài chính và hợp đồng giá trị cao.
- Tài nguyên hệ thống: Chạy hợp đồng thông minh song song đòi hỏi nhiều tài nguyên hơn như bộ nhớ, CPU và băng thông, có thể làm giảm hiệu suất mạng và tăng chi phí giao dịch do validator cần đầu tư phần cứng mạnh hơn, dẫn đến phí cao hơn.
- Thiết kế và triển khai: Xây dựng Parallel EVM yêu cầu kiến thức sâu về kiến trúc máy tính, lập trình song song và hệ thống phân tán. thiết kế và triển khai đúng đắn là thách thức lớn với các nhà phát triển.
- Tương thích ngược: Parallel EVM có thể gặp khó khăn về tương thích ngược với các hợp đồng thông minh hiện tại, đặc biệt khi chuyển từ EVM tiêu chuẩn. VIệc này có thể gây ra xung đột giao thức và ảnh hưởng đến các ứng dụng, dịch vụ đang hoạt động.
4. Một số dự án Parallel EVM nổi bật
Monad là dự án blockchain do Monad Labs phát triển, tập trung vào khả năng mở rộng (scalability) và tốc độ giao dịch cao (transaction speed) nhờ công nghệ độc quyền. Theo công bố, Monad có thể xử lý 10,000 TPS, block chỉ 1 giây, hỗ trợ thực thi song song (parallel execution) và sử dụng cơ chế đồng thuẩn MonadBFT. Dự án đã gọi thành công 19 triệu USD ở vòng seed và dự kiến ra mặt testnet vào giữa Q1/2024. Một số dự án đáng chú ý trong hệ sinh thái Monad gồm Elixir, Pyth Network,…
Monad gọi vốn 19 triệu USD vòng seed từ PlaceHolder, Shima Capital,…
Sei V2 là bản nâng cấp lớn của Sei, hướng đến trở thành Parallel EVM hoàn chỉnh đầu tiên. Nâng cấp này hỗ trợ hợp đồng thoonh minh tương thích ngược, optimistic parallelization, SeiDB và khả năng tương tác chuỗi. Testnet ra mắt Q1/2024, mainnet triển khai nửa đầu 2024.
Thông báo Public Devnet của Sei V2
Neon EVM là nền tảng Parallel EVM xây dựng trên Solana, giúp các dApp Ethereum hoạt động hiệu quả, an toàn và phi tập trung trên Solana, đồng thời tận dụng thông lượng cao và chi phí thấp của mạng này.
Dự án NeonEVM
Miễn trừ trách nhiệm: Woalith khuyến nghị người đọc cần có hiểu biết vững về thị trường Crypto trước khi đầu tư. Thông tin trong bài viết chỉ mang tính tham khảo, không phải lời khuyên đầu tư. Wolith không chịu trách nghiệm với bất kỳ quyết định đầu tư nào từ người đọc.
Leave a Reply