Files
papers/evmgpu-benchmark/evmgpu-benchmark.tex
zeekay de41e5d072 papers: replace fabricated DEX perf claims with measured numbers; document decomplected architecture
Retract the fabricated '581M/597ns / 100M+/s / 434M GPU / planet-scale' headline (a
time.Sleep sim + x40 fudge that measured nothing) across the corpus. Flagship lux-lightspeed-dex
rewritten (decomplected d-chain engine / dexvm atomic proxy / Go wrapper / 0x9010 CLOB facade;
measured GB10 104-126M & M4 Max ~250M fills/s byte-parity-gated; Knuth-D division lever; Block-STM
settlement; P3Q->starkfri rollup to Z-Chain). Technical papers (precompile-engineering, gpu-crypto-stack,
evmgpu-benchmark, p3q-corona, smart-order-routing, fhe-mpc-hybrid) carry the measured impl + cross-ref
the flagship. >1B/s framed honestly as N-node aggregation, never single-GPU. All compile.
2026-06-17 17:15:10 -07:00

73 lines
2.5 KiB
TeX

\documentclass[11pt]{article}
\usepackage{../shared/luxcover}
\usepackage{amsmath,amssymb}
\usepackage{graphicx}
\usepackage{booktabs}
\usepackage{hyperref}
\usepackage{listings}
\usepackage{xcolor}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\usepackage{siunitx}
\usepackage{multirow}
\usepackage{subcaption}
\usetikzlibrary{arrows.meta,positioning,calc}
\sisetup{group-separator={,}}
\definecolor{luxblue}{RGB}{30,64,175}
\definecolor{luxgold}{RGB}{234,179,8}
\definecolor{gpugreen}{RGB}{22,163,74}
\definecolor{cpured}{RGB}{220,38,38}
\definecolor{cppblue}{RGB}{37,99,235}
\definecolor{gogreen}{RGB}{0,125,156}
\title{GPU-Accelerated EVM Execution: Measured Benchmarks\\on Apple M1 Max Metal}
\author{
Zach Kelling\thanks{Corresponding author: [email protected]}\\
\textit{Lux Industries, Inc.}\\
\texttt{[email protected]}
}
\date{February 2025}
\begin{document}
\luxcoverpage
\begin{abstract}
We present measured benchmarks of GPU-accelerated Ethereum Virtual Machine (EVM) execution
on Apple M1 Max with 32-core Metal GPU and 64\,GB unified memory. The GPU EVM kernel
achieves 85.9\,M opcodes/sec versus 17.7\,M opcodes/sec on CPU---a \textbf{4.85$\times$ peak speedup}.
GPU acceleration becomes advantageous above $\sim$500 opcodes per transaction, reaching
2.08$\times$ at 2{,}000 ops/tx, 2.83$\times$ at 5{,}000 ops/tx, and 3.09$\times$ at 10{,}000 ops/tx.
Independent of GPU work, the C++ evmone interpreter with a full state layer achieves
20.9\,Ggas/s (best: 23.4\,Ggas/s)---\textbf{5.1$\times$ faster} than the Go EVM's 4.2--5.4\,Ggas/s
on EVM-only execution. Profiling confirms that \textbf{87\% of Go block processing} is
secp256k1 ecrecover; parallelizing ecrecover across 10 CPU cores yields 7.1$\times$ speedup.
The system is validated by 1{,}183 tests across C++/Rust/Go, 35 Metal shaders and 11 WGSL
shaders (all compiling clean), 14 host dispatch functions, and 8 GPU state DB tests passing.
\end{abstract}
\tableofcontents
\newpage
\input{sections/01-introduction}
\input{sections/02-hardware-and-environment}
\input{sections/03-gpu-evm-kernel-benchmarks}
\input{sections/04-c-evm-vs-go-evm}
\input{sections/05-profiling-the-signature-bottleneck}
\input{sections/06-gpu-shader-inventory}
\input{sections/07-test-coverage}
\input{sections/08-block-stm-parallel-execution}
\input{sections/09-gpu-acceleration-cryptographic-operation}
\input{sections/10-discussion}
\input{sections/11-gpu-clob-matcher}
\input{sections/12-addendum-optimized-gpu-kernel}
\input{sections/13-named-competitor-comparison}
\input{sections/99-conclusion}
\end{document}