diff options
| author | Douglas Rumbaugh <dbr4@psu.edu> | 2025-06-04 16:01:20 -0400 |
|---|---|---|
| committer | Douglas Rumbaugh <dbr4@psu.edu> | 2025-06-04 16:01:20 -0400 |
| commit | 0dab92f9b14e75f68dda8c556398ea2d55e27494 (patch) | |
| tree | 0e53f3dbc9c22b3eab050a1fae1644fecc8cbfd0 /chapters/design-space.tex | |
| parent | 432a7fd7da164841a2ad755b839de1e65244944d (diff) | |
| download | dissertation-0dab92f9b14e75f68dda8c556398ea2d55e27494.tar.gz | |
updates
Diffstat (limited to 'chapters/design-space.tex')
| -rw-r--r-- | chapters/design-space.tex | 40 |
1 files changed, 17 insertions, 23 deletions
diff --git a/chapters/design-space.tex b/chapters/design-space.tex index 952be42..7cfe6a3 100644 --- a/chapters/design-space.tex +++ b/chapters/design-space.tex @@ -192,14 +192,13 @@ analysis. The worst-case cost of a reconstruction is $B(n)$, and there are $\log_s(n)$ total levels, so the total reconstruction costs associated with a record can be upper-bounded by, $B(n) \cdot \frac{W(\log_s(n))}{n}$, and then this cost amortized over the $n$ -insertions necessary to get the record into the last level, resulting +insertions necessary to get the record into the last level. We'lll also +condense the multiplicative constants and drop the additive ones to more +clearly represent the relationship we're looking to show. This results in an amortized insertion cost of, \begin{equation*} -\frac{B(n)}{n} \cdot \frac{1}{2}(s-1) \cdot ( (s-1)\log_s n + s) +\frac{B(n)}{n} \cdot s \log_s n \end{equation*} -Note that, in the case of $s=2$, this expression reduces to the same amortized -insertion cost as was derived using Binomial Theorem in the original BSM -paper~\cite{saxe79}. \end{proof} \begin{theorem} @@ -361,9 +360,10 @@ and sum this over all of the levels. \end{equation*} To calculate the amortized insertion cost, we multiply this write amplification number of the cost of rebuilding the structures, and divide by the total number -of records, +of records. We'll condense the constant into a single $s$, as this best +expresses the nature of the relationship we're looking for, \begin{equation*} -I_A(n) \in \Theta\left(\frac{B(n)}{n}\cdot \frac{1}{2} (s+1) \log_s n\right) +I_A(n) \in \Theta\left(\frac{B(n)}{n}\cdot s \log_s n\right) \end{equation*} \end{proof} @@ -503,17 +503,10 @@ I(n) \in \Theta\left(B(n)\right) \end{theorem} \begin{proof} The worst-case reconstruction in tiering involves performing a -reconstruction on each level. Of these, the largest level will -contain $\Theta(n)$ records, and thus dominates the cost of the -reconstruction. More formally, the total cost of this reconstruction -will be, +reconstruction on each level. More formally, the total cost of this +reconstruction will be, \begin{equation*} -I(n) = \sum_{i=0}{\log_s n} B(s^i) = B(1) + B(s) + B(s^2) + \ldots B(s^{\log_s n}) -\end{equation*} -Of these, the final term $B(s^{\log_s n}) = B(n)$ dominates the others, -resulting in an asymptotic worst-case cost of, -\begin{equation*} -I(n) \in \Theta\left(B(n)\right) +I(n) \in \Theta\left(\sum_{i=0}^{\log_s n} B(s^i)\right) \end{equation*} \end{proof} @@ -600,8 +593,8 @@ reconstructions, one per level. & \textbf{Gen. BSM} & \textbf{Leveling} & \textbf{Tiering} \\ \hline $\mathscr{Q}(n)$ &$O\left(\log_s n \cdot \mathscr{Q}_S(n)\right)$ & $O\left(\log_s n \cdot \mathscr{Q}_S(n)\right)$ & $O\left(s \log_s n \cdot \mathscr{Q}_S(n)\right)$\\ \hline $\mathscr{Q}_B(n)$ & $\Theta(\mathscr{Q}_S(n))$ & $O(\log_s n \cdot \mathscr{Q}_S(n))$ & $O(\log_s n \cdot \mathscr{Q}_S(n))$ \\ \hline -$I(n)$ & $\Theta(B(n))$ & $\Theta\left(B\left(\frac{s-1}{s} \cdot n\right)\right)$ & $\Theta(B(n))$\\ \hline -$I_A(n)$ & $\Theta\left(\frac{B(n)}{n} \frac{1}{2}(s-1)\cdot((s-1)\log_s n +s)\right)$ & $\Theta\left(\frac{B(n)}{n} \frac{1}{2}(s-1)\log_s n\right)$& $\Theta\left(\frac{B(n)}{n} \log_s n\right)$ \\ \hline +$I(n)$ & $\Theta(B(n))$ & $\Theta\left(B\left(\frac{s-1}{s} \cdot n\right)\right)$ & $ \Theta\left(\sum_{i=0}^{\log_s n} B(s^i)\right)$ \\ \hline +$I_A(n)$ & $\Theta\left(\frac{B(n)}{n} s\log_s n)\right)$ & $\Theta\left(\frac{B(n)}{n} s\log_s n\right)$& $\Theta\left(\frac{B(n)}{n} \log_s n\right)$ \\ \hline \end{tabular} \caption{Comparison of cost functions for various layout policies for DSPs} @@ -699,7 +692,7 @@ due to cache effects most likely, but less so than in the MDSP case. \begin{figure} \centering \subfloat[ISAM Tree]{\includegraphics[width=.5\textwidth]{img/design-space/isam-tput.pdf} \label{fig:design-isam-tput}} -\subfloat[VPTree]{\includegraphics[width=.5\textwidth]{img/design-space/vptree-insert-dist.pdf} \label{fig:design-vptree-tput}} \\ +\subfloat[VPTree]{\includegraphics[width=.5\textwidth]{img/design-space/vptree-tput.pdf} \label{fig:design-vptree-tput}} \\ \caption{Insertion Throughput for Layout Policies} \label{fig:design-ins-tput} \end{figure} @@ -772,9 +765,10 @@ method shows similar trends to leveling. In general, the Bentley-Saxe method appears to follow a very similar trend to that of leveling, albeit with even more dramatic performance -degradation as the scale factor is increased. Generally it seems to be -a strictly worse alternative to leveling in all but its best-case query -cost, and we will omit it from our tests moving forward as a result. +degradation as the scale factor is increased and slightly better query +performance across the board. Generally it seems to be a strictly worse +alternative to leveling in all but its best-case query cost, and we will +omit it from our tests moving forward. \subsection{Query Size Effects} |