Files
zeekay abf99d05fc papers: reorganize into per-paper dirs, add Antje Worring as co-author
Restructured from flat .tex/.pdf files into per-paper subdirectories.
Added Antje Worring as co-author on all papers.
Synced PDFs to pdfs/ for download site.
2026-04-18 21:50:07 -07:00

62 lines
3.3 KiB
TeX

\section{Introduction}
\label{sec:intro}
%% ============================================================================
Blockchain transaction processing has reached a performance wall. Ethereum mainnet
processes approximately 30\,Mgas/s---limited not by network bandwidth or consensus
latency, but by sequential EVM execution on a single CPU core~\cite{pevm}. Every
proposed solution to date operates within the CPU paradigm: faster interpreters
(evmone~\cite{evmone}, revm~\cite{reth}), parallel execution (Block-STM~\cite{blockstm},
pevm~\cite{pevm}), or JIT compilation (Paradigm's revmc).
This paper takes a different approach. We move the \emph{entire} block processing
pipeline to the GPU:
\begin{enumerate}
\item \textbf{Transaction validation and ecrecover} --- the 87\% of block time that
profiling reveals as the true bottleneck.
\item \textbf{EVM opcode execution} --- via compute shaders that run each transaction
as an independent GPU thread.
\item \textbf{Block-STM conflict detection} --- using GPU atomics for MvMemory, with
the scheduler running entirely on-device.
\item \textbf{State root computation} --- Keccak-256 Merkle-Patricia trie hashing on GPU.
\item \textbf{Post-quantum cryptography} --- all NIST FIPS algorithms (ML-DSA, ML-KEM,
SLH-DSA) accelerated via GPU NTT.
\item \textbf{Fully homomorphic encryption} --- TFHE blind rotation and external product
on GPU for encrypted smart contract execution.
\end{enumerate}
\subsection{Why GPU-Native EVM Matters}
Modern GPUs contain thousands of compute units optimized for parallel arithmetic. An
Apple M1 Max GPU has 32 compute units with 128 ALUs each = 4{,}096 parallel execution
units, versus 10 CPU cores. An NVIDIA H100 has 132 SMs $\times$ 128 CUDA cores = 16{,}896
units. The EVM's per-transaction execution is embarrassingly parallel at the block level:
each transaction in a conflict-free set can run independently.
The bottleneck that prevents naive GPU EVM is \emph{state access}. EVM transactions read
and write a shared state trie. GPU memory is traditionally separate from CPU memory,
making state access prohibitively expensive. Apple Silicon's \emph{unified memory
architecture} (UMA) eliminates this barrier: CPU and GPU share the same physical memory
with zero-copy access. This architectural feature makes GPU-native EVM practical for the
first time.
\subsection{Contributions}
\begin{enumerate}
\item \textbf{Architecture}: A five-stage GPU pipeline (validate $\to$ ecrecover $\to$
Block-STM $\to$ execute $\to$ state\_root) that processes entire blocks on-device.
\item \textbf{GPU State}: A GPU-resident hash table with persistent buffers and
unified memory, eliminating CPU--GPU state transfer.
\item \textbf{GPU Block-STM}: MvMemory implemented with GPU atomics and an on-device
scheduler---no CPU round-trips for conflict detection.
\item \textbf{PQ Crypto}: All three NIST FIPS post-quantum algorithms on GPU, sharing
NTT as a unified primitive.
\item \textbf{FHE}: TFHE blind rotation and external product on GPU for encrypted EVM.
\item \textbf{Measured results}: 85.9\,M opcodes/sec GPU, 20.9\,Ggas/s C++ EVM,
7.1$\times$ parallel ecrecover. Not projections. Not simulations.
\end{enumerate}
%% ============================================================================