mirror of
https://github.com/lux-apps/papers.git
synced 2026-10-30 18:15:21 +00:00
Ringtail (Boschini et al., ePrint 2024/1113) is third-party prior art; Lux's Corona (Ring-LWE = Module-LWE rank-1) builds on it; Pulsar is Module-LWE rank-k. Retired the conflated boschini2024corona/corona2024/coronago/... bib keys to the single canonical ringtail/corona/pulsar/magnetar keys, rewrote \cite + \bibitem by context, and fixed 'Pulsar (Ring-LWE)' mislabels (Corona where corona.metal/ single-ring/Ringtail-derived; Pulsar where Module-LWE rank-k/ML-DSA). Cryptographer-led.
143 lines
7.9 KiB
TeX
143 lines
7.9 KiB
TeX
%% ====================================================================
|
|
\section{Named-Competitor Comparison (Scaffold)}
|
|
\label{sec:named-competitors}
|
|
%% ====================================================================
|
|
|
|
The microbenchmarks in Sections~\ref{sec:bench-conclusion} characterise the
|
|
Lux PQ-consensus pipeline in isolation. To make the ``better than any other
|
|
solution'' claim falsifiable, this section pins concrete competitors and
|
|
publishes a comparison-table skeleton populated with literature numbers.
|
|
\textbf{Lux columns are marked \texttt{[TBD-measure]}}: they require a
|
|
controlled run on identical hardware against each baseline before any
|
|
``faster than X'' claim is published. \textbf{Numbers in the
|
|
``Literature'' columns are taken from the cited source verbatim.}
|
|
|
|
\subsection{Competitors}
|
|
|
|
We restrict the comparison to widely-cited, production-grade BFT pipelines
|
|
whose source code and benchmark methodology are publicly auditable:
|
|
|
|
\begin{itemize}[leftmargin=2em,nosep]
|
|
\item \textbf{Tendermint / CometBFT}~\cite{buchman2016tendermint,cometbftgithub}
|
|
--- the canonical pre-vote / pre-commit BFT used by every Cosmos zone.
|
|
\item \textbf{HotStuff} (and \textbf{HotStuff-2})~\cite{yin2019hotstuff,malkhi2023hotstuff2}
|
|
--- the linear-comm BFT that underlies Aptos / DiemBFT.
|
|
\item \textbf{Avalanche Snowman}~\cite{rocket2019avalanche,amores2024avalanche}
|
|
--- probabilistic-finality protocol, prior art for sub-second
|
|
finality on commodity validator sets.
|
|
\item \textbf{Mysticeti-C}~\cite{babel2024mysticeti} --- 2024 DAG-BFT
|
|
on Sui; the current published latency floor for non-PQ BFT.
|
|
\end{itemize}
|
|
|
|
We deliberately exclude pure classical pipelines that are not BFT
|
|
(etcd-Raft) and protocols with no published WAN latency figures (Solana
|
|
TowerBFT outside Solana's own marketing material).
|
|
|
|
\subsection{Per-Validator-Set Latency / Throughput}
|
|
|
|
\begin{table}[h]
|
|
\centering
|
|
\small
|
|
\begin{tabular}{@{}lrrrl@{}}
|
|
\toprule
|
|
\textbf{Protocol} & \textbf{Validators} & \textbf{Finality (ms)} & \textbf{Throughput (TPS)} & \textbf{Source} \\
|
|
\midrule
|
|
\textbf{Lux (BLS lane only)} & 21 & \texttt{[TBD-measure]} & \texttt{[TBD-measure]} & this paper \\
|
|
\textbf{Lux (BLS + Pulse)} & 21 & \texttt{[TBD-measure]} & \texttt{[TBD-measure]} & this paper \\
|
|
\textbf{Lux (Horizon, $K{=}21$)} & 21 & $\sim$1{,}000--1{,}300 (p99) & \texttt{[TBD-measure]} & Sec.~\ref{sec:bench-conclusion} \\
|
|
\midrule
|
|
Mysticeti-C & 10 & 500 (commit) & $>$200{,}000 & \cite[Fig.~5]{babel2024mysticeti} \\
|
|
Mysticeti-C & 50 & $<$1{,}000 & $\sim$400{,}000 & \cite[Fig.~6]{babel2024mysticeti} \\
|
|
Mysticeti-C & 106 & 390 (p50) & --- (re-deployment) & \cite[\S6.3]{babel2024mysticeti} \\
|
|
HotStuff (orig.) & 128 & $\sim$700 & $\sim$50{,}000 & \cite[\S5.3]{yin2019hotstuff} \\
|
|
HotStuff-2 & 100 & $\sim$400 & --- & \cite[\S6]{malkhi2023hotstuff2} \\
|
|
Tendermint / CometBFT & $\sim$100 & 1{,}000--3{,}000 & $\sim$1{,}000--10{,}000 & \cite{cometbftgithub,alqahtani2021bottlenecks} \\
|
|
Avalanche Snowman & 2{,}000 & 1{,}350 & 3{,}400 & \cite[Table~5]{rocket2019avalanche} \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\caption{Finality / throughput comparison populated with literature numbers
|
|
for the competitor column. The Lux entries are intentionally \texttt{[TBD-measure]}
|
|
because the existing Lux microbenchmarks (Apple M1 Max, single-core, no WAN)
|
|
are not directly comparable to the multi-validator WAN deployments reported
|
|
for the competitors. The single Lux figure with a value
|
|
($\sim$1.0--1.3\,s) is the cross-WAN $K{=}21$ Pulse latency from
|
|
Section~\ref{sec:cross-wan-latency}; the throughput is gated by the EVM
|
|
execution lane (\cite{luxevmgpu}), not the consensus lane.}
|
|
\label{tab:pq-consensus-named}
|
|
\end{table}
|
|
|
|
\subsection{Post-Quantum Verification Cost}
|
|
|
|
Lux's distinguishing feature is that the PQ verification cost is bounded
|
|
and reported. Most baselines either ship no PQ lane (HotStuff, Tendermint,
|
|
Snowman, Mysticeti) or ship one without published per-validator-set
|
|
benchmarks (e.g.\ ``ML-DSA hybrid'' proposals on Cosmos roadmaps).
|
|
|
|
\begin{table}[h]
|
|
\centering
|
|
\small
|
|
\begin{tabular}{@{}lrrl@{}}
|
|
\toprule
|
|
\textbf{Operation} & \textbf{Lux measured} & \textbf{Closest baseline} & \textbf{Source} \\
|
|
\midrule
|
|
BLS aggregate verify ($n{=}21$) & $\sim$875\,\textmu s & blst $\sim$1.0--1.5\,ms (incl.\ pairing, n=128) & \cite{supranationalblst} \\
|
|
ML-DSA-65 single verify & $\sim$250\,\textmu s & FIPS-204 reference $\sim$120--300\,\textmu s & \cite{fips204} \\
|
|
ML-DSA-65 cached verify & $\sim$3\,\textmu s & --- & this paper \\
|
|
Pulsar Pulse verify & $\sim$9\,ms & no analogous published number & \texttt{[TBD-baseline]} \\
|
|
Full Horizon verify (BLS+ML-DSA+Pulse) & $\sim$15\,ms & no analogous published number & \texttt{[TBD-baseline]} \\
|
|
PQ-finalised consensus latency (WAN, $K{=}21$) & $\sim$1.0--1.3\,s (p99) & none published & \texttt{[TBD-baseline]} \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\caption{Per-step PQ-verification numbers vs.\ closest published baselines.
|
|
``No analogous published number'' rows are kept honest: they identify the
|
|
quantity that competitors would need to publish to rebut Lux.}
|
|
\label{tab:pq-step-costs}
|
|
\end{table}
|
|
|
|
\subsection{Reproducibility (what we still need to run)}
|
|
\label{subsec:pq-repro}
|
|
|
|
To populate \texttt{[TBD-measure]} cells in Table~\ref{tab:pq-consensus-named}
|
|
with numbers comparable to the competitor literature, a controlled experiment
|
|
must be run. The required spec:
|
|
|
|
\begin{itemize}[leftmargin=2em,nosep]
|
|
\item \textbf{Hardware.} 21 nodes; AWS \texttt{c6i.8xlarge} (Intel
|
|
Ice~Lake, 32 vCPU, 64\,GiB) across 3 regions (us-east-1, eu-west-1,
|
|
ap-southeast-1). This matches the Mysticeti~\cite[\S6]{babel2024mysticeti}
|
|
and HotStuff-2~\cite{malkhi2023hotstuff2} deployment shape.
|
|
\item \textbf{Software versions.} Lux \texttt{v0.1.0-rc1-pq-consensus-freeze}
|
|
from \cite{pulsar,thresholdgo,consensusgo,warpgo,lensgo};
|
|
comparison baselines built from upstream HEAD as of paper freeze.
|
|
\item \textbf{Workload.} 1\,kB payload transactions, Poisson arrivals at
|
|
a sweep of $\lambda \in \{10^3, 10^4, 10^5, 2\!\times\!10^5\}$\,TPS
|
|
--- same generator as Mysticeti~\cite[\S6.1]{babel2024mysticeti}.
|
|
\item \textbf{Metrics.} p50 / p99 commit latency; sustained TPS at p99
|
|
commit $\leq 1$\,s; message count per commit; per-validator CPU /
|
|
memory at steady state.
|
|
\item \textbf{Commands.}
|
|
\begin{verbatim}
|
|
# build (Lux side)
|
|
GOWORK=off go test -count=1 -short -timeout 300s \
|
|
./consensus/... ./pulsar/... ./lens/... ./threshold/... ./warp/...
|
|
# Mysticeti-C baseline (from upstream repo)
|
|
cargo run --release --bin orchestrator -- benchmark \
|
|
--committee-size 21 --tx-size 1000 --duration 600
|
|
# CometBFT baseline
|
|
cometbft testnet --v 21 --o ./mytestnet && \
|
|
./mytestnet/scripts/run-benchmark.sh
|
|
\end{verbatim}
|
|
\item \textbf{Decision rule.} Lux ``wins'' Table~\ref{tab:pq-consensus-named}
|
|
only if every measured Lux cell beats the corresponding competitor
|
|
literature cell at the same validator count and the same workload.
|
|
Otherwise the table must report ``ties'' or ``loses'' honestly.
|
|
\end{itemize}
|
|
|
|
\noindent\textbf{What this section deliberately does not say.} It does not
|
|
say Lux is faster than Mysticeti, HotStuff-2, or CometBFT today. It says
|
|
the comparison is well-defined, the methodology is fixed, and the
|
|
\texttt{[TBD-measure]} cells are the only honest path to a published
|
|
``Lux beats X'' claim.
|
|
|
|
%% ====================================================================
|