SETTINGS
Content language
flag Vietnamese
Vietnamese
flag Vietnamese
Vietnamese
Tiếng việt
flag English
English
English
Channel logo
Coin98 Insights
Save
Copy link

Grevm: Máy ảo Parallel EVM của blockchain Gravity

Blockchain Layer 1 Gravity vừa ra mắt chương trình máy ảo Grevm với thiết kế thực thi song song. Grevm tiếp cận những công nghệ nền tảng nổi bật để tối ưu hiệu suất hoạt động, dự kiến giúp mạng đạt thông lương 1 gigagas/giây.
linhnt
Published Dec 15 2024
Updated Dec 15 2024
8 min read
grevm là gì

Grevm là gì?

Grevm hay Gravity EVM là môi trường thực thi EVM của mạng lưới Gravity. Khác với EVM của Ethereum sử dụng ngôn ngữ Solidity, Grevm được viết bằng ngôn ngữ lập trình Rust (giống Solana) để mở rộng tác vụ thực thi của mạng.

Ngoài ra, Grevm được thiết kế để thực thi song song - parallel execution thông qua thuật toán BlockSTM, từ đó mở rộng thông lượng mạng, kỳ vọng hỗ trợ Gravity đạt khoảng 1 gigagas/giây.

Điểm nổi bật trong kiến trúc của Grevm nằm ở sự cộng hưởng của một số công nghệ nền tảng:

  • Revm (Rust EVM) và full node Reth (Rust Ethereum) - nền tảng của Grevm.
  • Thuật toán BlockSTM được phát triển bởi Aptos, đã ứng dụng thực thi trên một số blockchain như Polygon, Sei…
  • Parallel EVM ứng dụng BlockSTM từ blockchain Rise.

Đọc thêm: Gravity (G) là gì? Blockchain Layer 1 được phát triển bởi Galxe.

advertising

Grevm giải quyết vấn đề gì?

Ở một số môi trường thực thi EVM, thông thường chúng sẽ được thiết kế theo phương pháp xử lý trình tự (sequential), tức là giao dịch này thực hiện xong mới đến giao dịch tiếp theo. Khi nhu cầu sử dụng mạng lưới cao như trên Ethereum, tình trạng tắc nghẽn có thể xảy ra. Điều này khiến phí giao dịch tăng cao, thời gian giao dịch chờ được thực hiện bị kéo dài, thậm chí giao dịch có thể không được thực hiện.

Đối với một số blockchain non-EVM, tình trạng này có thể được xử lý tối ưu hơn. Tuy nhiên, với kiến trúc chuyên biệt của một số EVM blockchain, thực thi song song là giải pháp mang lại hiệu quả cho tình trạng này.

Thực thi song song cho phép mạng thực hiện song song các giao dịch, gia tăng tốc độ xử lý, nâng thông lượng TPS. Về lý thuyết, kỹ thuật xử lý song song có thể mang lại kết quả tối ưu, giúp hệ thống xử lý được số lượng giao dịch lớn, đặc biệt trong thời điểm thông lượng truy cập mạng lưới tăng mạnh.

Tuy nhiên, chưa có nhiều blockchain EVM trên thị trường tối ưu cho xử lý song song. Grevm được Gravity phát triển dựa trên sự tham khảo và ứng dụng những công nghệ trên thị trường, được kỳ vọng sẽ đáp ứng một phần nỗ lực cải thiện hiệu suất và tốc độ giao dịch.

Mô hình hoạt động của Grevm

Grevm hoạt động dựa trên nguyên tắc mô phỏng giao dịch. Nhìn chung, mô hình của chúng sẽ tập trung chủ yếu trong môi trường Mô phỏng giao dịch - một bản sao ảo của mạng. Trong môi trường này, hệ thống hoạt động dựa trên 3 giai đoạn chính:

  • Tạo gợi ý (Hint Generation): Giai đoạn này giúp hệ thống học hỏi và xây dựng cơ sở dữ liệu các mẫu giao dịch phổ biến. Nhờ đó, Grevm có thể dự đoán và tối ưu hóa việc xử lý các giao dịch tương tự trong tương lai.
  • Phân tích phụ thuộc (Dependency Analysis): Grevm xác định các mối quan hệ phụ thuộc giữa các giao dịch để lập kế hoạch thực thi hiệu quả. Các giao dịch không có mối liên hệ sẽ được ưu tiên xử lý song song, giúp giảm thiểu thời gian chờ đợi.
  • Giải quyết tình trạng xung đột trong xử lý giao dịch nhiều lần: Grevm sử dụng cấu trúc dữ liệu theo mô hình DAG để quản lý và thực thi song song các giao dịch. Cấu trúc DAG cho phép xác định rõ thứ tự thực hiện của các giao dịch, tránh xung đột và tối đa hóa hiệu suất.

