\relax 
\citation{pacheco_introduction_2011}
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 5: }{\bf  \uppercase {Parallelization Using MESSAGE PASSING INTERFACE}}}{28}{}\protected@file@percent }
\newlabel{ch:MPI}{{5}{28}}
\@writefile{toc}{\contentsline {section}{\numberline {5.1}\bf  Introduction to MPI Utilization for Attack and Compliance Graph Generation}{28}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.2}\bf  Necessary Components}{28}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.1}\it  Serialization}{28}{}\protected@file@percent }
\citation{li_concurrency_2019}
\citation{9150145}
\citation{7087377}
\@writefile{toc}{\contentsline {section}{\numberline {5.3}\bf  Tasking Approach}{29}{}\protected@file@percent }
\newlabel{sec:Tasking-Approach}{{5.3}{29}}
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.1}\it  Introduction to the Tasking Approach}{29}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5.1}{\ignorespaces Task Overview of the Attack and Compliance Graph Generation Process\relax }}{30}{}\protected@file@percent }
\newlabel{fig:tasks}{{5.1}{30}}
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.2}\it  Algorithm Design}{31}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.3.2.1}Communication Structure}{31}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5.2}{\ignorespaces Node Allocation for each Task\relax }}{32}{}\protected@file@percent }
\newlabel{fig:node-alloc}{{5.2}{32}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.3.2.2}Task 0}{33}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.3.2.3}Task 1}{33}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5.3}{\ignorespaces Data Distribution of Task One\relax }}{34}{}\protected@file@percent }
\newlabel{fig:Task1-Data-Dist}{{5.3}{34}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.3.2.4}Task 2}{34}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.3.2.5}Task 3}{34}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5.4}{\ignorespaces Communication From Task 1 to Task 2 when the Number of Nodes Allocated is Equal\relax }}{35}{}\protected@file@percent }
\newlabel{fig:Task1-Case1}{{5.4}{35}}
\@writefile{lof}{\contentsline {figure}{\numberline {5.5}{\ignorespaces Communication From Task 1 to Task 2 when Task 1 Has More Nodes Allocated\relax }}{36}{}\protected@file@percent }
\newlabel{fig:Task1-Case2}{{5.5}{36}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.3.2.6}Task 4 and Task 5}{36}{}\protected@file@percent }
\newlabel{sec:T4T5}{{5.3.2.6}{36}}
\@writefile{lot}{\contentsline {table}{\numberline {5.1}{\ignorespaces MPI Tags for the MPI Tasking Approach\relax }}{37}{}\protected@file@percent }
\newlabel{table:tasking-tag}{{5.1}{37}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.3.2.7}MPI Tags}{37}{}\protected@file@percent }
\newlabel{sec:tasking-tag}{{5.3.2.7}{37}}
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.3}\it  Performance Expectations and Use Cases}{37}{}\protected@file@percent }
\newlabel{sec:Task-perf-expec}{{5.3.3}{37}}
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.4}\it  Results}{38}{}\protected@file@percent }
\newlabel{sec:Tasking-Results}{{5.3.4}{38}}
\citation{li_concurrency_2019}
\@writefile{toc}{\contentsline {section}{\numberline {5.4}\bf  Subgraphing Approach}{39}{}\protected@file@percent }
\newlabel{sec:Subgraphing_Approach}{{5.4}{39}}
\@writefile{lof}{\contentsline {figure}{\numberline {5.6}{\ignorespaces Example of a Not Applicable Exploit for the MPI Tasking Testing\relax }}{40}{}\protected@file@percent }
\newlabel{fig:NA-exp}{{5.6}{40}}
\@writefile{lof}{\contentsline {figure}{\numberline {5.7}{\ignorespaces Speedup and Efficiency of the MPI Tasking Approach for a Varying Number of Compute Nodes with an Increasing Problem Size\relax }}{40}{}\protected@file@percent }
\newlabel{fig:Spd-Eff-Task}{{5.7}{40}}
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.1}\it  Introduction to the Subgraphing Approach}{41}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.2}\it  Algorithm Design}{41}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5.8}{\ignorespaces Example Graph Using the MPI Subgraphing Approach\relax }}{42}{}\protected@file@percent }
\newlabel{fig:subg}{{5.8}{42}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.4.2.1}Worker Nodes}{42}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.4.2.2}Root Node}{43}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5.9}{\ignorespaces Frontier Merging and Data Distribution Process\relax }}{44}{}\protected@file@percent }
\newlabel{fig:front-merg}{{5.9}{44}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.4.2.3}Database Node}{44}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.4.2.4}MPI Tags}{44}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.3}\it  Performance Expectations and Use Cases}{44}{}\protected@file@percent }
\newlabel{sec:perf_expec_subg}{{5.4.3}{44}}
\citation{lawrence_livermore_national_laboratory_mpip_nodate}
\@writefile{lot}{\contentsline {table}{\numberline {5.2}{\ignorespaces MPI Tags for the MPI Subgraphing Approach\relax }}{45}{}\protected@file@percent }
\newlabel{table:subg-tag}{{5.2}{45}}
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.4}\it  Results}{45}{}\protected@file@percent }
\newlabel{sec:Subgraphing-Results}{{5.4.4}{45}}
\@writefile{lof}{\contentsline {figure}{\numberline {5.10}{\ignorespaces First iteration results of MPI Subgraphing in terms of Runtime\relax }}{46}{}\protected@file@percent }
\newlabel{fig:Subg_base}{{5.10}{46}}
\@writefile{lof}{\contentsline {figure}{\numberline {5.11}{\ignorespaces First iteration results of MPI Subgraphing in terms of Speedup and Efficiency\relax }}{47}{}\protected@file@percent }
\newlabel{fig:Subg_SE}{{5.11}{47}}
\@writefile{lof}{\contentsline {figure}{\numberline {5.12}{\ignorespaces Modified Subgraphing Example Graph with Two New Edges\relax }}{49}{}\protected@file@percent }
\newlabel{fig:subg_mod}{{5.12}{49}}
\@writefile{lof}{\contentsline {figure}{\numberline {5.13}{\ignorespaces Duplicate States Explored vs Actual Number of States for the 1-4 Service Tests\relax }}{50}{}\protected@file@percent }
\newlabel{fig:subg_dup}{{5.13}{50}}
\@writefile{lof}{\contentsline {figure}{\numberline {5.14}{\ignorespaces Speedup and Efficiency of MPI Subgraphing when using a DHT\relax }}{52}{}\protected@file@percent }
\newlabel{fig:subg_DHT_Spd}{{5.14}{52}}
\@writefile{lof}{\contentsline {figure}{\numberline {5.15}{\ignorespaces Runtime of MPI Subgraphing when using a DHT vs not using a DHT\relax }}{53}{}\protected@file@percent }
\newlabel{fig:subg_DHT_base}{{5.15}{53}}
\@setckpt{Chapter5}{
\setcounter{page}{54}
\setcounter{equation}{0}
\setcounter{enumi}{4}
\setcounter{enumii}{0}
\setcounter{enumiii}{0}
\setcounter{enumiv}{0}
\setcounter{footnote}{0}
\setcounter{mpfootnote}{0}
\setcounter{part}{0}
\setcounter{chapter}{5}
\setcounter{section}{4}
\setcounter{subsection}{4}
\setcounter{subsubsection}{0}
\setcounter{paragraph}{0}
\setcounter{subparagraph}{0}
\setcounter{figure}{15}
\setcounter{table}{2}
\setcounter{caption@flags}{2}
\setcounter{continuedfloat}{0}
\setcounter{subfigure}{0}
\setcounter{subtable}{0}
\setcounter{float@type}{8}
\setcounter{algorithm}{0}
\setcounter{ALG@line}{0}
\setcounter{ALG@rem}{0}
\setcounter{ALG@nested}{0}
\setcounter{ALG@Lnr}{2}
\setcounter{ALG@blocknr}{10}
\setcounter{ALG@storecount}{0}
\setcounter{ALG@tmpcounter}{0}
\setcounter{lofdepth}{1}
\setcounter{lotdepth}{1}
}
