https://github.com/eth-act/riscv-compilation
This repository contains projects focused on compiling Ethereum execution clients for the RISC-V architecture and executing transactions/blocks statelessly. The primary goal is to analyze the syscalls employed during stateless execution on RISC-V hardware.
https://github.com/eth-act/riscv-compilation
Last synced: 5 months ago
JSON representation
This repository contains projects focused on compiling Ethereum execution clients for the RISC-V architecture and executing transactions/blocks statelessly. The primary goal is to analyze the syscalls employed during stateless execution on RISC-V hardware.
- Host: GitHub
- URL: https://github.com/eth-act/riscv-compilation
- Owner: eth-act
- Created: 2025-07-16T15:17:22.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-08-14T11:55:14.000Z (10 months ago)
- Last Synced: 2025-08-14T13:18:42.882Z (10 months ago)
- Language: Rust
- Homepage:
- Size: 59.3 MB
- Stars: 8
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# RISC-V Compilation Research
This repository contains research projects focused on RISC-V architecture in blockchain contexts, particularly exploring execution environments for Ethereum and Zero-Knowledge Virtual Machines (zkVMs).
## Overview
The RISC-V architecture represents a significant advancement in open-source hardware design. This repository investigates how RISC-V can be leveraged for blockchain applications, with a dual focus:
1. Linux syscalls and execution clients in RISC-V environments
2. Performance benchmarking of zkVM precompiles
## Project Structure
### Linux Syscalls Analysis (`/linux-syscalls`)
This project focuses on compiling Ethereum execution clients for the RISC-V architecture and analyzing syscalls during stateless execution:
- **Geth (Go Ethereum)**: Compilation and execution of the Go-based Ethereum Virtual Machine
- **Reth (Rust Ethereum)**: Implementation and analysis of the Rust-based Ethereum client
- **Nim**: Experiments with the Nim programming language on RISC-V
The goal is to understand system call patterns and optimize execution for RISC-V environments.
### zkVM Precompile Benchmarking (`/zkvm-precomile-bench`)
This project analyzes the performance impact of precompiles in various Zero-Knowledge Virtual Machines:
- Documents precompiles across multiple zkVMs (RISC0, SP1, Airbender, Zisk, OpenVM, Ziren, Pico)
- Provides detailed benchmarks showing execution and proof generation performance
- Analyzes the efficiency gains from specialized precompiles vs. standard implementations
Key findings show dramatic performance improvements (up to 27.6x faster execution and 7x faster proof generation) when using specialized precompiles.
## Research Goals
This repository serves several research objectives:
1. **Architecture Analysis**: Understanding how RISC-V performs in blockchain contexts
2. **Performance Optimization**: Identifying bottlenecks and optimization opportunities
3. **Standardization**: Working toward more standardized approaches for RISC-V in blockchain applications
4. **zkVM Efficiency**: Documenting and improving the efficiency of Zero-Knowledge proof generation on RISC-V
## Contribution
This is an ongoing research project. Findings, benchmarks, and analysis will be updated as research progresses.