-
Notifications
You must be signed in to change notification settings - Fork 329
Comparing changes
Open a pull request
base repository: ipsilon/evmone
base: master
head repository: luxcpp/evm
compare: master
- 7 commits
- 62 files changed
- 1 contributor
Commits on Apr 5, 2026
-
feat: GPU parallel execution scaffolding (Block-STM + Metal/CUDA)
- evm::gpu::MvMemory — multi-version data structure for optimistic concurrency - evm::gpu::Scheduler — Block-STM collaborative task scheduler - evm::gpu::execute_block() — dispatcher for CPU/GPU backends - Backends: CPU_Sequential, CPU_Parallel, GPU_Metal, GPU_CUDA - GPU paths fall back to CPU parallel until kernels are implemented
Configuration menu - View commit details
-
Copy full SHA for 5926724 - Browse repository at this point
Copy the full SHA 5926724View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4477c1f - Browse repository at this point
Copy the full SHA 4477c1fView commit details -
feat: Block-STM parallel engine + Metal Keccak-256 GPU
- parallel_engine: real Block-STM with evmone workers via EVMC Host - parallel_host: intercepts storage via MvMemory for conflict detection - Metal Keccak-256: 13x speedup (17.1 Mhash/s GPU vs 1.3 Mhash/s CPU) - bench_parallel: 2.19x speedup on 500 tx block (CPU parallel) - All in evm::gpu namespace
Configuration menu - View commit details
-
Copy full SHA for 0c775ef - Browse repository at this point
Copy the full SHA 0c775efView commit details -
rename: evmone namespace → evm, add block execution benchmark
- namespace evmone → evm in all lib/evm/ sources (26 files) - library target: libevmone → libevm - project name: evmone → evm - EVMC ABI preserved (evmc_create_evmone unchanged) - bench_block.cpp: sequential vs Block-STM parallel comparison - evm-gpu static lib + evm-bench-block executable
Configuration menu - View commit details
-
Copy full SHA for 2b954d0 - Browse repository at this point
Copy the full SHA 2b954d0View commit details -
feat: unified GPU state hashing via luxcpp/gpu
- GpuStateHasher wraps luxcpp/gpu keccak256_batch API - auto_detect() + set_backend() for runtime GPU toggle - All 3 modes (sequential, parallel, GPU) produce identical results - 21 tests passing (mode consistency + Keccak known vectors)
Configuration menu - View commit details
-
Copy full SHA for b332c4b - Browse repository at this point
Copy the full SHA b332c4bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 82ba6e4 - Browse repository at this point
Copy the full SHA 82ba6e4View commit details -
fix: JUMPDEST validation, balance underflow check, EVMC host completion
- evm_kernel.metal: added is_valid_jumpdest() that scans bytecode from offset 0 skipping PUSH data, used by both JUMP and JUMPI opcodes - state_db.cpp: replaced assert(balance >= amount) with throw std::logic_error for release-safe balance underflow detection - evmc_host.hpp: expanded host interface for full EVM compatibility - evm_interpreter.hpp: additional opcode support in GPU interpreter
Configuration menu - View commit details
-
Copy full SHA for 3b9effb - Browse repository at this point
Copy the full SHA 3b9effbView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff master...master