Cụ thể, từng bước hoạt động trong mô hình của Grevm như sau:

1. Tạo bản sao trạng thái và mô phỏng giao dịch: Trước khi thực hiện một loạt giao dịch, hệ thống sẽ tạo ra một bản sao trạng thái hiện tại của blockchain. Bản sao này đóng vai trò như một môi trường thử nghiệm, cho phép mô phỏng các giao dịch mà không ảnh hưởng đến trạng thái thực tế của hệ thống.

2. Xây dựng đồ thị phụ thuộc: Dựa trên kết quả mô phỏng, hệ thống sẽ xác định các phần dữ liệu mà mỗi giao dịch cần đọc hoặc ghi. Những thông tin này được gọi là "gợi ý phụ thuộc" (dependency hints).

Các gợi ý phụ thuộc được sử dụng để xây dựng một đồ thị theo kiến trúc DAG, giúp thể hiện rõ mối quan hệ giữa các giao dịch và thứ tự thực hiện, nhằm đảm bảo mục đích là hạn chế những xung đột có thể xảy ra.

3. Phân chia công việc và thực hiện song song: Từ kiến trúc DAG, hệ thống sẽ phân vùng những giao dịch có mối liên quan với nhau theo các luồng (thread) để xử lý song song. Nhờ đó, nhiều giao dịch có thể được thực hiện cùng một lúc, tăng hiệu suất của mạng.

4. Quản lý trạng thái và giải quyết xung đột: Hệ thống sử dụng một bộ nhớ trạng thái (state memory) để lưu trữ thông tin về trạng thái hiện tại của blockchain. Sau khi giao dịch được thực thi, hệ thống sẽ cập nhật trạng thái tương ứng.

Trong trường hợp xảy ra xung đột dữ liệu, có nghĩa là nếu có hai giao dịch cùng muốn sửa đổi một phần dữ liệu, hệ thống sẽ giải quyết xung đột bằng các cơ chế như:

  • Ưu tiên giao dịch: Giao dịch có phí cao hơn hoặc giao dịch được gửi trước có thể được ưu tiên.
  • Hủy bỏ giao dịch: Trong một số trường hợp, giao dịch có thể bị hủy bỏ và cần thực thi lại.

Theo dự án, trong quá trình thử nghiệm Grevm, hệ thống đã tạo ra các mô phỏng với nhiều loại giao dịch khác nhau, bao gồm: chuyển ETH từ ví này sang ví khác, chuyển token ERC-20, swap token trên Uniswap. Kết quả là, tổng gas tiêu thụ cho mỗi khối dự kiến là 1 gigagas/ giây.

mô hình hoạt động grevm
Mô hình hoạt động của Grevm

Sau khi hoàn tất những thử nghiệm, Grevm dự kiến giúp mạng Gravity đạt được những con số sau:

  • Nhanh hơn 4.13 lần so với phương pháp thực thi tuần tự, đạt thông lượng 26.50 gigagas/giây cho một giao dịch song song.
  • Trong điều kiện mô phỏng với độ trễ đầu vào/đầu ra (I/O) là 100 micro giây, Grevm đạt được hiệu suất cao hơn 50.84 lần so với phương pháp truyền thống, với thông lượng đạt 6.80 gigagas/giây.
hiệu suất grevm
Đánh giá hiệu suất của Grevm

Lộ trình phát triển tiếp theo của Grevm

Hiện tại, blockchain Gravity đang sử dụng phiên bản thử nghiệm Grevm 1.0. Phiên bản Grevm 2.0 đang hoàn thiện và dự kiến ra mắt vào tháng 12/2024. Theo đó, Grevm 2.0 có hai cải tiến quan trọng tập trung vào việc tiếp tục nâng cao hiệu suất hệ thống và tăng tốc độ xử lý giao dịch. Cụ thể hai nâng cấp chính:

Thực thi song song cấp độ giao dịch chi tiết (Finer-Grained Transaction-Level Concurrency): Grevm 2.0 cho phép thực hiện song song nhiều giao dịch, ngay cả khi chúng có các phụ thuộc dữ liệu chung. Điều này giúp giảm thiểu tình trạng tắc nghẽn, đặc biệt trong các trường hợp có nhiều giao dịch cùng truy cập một tài nguyên.

Đầu vào/đầu ra hoàn toàn không đồng bộ (Fully Asynchronous I/O): Kỹ thuật giúp hệ thống thực hiện các hoạt động đọc/ghi dữ liệu một cách độc lập và đồng thời. Nhờ đó, mạng có thể tối ưu hóa việc sử dụng tài nguyên và giảm thiểu thời gian chờ đợi.

RELEVANT SERIES