Add paragraphs exp. params, description, and interpretation for fig. 4.9

This commit is contained in:
2026-05-02 16:58:02 +02:00
parent f4718b67e7
commit 5687499b5b
2 changed files with 82 additions and 114 deletions

View File

@@ -1476,23 +1476,6 @@ irrespective of the initialization, can beat, since by construction
whole-block decoding has access to the full set of constraints
available to any window.
% [Description] Figure 4.9
% - Parameters
% - # BP iterations
% - W,F
% - Physical error rates
% - Warm vs cold start
% - Figure description
% - TODO:
% [Interpretation] Figure 4.9
% -
% At some later point
\content{When looking at max iterations: Callback to diminishing
returns with growing window size: More iterations more beneficial
than larger window (+1 for warm-start)}
\begin{figure}[t]
\centering
\begin{tikzpicture}
@@ -1598,104 +1581,86 @@ than larger window (+1 for warm-start)}
\caption{
\red{\lipsum[2]}
}
\label{fig:bp_w_over_iter}
\end{figure}
% \begin{figure}[t]
% \centering
% \begin{tikzpicture}[spy using outlines={circle, magnification=2,
% connect spies}]
%
% \begin{axis}[
% width=\figwidth,
% height=\figheight,
% ymode=log,
% % xmode=log,
% legend style={
% cells={anchor=west},
% cells={align=left},
% },
% enlargelimits=false,
% ymin=1e-3, ymax=1e-1,
% grid=both,
% legend pos = north east,
% xtick={32,512,1024,2048,4096},
% % xtick={0.001,0.0015,...,0.004},
% xticklabels =
% {$32$,$512$,$1{,}024$,,$2{,}048$,,$3{,}072$,,$4{,}096$},
% xtick={32, 512, 1024, 1536, 2048, 2560, 3072, 3584, 4096},
% xticklabel style={/pgf/number format/fixed},
% xticklabel style={/pgf/number format/precision=4},
% % x tick label style={rotate=45, anchor=north east,
% % inner sep=1mm},
% scaled x ticks=false,
% xlabel={Number of BP iterations},
% ylabel={Per-round-LER},
% extra description/.code={
% \node[rotate=90, anchor=south]
% at ([xshift=10mm]current axis.east)
% {Warm s. (---), Cold s. (- - -)};
% },
% ]
%
% \foreach \W/\col/\mark in
% {3/KITred/triangle,4/KITblue/diamond,5/KITorange/square} {
% \edef\temp{\noexpand
% \addplot+[mark=\mark, densely dashed,
% forget plot, \col]
% table[
% col sep=comma, x=max_iter,
% y=LER_per_round,
% ]
% {res/sim/max_iter/WindowingSyndromeMinSumDecoder/p_0.0025/pass_soft_info_False/F_1/W_\W/LERs.csv};
% }
% \temp
% }
%
% \foreach \W/\col/\mark in
% {3/KITred/triangle*,4/KITblue/diamond*,5/KITorange/square*} {
% \edef\temp{\noexpand
% \addplot+[mark=\mark, solid, mark
% options={fill=\col}, \col]
% table[
% col sep=comma, x=max_iter,
% y=LER_per_round,
% ]
% {res/sim/max_iter/WindowingSyndromeMinSumDecoder/p_0.0025/pass_soft_info_True/F_1/W_\W/LERs.csv};
% }
% \temp
%
% \addlegendentryexpanded{$W = \W$}
% }
%
% \addplot+[mark=*, solid, mark options={fill=black}, black]
% table[
% col sep=comma, x=max_iter,
% y=LER_per_round,
% ]
% {res/sim/max_iter/SyndromeMinSumDecoder/p_0.0025/LERs.csv};
%
% \addlegendentry{Whole}
%
% \coordinate (spypoint) at (axis cs:250,1e-2);
% \coordinate (magnifyglass) at (axis cs:2048,0.5);
%
% \end{axis}
% \spy [black, size=4cm] on (spypoint)
% in node[fill=white] at (magnifyglass);
%
% \end{tikzpicture}
%
% \caption{
% Comparison of the decoding performance of cold and warm-start
% decoding under the $\llbracket 144,12,12 \rrbracket$ \ac{bb}
% code for different step sizes.
% Decoding was performed using the min-sum algorithm ($200$
% iterations).
% The window size was fixed to $W=5$, $12$ rounds of syndrome
% extraction were performed and the noise model is
% standard circuit-based depolarizing noise.
% }
% \end{figure}
% [Experimental parameters] Figure 4.9
\Cref{fig:bp_w_over_iter} shows the per-round \ac{ler} as a function
of the maximum number of \ac{bp} iterations granted to the inner decoders.
The dashed colored curves correspond to cold-start sliding-window
decoding for $W \in \{3, 4, 5\}$, the solid colored curves to the
corresponding warm-start sliding-window decoding, and the black curve
to the whole-block reference.
The physical error rate is fixed at $p = 0.0025$, the step size at
$F = 1$, and the iteration budget is swept over
$n_\text{iter} \in \{32, 128, 256, 512, 1024, 2048, 4096\}$.
The enlarged plot magnifies the low-iteration regime
$n_\text{iter} \in [32, 512]$.
% [Description] Figure 4.9
All curves decrease monotonically with the iteration budget, but
contrary to our expectation, none of them appears to fully saturate
within the swept range: even at $n_\text{iter} = 4096$, every curve
still exhibits a noticeable downward slope.
At $n_\text{iter} = 32$, the whole-block curve lies below both the
$W=4$ and $W=5$ sliding-window curves.
At $n_\text{iter} = 128$ the whole-block curve already performs
better than the $W=4$ sliding-window curve
and at $n_\text{iter} = 512$ the whole-block and warm-start $W = 5$
curves also cross.
From this point onwards, the whole-block decoder lies strictly below
all windowed schemes, this difference becoming more pronounced as the
iteration budget grows further.
Within the magnified plot, the gap between the warm-start and
cold-start curves at fixed $W$ is largest for the smallest iteration
counts and shrinks rapidly as $n_\text{iter}$ grows, and at fixed
$n_\text{iter}$ the size of this gap grows with the window size,
mirroring the behavior already observed in \Cref{fig:whole_vs_cold_vs_warm}.
% [Interpretation] Figure 4.9
These observations are largely consistent with the effective-iterations
hypothesis put forward above.
The whole-block decoder eventually overtaking every windowed scheme
matches the prediction made there: with a sufficiently large
iteration budget, the whole-block decoder reaches an error rate
that nonone of the windowed schemes can beat, because of the more global
nature of the considered constraints.
Furthermore, the pronounced advantage of warm- over cold-start decoding at low
numbers of iterations makes sense if we consider the overall trend of the plots.
At low iteration budgets, each additional iteration is worth more
than at high budgets.
As the number of permitted iteration increases, the benefit of
the additional ``free'' iterations gained due to the the warm-start
initialization diminishes, and the curves approach each other.
The fact that no curve clearly saturates within the swept range is
itself worth noting.
We know that \ac{bp} on \ac{qldpc} codes suffers from poor
convergence due to the short cycles in the underlying Tanner graph,
so even after several thousand iterations the
decoder may continue to slowly refine its message estimates rather
than settle into a stable fixed point.
This is one of the core motivations for moving from plain \ac{bp} to
the guided-decimation variant studied in
\Cref{subsec:Belief Propagation with Guided Decimation}.
Another thing to note is that setting the per-invocation iteration
budget of the inner decoder equal to the iteration budget of the
whole-block decoder is not a fair comparison in terms of total
computational effort.
The sliding-window scheme processes each \ac{vn} in an overlap region
multiple times and therefore spends more iterations overall.
In the context of \ac{qec}, however, the relevant figure of merit is
not total compute but decoding latency, and in terms of latency the
sliding-window approach is still at an advantage.
% At some later point
\content{When looking at max iterations: Callback to diminishing
returns with growing window size: More iterations more beneficial
than larger window (+1 for warm-start)}
\begin{figure}[t]
\centering

View File

@@ -1,8 +1,11 @@
\chapter{Conclusion and Outlook}
\content{Takeaway: Warm-start more effective for lower numbers of max
iterations (plays into our hands because lower number of iterations
means lower latency)}
\content{\textbf{Ideas for further research}}
\content{Softer way of decimating VNs}
\content{Systematic study on using different inner decoders (AED,
SED, BPGD, ...)}
\content{Investigate SC-LDPC window decoding wave-like effects}