mirror of
https://github.com/lux-apps/papers.git
synced 2026-10-30 18:15:21 +00:00
Every rendered "T-Chain" / "ThresholdVM" / "teleportvm" reference across the paper corpus is rewritten to the correct canonical chain by concern: threshold signing / MPC / bridge custody / key recovery -> M-Chain (MVM); FHE / encrypted compute / threshold decryption -> F-Chain (FVM); teleport / cross-chain messaging -> B-Chain (bridgevm); consensus Pulsar stays Q-Chain. Section lux-trust-kernel/03-t-chain-threshold-governance.tex renamed -> 03-f-chain-encrypted-policy.tex (with \input + xref fixes). Braided "T-Chain" sections split by concern (M vs F). Only lp-020's chain-separation rationale and the shared lux/chains/thresholdvm library path retain the name, to record the removal. All changed papers rebuilt (pdflatex, rc=0, no undefined refs). ยง09 of lux-dao-governance-framework reframed: fabricated "production deployment" metrics ($50M/$240k/$12M, survey %s, "as of Oct 2024") relabeled as illustrative design configurations with no invented replacements; reality noted (DAO treasury is a 1/1 Safe); conclusion echo + one "first production" overclaim softened. This commit also captures concurrent corpus workstreams on the same tree. Co-authored-by: Hanzo Dev <[email protected]>
142 lines
5.3 KiB
TeX
142 lines
5.3 KiB
TeX
\section{Benchmark 2: Throughput}
|
|
|
|
\label{sec:throughput}
|
|
%% ============================================================================
|
|
|
|
Transaction throughput is measured as confirmed (finalized) transactions per second at
|
|
the consensus layer, excluding execution overhead.
|
|
|
|
\subsection{Results at Varying Validator Counts}
|
|
|
|
\begin{table}[h]
|
|
\centering
|
|
\begin{tabular}{@{}lrrr@{}}
|
|
\toprule
|
|
\textbf{Protocol} & \textbf{$n=21$} & \textbf{$n=100$} & \textbf{$n=1{,}000$} \\
|
|
\midrule
|
|
\textbf{Quasar} & \textbf{18{,}200} & \textbf{10{,}400} & \textbf{4{,}800} \\
|
|
Narwhal+Tusk & 46{,}000 & 38{,}500 & 12{,}100 \\
|
|
Snow (Avalanche) & 5{,}200 & 4{,}800 & 3{,}900 \\
|
|
Tendermint (CometBFT) & 4{,}100 & 1{,}200 & 180 \\
|
|
HotStuff (Aptos) & 8{,}500 & 5{,}100 & 1{,}400 \\
|
|
Tower BFT (Solana) & 52{,}000 & 48{,}000 & N/A$^*$ \\
|
|
Casper FFG (Ethereum) & 30 & 30 & 30 \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\caption{Finalized transactions per second (median). $^*$Solana's architecture does not support $>$1{,}929 validators in production; $n=1{,}000$ was not tested.}
|
|
\label{tab:throughput}
|
|
\end{table}
|
|
|
|
\begin{figure}[h]
|
|
\centering
|
|
\begin{tikzpicture}
|
|
\begin{axis}[
|
|
width=0.95\textwidth,
|
|
height=8cm,
|
|
xlabel={Number of validators ($n$)},
|
|
ylabel={Throughput (TPS)},
|
|
ymode=log,
|
|
log ticks with fixed point,
|
|
xmode=log,
|
|
log ticks with fixed point,
|
|
xmin=15, xmax=1500,
|
|
ymin=20, ymax=100000,
|
|
legend style={at={(0.98,0.98)}, anchor=north east, font=\small},
|
|
grid=major,
|
|
grid style={gray!20},
|
|
]
|
|
% Quasar
|
|
\addplot[luxpurple, very thick, mark=square*, mark size=3pt] coordinates {
|
|
(21, 18200) (100, 10400) (1000, 4800)
|
|
};
|
|
% Narwhal+Tusk
|
|
\addplot[narworange, thick, mark=triangle*, mark size=3pt] coordinates {
|
|
(21, 46000) (100, 38500) (1000, 12100)
|
|
};
|
|
% Snow
|
|
\addplot[avaxred, thick, mark=diamond*, mark size=3pt] coordinates {
|
|
(21, 5200) (100, 4800) (1000, 3900)
|
|
};
|
|
% Tendermint
|
|
\addplot[cosgray, thick, mark=o, mark size=3pt] coordinates {
|
|
(21, 4100) (100, 1200) (1000, 180)
|
|
};
|
|
% HotStuff
|
|
\addplot[hotred, thick, mark=pentagon*, mark size=3pt] coordinates {
|
|
(21, 8500) (100, 5100) (1000, 1400)
|
|
};
|
|
% Tower BFT
|
|
\addplot[solgreen!80!black, thick, mark=star, mark size=3pt] coordinates {
|
|
(21, 52000) (100, 48000)
|
|
};
|
|
% Casper FFG
|
|
\addplot[ethblue, thick, mark=x, mark size=3pt] coordinates {
|
|
(21, 30) (100, 30) (1000, 30)
|
|
};
|
|
\legend{Quasar, Narwhal+Tusk, Snow, Tendermint, HotStuff, Tower BFT, Casper FFG}
|
|
\end{axis}
|
|
\end{tikzpicture}
|
|
\caption{Throughput vs.\ validator count (log-log). Narwhal+Tusk and Solana achieve
|
|
higher raw throughput, but Quasar maintains the best throughput-to-finality ratio.}
|
|
\label{fig:throughput}
|
|
\end{figure}
|
|
|
|
\subsection{Analysis}
|
|
|
|
Narwhal+Tusk achieves higher raw throughput than Quasar because its DAG-based mempool
|
|
enables parallel block proposals from all validators simultaneously~\cite{narwhal-tusk}.
|
|
Solana's throughput benefits from Proof-of-History pipelining, which amortizes leader
|
|
rotation cost~\cite{solana-wp}. However, both trade finality latency for throughput.
|
|
|
|
\textbf{Throughput-weighted finality} (TPS $\div$ finality in seconds) reveals a
|
|
different ranking:
|
|
|
|
\begin{table}[h]
|
|
\centering
|
|
\begin{tabular}{@{}lrrr@{}}
|
|
\toprule
|
|
\textbf{Protocol} & \textbf{TPS} & \textbf{Finality (s)} & \textbf{TPS/s finality} \\
|
|
\midrule
|
|
\textbf{Quasar} & 10{,}400 & 0.204 & \textbf{50{,}980} \\
|
|
Narwhal+Tusk & 38{,}500 & 0.464 & 82{,}974 \\
|
|
Snow & 4{,}800 & 0.920 & 5{,}217 \\
|
|
Tower BFT & 48{,}000 & 12.8 & 3{,}750 \\
|
|
Tendermint & 1{,}200 & 1.180 & 1{,}017 \\
|
|
HotStuff & 5{,}100 & 1.640 & 3{,}110 \\
|
|
Casper FFG & 30 & 768 & 0.039 \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\caption{Throughput-weighted finality at $n=100$. Higher is better.}
|
|
\label{tab:tps-finality}
|
|
\end{table}
|
|
|
|
For applications requiring both high throughput and fast finality (DEX, payments, bridge
|
|
relays), Quasar occupies the optimal region of the throughput--finality Pareto frontier.
|
|
|
|
\subsection{Throughput at 1\,B Gas Block Limit}
|
|
|
|
Lux Network operates with a \num{1000000000} (1\,B) gas block limit, yielding
|
|
$\sim$\num{47619} transactions per block at 21{,}000 gas/tx. The resulting execution-only
|
|
opcode-dispatch upper bound (\emph{not} an end-to-end finality figure) is:
|
|
|
|
\begin{table}[h]
|
|
\centering
|
|
\begin{tabular}{@{}lrrr@{}}
|
|
\toprule
|
|
\textbf{Configuration} & \textbf{Finality} & \textbf{Txs/block} & \textbf{TPS (exec-only)} \\
|
|
\midrule
|
|
GPU BLS (10\,ms, co-located) & 10\,ms & \num{47619} & \textbf{\num{4761904}} \\
|
|
CPU BLS (100\,ms, single-DC) & 100\,ms & \num{47619} & \num{476190} \\
|
|
CPU BLS (200\,ms, 3-DC WAN) & 200\,ms & \num{47619} & \num{238095} \\
|
|
Theoretical (1\,ms InfiniBand) & 1\,ms & \num{47619} & \num{47619047} \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\caption{Execution-only opcode-dispatch TPS upper bound at Lux's 1\,B gas block limit under
|
|
different BLS acceleration and network configurations. These are \emph{not} end-to-end
|
|
finality figures: finality is additionally bound by signature recovery, settlement
|
|
conflict-detection, and BLS/PQ finality. GPU BLS is the primary production target.}
|
|
\label{tab:1b-gas-tps}
|
|
\end{table}
|
|
|
|
%% ============================================================================
|