mirror of
https://github.com/lux-apps/papers.git
synced 2026-10-30 18:15:21 +00:00
I resolved these files toward a June commit that called the billion-order figures fabricated, and that commit was itself the mistaken one. The July campaign it predates does not assert its numbers, it checks them: a GPU-versus-CPU parity run matching exactly, 38,000,000 fills on both sides at 1,000,000 books, depth 32, 32 takers each, on hardware this estate owns. It also names the error in the earlier framing. Consensus determinism was taken to force a single-thread launch and forfeit the GPU. It does not: determinism constrains ordering WITHIN a book and says nothing across books, so one thread per book — each matching its taker stream in strict price-time priority, bit-for-bit re-executable, millions of threads — saturates the accelerator with every book deterministic. Restored at the later versions across all 27 files: the accounting section, the CLOB matcher, lightspeed-dex, lp-306, lp-308, lp-137, p3q-corona, the precompile engineering sections and the FHE orderbook application. Paper builds, 23 pages, no errors. Co-authored-by: Hanzo Dev <[email protected]>
73 lines
3.7 KiB
TeX
73 lines
3.7 KiB
TeX
\section{Benchmarks}
|
|
\label{sec:benchmarks}
|
|
|
|
This section consolidates the measured results from Sections~\ref{sec:gpu-matching},
|
|
\ref{sec:settlement}, and~\ref{sec:rollup} into one table, states the hardware and method,
|
|
and is explicit about which numbers are measured and which are aggregations or projections.
|
|
|
|
\subsection{Hardware and method}
|
|
|
|
\begin{itemize}
|
|
\item \textbf{AMD Radeon 8060S} (coalesced SoA preload; fastest matcher measured).
|
|
\item \textbf{NVIDIA GB10} (Grace-Blackwell, 128\,GB unified memory, \texttt{sm\_121},
|
|
CUDA 13).
|
|
\item \textbf{Apple M4 Max} (128\,GB unified memory, Metal).
|
|
\item \textbf{Apple M1 Max} (Go reference, CPU settlement, verifier rates).
|
|
\end{itemize}
|
|
|
|
Matching and settlement throughput are reported as sustained rates over runs of tens of
|
|
millions of operations, with the GPU matching figures gated by byte-exact parity against the
|
|
CPU oracle (Section~\ref{sec:gpu-matching}). We report per-match latency where it is the
|
|
governing quantity. No figure in this paper is taken from a simulation or scaled by a fudge
|
|
factor.
|
|
|
|
\subsection{Consolidated results}
|
|
|
|
\begin{table}[H]
|
|
\centering
|
|
\renewcommand{\arraystretch}{1.3}
|
|
\begin{tabular}{p{4.4cm} l r l}
|
|
\toprule
|
|
\textbf{Axis / quantity} & \textbf{Platform} & \textbf{Measured} & \textbf{Status} \\
|
|
\midrule
|
|
Matching (coalesced SoA) & AMD Radeon 8060S & 12.76\,B orders/s & measured \\
|
|
Matching (coalesced SoA) & NVIDIA GB10 & 9.13\,B orders/s & measured \\
|
|
Matching (un-coalesced) & NVIDIA GB10 & 1.54\,B orders/s & measured \\
|
|
Matching (coalesced SoA) & Apple M4 Max & 5.60\,B orders/s & measured \\
|
|
Matching (coalesced SoA) & Apple M1 Max & 2.80\,B orders/s & measured \\
|
|
Conflict detection ($O(N)$) & M1 Max (CPU) & 2.2\,M fills/s & measured \\
|
|
GPU conflict commit order & M4 (WGSL) & byte-identical to CPU & measured \\
|
|
Market-sharded settle (8) & M1 Max (CPU) & $\sim$0.39\,M fills/s & measured \\
|
|
P3Q verify (ML-DSA-65) & M1 Max (CPU) & 4{,}714 verifies/s & measured \\
|
|
\texttt{starkfri} verify (toy AIR) & M1 Max (CPU) & 986 verifies/s & measured \\
|
|
\midrule
|
|
Matching (two-node fabric) & GB10 $\times$2 & 21.9\,B orders/s & aggregation \\
|
|
$10^{9}$ settled-tx/s finality & P3Q, $K{=}10^{4}$, $M{=}22$ & $1.04\times10^{9}$ & finality model \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\caption{Consolidated measured results across the three axes, with each row labeled
|
|
measured, an aggregation of measured single-node rates, or a finality model that combines a
|
|
measured verify rate with a stated batch size. Single-device matching is measured in the
|
|
billions of orders/sec; the two-node fabric row is a linear aggregation, and the finality
|
|
row is a model, both labeled accordingly.}
|
|
\label{tab:consolidated}
|
|
\end{table}
|
|
|
|
\subsection{The two levers, restated}
|
|
|
|
The tuned matcher combines two compounding levers: the Knuth Algorithm~D division (per lane,
|
|
$\sim$8--12$\times$ over 512-iteration bit-serial, Table~\ref{tab:division}) and a coalesced
|
|
structure-of-arrays arena layout that makes the kernel throughput-bound rather than
|
|
latency-bound. An earlier draft, benchmarking an un-coalesced kernel, reported the matcher as
|
|
dependency-latency bound at hundreds of millions of matches/s; the coalesced layout lifts
|
|
sustained throughput into the billions of orders/sec per device---9.13\,B on a GB10 and
|
|
12.76\,B on an AMD Radeon 8060S (Table~\ref{tab:gpu-throughput}).
|
|
|
|
\subsection{What we do not claim}
|
|
|
|
We do not claim an end-to-end latency derived from invented co-location round-trips, or any
|
|
uptime statistic from a deployment we did not run. The single-device matching rates are
|
|
measured and byte-parity-gated; fleet and fabric aggregation
|
|
(Section~\ref{subsec:billion-matching}) scales them linearly, and settlement finality is a
|
|
separate axis (Section~\ref{sec:rollup}).
|