diff options
author | Brett Weiland <brett_weiland@gmail.com> | 2024-04-12 01:11:45 -0500 |
---|---|---|
committer | Brett Weiland <brett_weiland@gmail.com> | 2024-04-12 01:11:45 -0500 |
commit | f86343b967e98b02c5ad06bb2e8c17c8ab3446b2 (patch) | |
tree | 24d10923c45afa80aa4a885a855079af767b27c9 | |
parent | 88a70c60e2422c2bce9246271dc083a9d02d2cdc (diff) |
sleeby timez
-rwxr-xr-x | booth_multiplier.py | 15 | ||||
-rw-r--r-- | report/iterations.pgf | 836 | ||||
-rw-r--r-- | report/performance.pgf | 2 | ||||
-rw-r--r-- | report/report.aux | 2 | ||||
-rw-r--r-- | report/report.log | 28 | ||||
-rw-r--r-- | report/report.pdf | bin | 183824 -> 185893 bytes | |||
-rw-r--r-- | report/report.tex | 15 |
7 files changed, 875 insertions, 23 deletions
diff --git a/booth_multiplier.py b/booth_multiplier.py index c17c2f8..dab58d0 100755 --- a/booth_multiplier.py +++ b/booth_multiplier.py @@ -158,5 +158,20 @@ if __name__ == "__main__": plt.gca().set_ylabel("Number of Additions and Subtractions") plt.legend(loc='upper left') plt.savefig('report/performance.pgf') + + iters_booth = [] + iters_mod_booth = [] + for length in lengths: + iters_booth.append(length) + iters_mod_booth.append(int(length / 2)) + + plt.figure() + plt.plot(lengths, lengths, '^--m', label='booths algorithim') + plt.plot(lengths, [int(l/2) for l in lengths], 'v--c', label='modified booths algorithim') + plt.gca().set_xlabel("Operand Length") + plt.gca().set_ylabel("Number of iterations") + plt.legend(loc='upper left') + plt.savefig('report/iterations.pgf') + diff --git a/report/iterations.pgf b/report/iterations.pgf new file mode 100644 index 0000000..2084aa3 --- /dev/null +++ b/report/iterations.pgf @@ -0,0 +1,836 @@ +%% Creator: Matplotlib, PGF backend +%% +%% To include the figure in your LaTeX document, write +%% \input{<filename>.pgf} +%% +%% Make sure the required packages are loaded in your preamble +%% \usepackage{pgf} +%% +%% Also ensure that all the required font packages are loaded; for instance, +%% the lmodern package is sometimes necessary when using math font. +%% \usepackage{lmodern} +%% +%% Figures using additional raster images can only be included by \input if +%% they are in the same directory as the main LaTeX file. For loading figures +%% from other directories you can use the `import` package +%% \usepackage{import} +%% +%% and then include the figures with +%% \import{<path to file>}{<filename>.pgf} +%% +%% Matplotlib used the following preamble +%% \def\mathdefault#1{#1} +%% \everymath=\expandafter{\the\everymath\displaystyle} +%% +%% \makeatletter\@ifpackageloaded{underscore}{}{\usepackage[strings]{underscore}}\makeatother +%% +\begingroup% +\makeatletter% +\begin{pgfpicture}% +\pgfpathrectangle{\pgfpointorigin}{\pgfqpoint{6.400000in}{4.800000in}}% +\pgfusepath{use as bounding box, clip}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{6.400000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{6.400000in}{4.800000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{4.800000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% +\pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% +\pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% +\pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% +\pgfpathlineto{\pgfqpoint{0.800000in}{0.528000in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.025455in}{0.528000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{4}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.589091in}{0.528000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.589091in,y=0.430778in,,top]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{5}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.152727in}{0.528000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.152727in,y=0.430778in,,top]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{6}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.716364in}{0.528000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.716364in,y=0.430778in,,top]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{7}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{3.280000in}{0.528000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.280000in,y=0.430778in,,top]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{8}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{3.843636in}{0.528000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.843636in,y=0.430778in,,top]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{9}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{4.407273in}{0.528000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=4.407273in,y=0.430778in,,top]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{10}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{4.970909in}{0.528000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=4.970909in,y=0.430778in,,top]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{11}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{5.534545in}{0.528000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{12}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.280000in,y=0.251766in,,top]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}Operand Length}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.800000in}{0.696000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.633333in, y=0.647775in, left, base]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{2}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.800000in}{1.368000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.633333in, y=1.319775in, left, base]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{4}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.800000in}{2.040000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.633333in, y=1.991775in, left, base]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{6}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.800000in}{2.712000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.633333in, y=2.663775in, left, base]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{8}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.800000in}{3.384000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.563888in, y=3.335775in, left, base]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{10}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.800000in}{4.056000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.563888in, y=4.007775in, left, base]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}$\mathdefault{12}$}}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.508333in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}Number of iterations}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.750000,0.000000,0.750000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{{5.550000pt}{2.400000pt}}{0.000000pt}% +\pgfpathmoveto{\pgfqpoint{1.025455in}{1.368000in}}% +\pgfpathlineto{\pgfqpoint{1.025455in}{1.368000in}}% +\pgfpathlineto{\pgfqpoint{2.152727in}{2.040000in}}% +\pgfpathlineto{\pgfqpoint{2.152727in}{2.040000in}}% +\pgfpathlineto{\pgfqpoint{2.152727in}{2.040000in}}% +\pgfpathlineto{\pgfqpoint{3.280000in}{2.712000in}}% +\pgfpathlineto{\pgfqpoint{3.280000in}{2.712000in}}% +\pgfpathlineto{\pgfqpoint{3.280000in}{2.712000in}}% +\pgfpathlineto{\pgfqpoint{3.280000in}{2.712000in}}% +\pgfpathlineto{\pgfqpoint{3.280000in}{2.712000in}}% +\pgfpathlineto{\pgfqpoint{4.407273in}{3.384000in}}% +\pgfpathlineto{\pgfqpoint{4.407273in}{3.384000in}}% +\pgfpathlineto{\pgfqpoint{4.407273in}{3.384000in}}% +\pgfpathlineto{\pgfqpoint{5.534545in}{4.056000in}}% +\pgfpathlineto{\pgfqpoint{5.534545in}{4.056000in}}% +\pgfpathlineto{\pgfqpoint{5.534545in}{4.056000in}}% +\pgfpathlineto{\pgfqpoint{5.534545in}{4.056000in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{0.750000,0.000000,0.750000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.750000,0.000000,0.750000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% +\pgfpathlineto{\pgfqpoint{-0.041667in}{-0.041667in}}% +\pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{0.041667in}}% +\pgfpathclose% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.025455in}{1.368000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{1.025455in}{1.368000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{2.152727in}{2.040000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{2.152727in}{2.040000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{2.152727in}{2.040000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.280000in}{2.712000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.280000in}{2.712000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.280000in}{2.712000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.280000in}{2.712000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.280000in}{2.712000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{4.407273in}{3.384000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{4.407273in}{3.384000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{4.407273in}{3.384000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{5.534545in}{4.056000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{5.534545in}{4.056000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{5.534545in}{4.056000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{5.534545in}{4.056000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.750000,0.750000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{{5.550000pt}{2.400000pt}}{0.000000pt}% +\pgfpathmoveto{\pgfqpoint{1.025455in}{0.696000in}}% +\pgfpathlineto{\pgfqpoint{1.025455in}{0.696000in}}% +\pgfpathlineto{\pgfqpoint{2.152727in}{1.032000in}}% +\pgfpathlineto{\pgfqpoint{2.152727in}{1.032000in}}% +\pgfpathlineto{\pgfqpoint{2.152727in}{1.032000in}}% +\pgfpathlineto{\pgfqpoint{3.280000in}{1.368000in}}% +\pgfpathlineto{\pgfqpoint{3.280000in}{1.368000in}}% +\pgfpathlineto{\pgfqpoint{3.280000in}{1.368000in}}% +\pgfpathlineto{\pgfqpoint{3.280000in}{1.368000in}}% +\pgfpathlineto{\pgfqpoint{3.280000in}{1.368000in}}% +\pgfpathlineto{\pgfqpoint{4.407273in}{1.704000in}}% +\pgfpathlineto{\pgfqpoint{4.407273in}{1.704000in}}% +\pgfpathlineto{\pgfqpoint{4.407273in}{1.704000in}}% +\pgfpathlineto{\pgfqpoint{5.534545in}{2.040000in}}% +\pgfpathlineto{\pgfqpoint{5.534545in}{2.040000in}}% +\pgfpathlineto{\pgfqpoint{5.534545in}{2.040000in}}% +\pgfpathlineto{\pgfqpoint{5.534545in}{2.040000in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{0.000000,0.750000,0.750000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.750000,0.750000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.041667in}}% +\pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% +\pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% +\pgfpathlineto{\pgfqpoint{-0.000000in}{-0.041667in}}% +\pgfpathclose% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.025455in}{0.696000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{1.025455in}{0.696000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{2.152727in}{1.032000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{2.152727in}{1.032000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{2.152727in}{1.032000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.280000in}{1.368000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.280000in}{1.368000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.280000in}{1.368000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.280000in}{1.368000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.280000in}{1.368000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{4.407273in}{1.704000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{4.407273in}{1.704000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{4.407273in}{1.704000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{5.534545in}{2.040000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{5.534545in}{2.040000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{5.534545in}{2.040000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{5.534545in}{2.040000in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% +\pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{5.760000in}{0.528000in}}% +\pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% +\pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.800000in}{4.224000in}}% +\pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.800000}% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.800000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.897222in}{3.725543in}}% +\pgfpathlineto{\pgfqpoint{2.990205in}{3.725543in}}% +\pgfpathquadraticcurveto{\pgfqpoint{3.017983in}{3.725543in}}{\pgfqpoint{3.017983in}{3.753321in}}% +\pgfpathlineto{\pgfqpoint{3.017983in}{4.126778in}}% +\pgfpathquadraticcurveto{\pgfqpoint{3.017983in}{4.154556in}}{\pgfqpoint{2.990205in}{4.154556in}}% +\pgfpathlineto{\pgfqpoint{0.897222in}{4.154556in}}% +\pgfpathquadraticcurveto{\pgfqpoint{0.869444in}{4.154556in}}{\pgfqpoint{0.869444in}{4.126778in}}% +\pgfpathlineto{\pgfqpoint{0.869444in}{3.753321in}}% +\pgfpathquadraticcurveto{\pgfqpoint{0.869444in}{3.725543in}}{\pgfqpoint{0.897222in}{3.725543in}}% +\pgfpathlineto{\pgfqpoint{0.897222in}{3.725543in}}% +\pgfpathclose% +\pgfusepath{stroke,fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.750000,0.000000,0.750000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{{5.550000pt}{2.400000pt}}{0.000000pt}% +\pgfpathmoveto{\pgfqpoint{0.925000in}{4.050389in}}% +\pgfpathlineto{\pgfqpoint{1.063889in}{4.050389in}}% +\pgfpathlineto{\pgfqpoint{1.202778in}{4.050389in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{0.750000,0.000000,0.750000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.750000,0.000000,0.750000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% +\pgfpathlineto{\pgfqpoint{-0.041667in}{-0.041667in}}% +\pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{0.041667in}}% +\pgfpathclose% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.063889in}{4.050389in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.313889in,y=4.001778in,left,base]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}booths algorithim}}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.750000,0.750000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{{5.550000pt}{2.400000pt}}{0.000000pt}% +\pgfpathmoveto{\pgfqpoint{0.925000in}{3.856716in}}% +\pgfpathlineto{\pgfqpoint{1.063889in}{3.856716in}}% +\pgfpathlineto{\pgfqpoint{1.202778in}{3.856716in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{0.000000,0.750000,0.750000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.750000,0.750000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.041667in}}% +\pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% +\pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% +\pgfpathlineto{\pgfqpoint{-0.000000in}{-0.041667in}}% +\pgfpathclose% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.063889in}{3.856716in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.313889in,y=3.808105in,left,base]{\color{textcolor}{\rmfamily\fontsize{10.000000}{12.000000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}modified booths algorithim}}% +\end{pgfscope}% +\end{pgfpicture}% +\makeatother% +\endgroup% diff --git a/report/performance.pgf b/report/performance.pgf index 3c144ed..0d2aaab 100644 --- a/report/performance.pgf +++ b/report/performance.pgf @@ -756,7 +756,7 @@ \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% \pgfsetstrokecolor{textcolor}% \pgfsetfillcolor{textcolor}% -\pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}{\rmfamily\fontsize{12.000000}{14.400000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}Operations per Operand Length}}% +\pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}{\rmfamily\fontsize{12.000000}{14.400000}\selectfont\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}\catcode`\%=\active\def%{\%}Operations vs Operand Length}}% \end{pgfscope}% \begin{pgfscope}% \pgfsetbuttcap% diff --git a/report/report.aux b/report/report.aux index 4089a83..cba120b 100644 --- a/report/report.aux +++ b/report/report.aux @@ -1,2 +1,2 @@ \relax -\gdef \@abspage@last{4} +\gdef \@abspage@last{5} diff --git a/report/report.log b/report/report.log index a1f2625..bb9709f 100644 --- a/report/report.log +++ b/report/report.log @@ -1,4 +1,4 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024/Arch Linux) (preloaded format=pdflatex 2024.4.11) 11 APR 2024 23:55 +This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024/Arch Linux) (preloaded format=pdflatex 2024.4.11) 12 APR 2024 01:08 entering extended mode restricted \write18 enabled. %&-line parsing enabled. @@ -440,30 +440,30 @@ Underfull \hbox (badness 10000) in paragraph at lines 53--54 {/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}{/usr/share/texmf-dist/fonts /enc/dvips/base/8r.enc}{/usr/share/texmf-dist/fonts/enc/dvips/tex-gyre/q-rm.enc -}] (./performance.pgf +}] [2] (./performance.pgf LaTeX Font Info: External font `cmex10' loaded for size (Font) <5> on input line 90. ) -Overfull \hbox (9.55966pt too wide) in paragraph at lines 865--83 +Overfull \hbox (9.55966pt too wide) in paragraph at lines 865--82 [] [] -[2] (./speed_table.tex) (./result_table.tex) -Underfull \hbox (badness 10000) in paragraph at lines 1--86 - +(./iterations.pgf) +Overfull \hbox (9.55966pt too wide) in paragraph at lines 834--83 + [][] [] -[3] [4] (./report.aux) +(./speed_table.tex [3]) (./result_table.tex) [4] [5] (./report.aux) *********** LaTeX2e <2023-11-01> patch level 1 L3 programming layer <2024-02-20> *********** ) Here is how much of TeX's memory you used: - 10633 strings out of 476076 - 208621 string characters out of 5793775 - 1945187 words of memory out of 5000000 - 32534 multiletter control sequences out of 15000+600000 + 10639 strings out of 476076 + 208728 string characters out of 5793775 + 1944187 words of memory out of 5000000 + 32537 multiletter control sequences out of 15000+600000 589562 words of font info for 59 fonts, out of 8000000 for 9000 14 hyphenation exceptions out of 8191 87i,10n,93p,943b,448s stack positions out of 10000i,1000n,20000p,200000b,200000s @@ -473,10 +473,10 @@ exmf-dist/fonts/type1/public/amsfonts/cm/cmr12.pfb></usr/share/texmf-dist/fonts tex-gyre/qplb.pfb></usr/share/texmf-dist/fonts/type1/public/tex-gyre/qplr.pfb>< /usr/share/texmf-dist/fonts/type1/public/tex-gyre/qplri.pfb></usr/share/texmf-d ist/fonts/type1/urw/helvetic/uhvr8a.pfb> -Output written on report.pdf (4 pages, 183824 bytes). +Output written on report.pdf (5 pages, 185893 bytes). PDF statistics: - 57 PDF objects out of 1000 (max. 8388607) - 36 compressed objects within 1 object stream + 60 PDF objects out of 1000 (max. 8388607) + 38 compressed objects within 1 object stream 0 named destinations out of 1000 (max. 500000) 13 words of extra memory for PDF output out of 10000 (max. 10000000) diff --git a/report/report.pdf b/report/report.pdf Binary files differindex 7f67724..57a9aae 100644 --- a/report/report.pdf +++ b/report/report.pdf diff --git a/report/report.tex b/report/report.tex index 646bca8..6895f89 100644 --- a/report/report.tex +++ b/report/report.tex @@ -31,12 +31,12 @@ Analyzing Performance of Booth’s Algorithm and Modified Booth’s Algorithm} \begin{document} \maketitle \begin{abstract} -In this paper, the performance of Booth’s Algorithm is compared to modified Booth's Algorithm. Each multiplier is simulated in Python, and performance is observed by counting the number of add and subtract operations for various inputs. Results are analyzed and discussed to highlight the potential tradeoffs to consider when implimenting hardware multipliers. +In this paper, the performance of Booth’s Algorithm is compared to modified Booth's Algorithm. Each multiplier is simulated in Python, and performance is observed by counting the number of add and subtract operations for various inputs. Results are analyzed and discussed to highlight the potential tradeoffs to consider when deciding how hardware multiplication is implimented. \end{abstract} \section*{Introduction} Multiplication is among the most time consuming mathematical operations for processors. In many applications, the time it takes to multiply dramatically influences the speed of the program. Applications of digital signal processing (such as audio modification and image processing) require constant multiply and accumulate operations for functions such as fast fourier transformations and convolutions. Other applications are heavily dependent on multiplying large matrices, such as machine learning, 3D graphics and data analysis. In such scenarios, the speed of multiplication is vital. Consequently, most modern processors implement hardware multiplication. However, not all multiplication circuits are equal; there is often a stark contrast between performance and hardware complexity. To further complicate things, multiplication circuits perform differently depending on what numbers are being multiplied. -\section*{Algorithm Description and Implementation} -Booth's algorithim computes the multiplication of two signed two's compliment numbers. To avoid overflow, the result is placed into a register two times the size of the operands (or two registers the size of a single operand). Additionally, the algorithim must work with a space that is exended one bit more then the result. For the purpose of brevity, the result register and extra bit will be refered to as the workspace. First, the multiplier is placed into the workspace and shifted left by 1. From there, an operation is performed based off the last two bits, as shown by the following table: +\section*{Algorithm Description and Simulation} +Booth's algorithim computes the product of two signed numbers in two's compliment format. To avoid overflow, the result is placed into a register two times the size of the operands (or two registers the size of a single operand). Additionally, the algorithim must work with a space that is exended one bit more then the result. For the purpose of brevity, the result register and extra bit will be refered to as the workspace, as the algorithim will use this space for its computations. First, the multiplier is placed into the workspace and shifted left by 1. From there, an operation is performed based off the last two bits, as shown by the following table: \begin{table}[H] \centering \begin{tabular}{lll} @@ -76,13 +76,14 @@ The purpose of this paper is to analyze and compare the peformance of these two put phseudo code here \end{center} Additionally, after each iteration, the bits more significant then the workspace length had to be erased (the bitwise functions purposefully do not account for this). - +\newpage \section*{Results} \begin{center} - \input{performance.pgf} + \input{performance.pgf}\\ + \input{iterations.pgf}\\ + \input{speed_table.tex}\\ + \input{result_table.tex}\\ \end{center} -\input{speed_table.tex}\\ -\input{result_table.tex}\\ \section*{Analysis} \section*{Conclusion} |