MPI Tags
This commit is contained in:
parent
4089808bcf
commit
71ed2b2178
@ -1,13 +1,13 @@
|
||||
\relax
|
||||
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{39}{}\protected@file@percent }
|
||||
\newlabel{App:A}{{A}{39}}
|
||||
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{40}{}\protected@file@percent }
|
||||
\newlabel{App:B}{{B}{40}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{40}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{40}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{A Sub-subsection in an Appendix}{40}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{41}{}\protected@file@percent }
|
||||
\newlabel{App:A}{{A}{41}}
|
||||
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{42}{}\protected@file@percent }
|
||||
\newlabel{App:B}{{B}{42}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{42}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{42}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{A Sub-subsection in an Appendix}{42}{}\protected@file@percent }
|
||||
\@setckpt{Appendices}{
|
||||
\setcounter{page}{41}
|
||||
\setcounter{page}{43}
|
||||
\setcounter{equation}{0}
|
||||
\setcounter{enumi}{4}
|
||||
\setcounter{enumii}{0}
|
||||
|
||||
46
Chapter5.aux
46
Chapter5.aux
@ -14,31 +14,33 @@
|
||||
\newlabel{fig:tasks}{{5.1}{27}}
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {5.2}{\ignorespaces Node Allocation for each Task}}{28}{}\protected@file@percent }
|
||||
\newlabel{fig:node-alloc}{{5.2}{28}}
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{28}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{29}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Task 0}{29}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Task 1}{29}{}\protected@file@percent }
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {5.3}{\ignorespaces Data Distribution of Task One}}{29}{}\protected@file@percent }
|
||||
\newlabel{fig:Task1-Data-Dist}{{5.3}{29}}
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {5.4}{\ignorespaces Communication From Task 1 to Task 2 when the Number of Nodes Allocated is Equal}}{30}{}\protected@file@percent }
|
||||
\newlabel{fig:Task1-Case1}{{5.4}{30}}
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {5.3}{\ignorespaces Data Distribution of Task One}}{30}{}\protected@file@percent }
|
||||
\newlabel{fig:Task1-Data-Dist}{{5.3}{30}}
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Task 2}{30}{}\protected@file@percent }
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {5.5}{\ignorespaces Communication From Task 1 to Task 2 when Task 1 Has More Nodes Allocated}}{31}{}\protected@file@percent }
|
||||
\newlabel{fig:Task1-Case2}{{5.5}{31}}
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Task 3}{31}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Task 4 and Task 5}{31}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{MPI Tags}{31}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{32}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.4}\it Results}{32}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{32}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{32}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{32}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{32}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Worker Nodes}{32}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Root Node}{32}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Database Node}{32}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{32}{}\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}}{31}{}\protected@file@percent }
|
||||
\newlabel{fig:Task1-Case1}{{5.4}{31}}
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {5.5}{\ignorespaces Communication From Task 1 to Task 2 when Task 1 Has More Nodes Allocated}}{32}{}\protected@file@percent }
|
||||
\newlabel{fig:Task1-Case2}{{5.5}{32}}
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Task 3}{32}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Task 4 and Task 5}{32}{}\protected@file@percent }
|
||||
\newlabel{table:tasking-tag}{{5.3.2}{33}}
|
||||
\@writefile{lot}{\contentsline {table}{\numberline {5.1}{\ignorespaces MPI Tags for the MPI Tasking Approach}}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{MPI Tags}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.4}\it Results}{34}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{34}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{34}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{34}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{34}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Worker Nodes}{34}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Root Node}{34}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{Database Node}{34}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{34}{}\protected@file@percent }
|
||||
\@setckpt{Chapter5}{
|
||||
\setcounter{page}{33}
|
||||
\setcounter{page}{35}
|
||||
\setcounter{equation}{0}
|
||||
\setcounter{enumi}{4}
|
||||
\setcounter{enumii}{0}
|
||||
@ -54,7 +56,7 @@
|
||||
\setcounter{paragraph}{0}
|
||||
\setcounter{subparagraph}{0}
|
||||
\setcounter{figure}{5}
|
||||
\setcounter{table}{0}
|
||||
\setcounter{table}{1}
|
||||
\setcounter{lofdepth}{1}
|
||||
\setcounter{lotdepth}{1}
|
||||
}
|
||||
|
||||
30
Chapter5.tex
30
Chapter5.tex
@ -62,6 +62,7 @@ The underlying communication structure for the tasking approach relies on a pseu
|
||||
|
||||
\TUsubsubsection{Task 0}
|
||||
Task 0 is performed by the root node, and is a conditional task; it is not guaranteed to be executed at each pipeline iteration. Task 0 is only executed when the frontier is empty, but the database still holds unexplored states. This occurs when there are memory constraints, and database storage is performed during execution to offload the demand, as discussed in Section \ref{sec:db-stor}. After the completion of Task 0, the frontier has a state popped, and the root node sends the state to n$_1$. If the frontier is empty, the root node sends the finalize signal to all nodes.
|
||||
|
||||
\TUsubsubsection{Task 1}
|
||||
Task 1 begins by distributing the workload between nodes based on the local task communicator rank. Rather than splitting the exploit list at the root node and sending sub-lists to each node allocated to Task 1, each node checks its local communicator rank and performs a modulo operation with the number of nodes allocated to determine whether it should proceed with the current iteration of the exploit loop. Since the exploit list is static, each node has the exploit list initialized prior to the generation process, and communication cost can be avoided from sending sub-lists to each node. Each node in Task 1 works to compile a reduced exploit list that is applicable to the current network state. A breakdown of the Task 1 distribution can be seen in Figure \ref{fig:Task1-Data-Dist}.
|
||||
|
||||
@ -90,12 +91,41 @@ Once the computation work of Task 1 is completed, each node must send their comp
|
||||
|
||||
\TUsubsubsection{Task 2}
|
||||
Each node in Task 2 iterates through the received partial applicable exploit list and creates new states with edges to the current state. However, Synchronous Firing work is performed during this process, and syncing multiple exploits that could be distributed across multiple nodes leads to additional overhead and complexity. To prevent these difficulties, each node checks its partial applicable exploit list for exploits that are part of a group, removes these exploits from its list, and sends a new partial list to the Task 2 local communicator root. Since the Task 2 local root now contains all group exploits, it can execute the Synchronous Firing work without additional communication or synchronization between other MPI nodes in the Task 2 stage. Other than the additional setup steps required for Synchronous Firing for the local root, all work performed during this task by all MPI nodes is that seen from the Synchronous Firing figure (Figure \ref{fig:sync-fire}).
|
||||
|
||||
\TUsubsubsection{Task 3}
|
||||
Task 3 is performed only by the root node, and no division of work is necessary. The root node will continuously check for new states until the Task 2 finalize signal is detected. This task consists of setting the new state's ID, adding it to the frontier, adding its information to the instance, and inserting information into the hash map. When the root node has processed all states and has received the Task 2 finalize signal, it will complete Task 3 by sending the instance and/or frontier to Task 4 and/or 5, respectively if applicable, then proceeds to Task 0.
|
||||
|
||||
\TUsubsubsection{Task 4 and Task 5}
|
||||
Intermediate database operations, though not frequent and may never occur for small graphs, are lengthy and time-consuming when they do occur. As discussed in Section \ref{sec:db-stor}, the two main memory consumers are the frontier and the instance, both of which are contained by the root node. Since the database storage requests are blocking, the pipeline would halt for a lengthy period of time while waiting for the root node to finish potentially two large storages. Tasks 4 and 5 work to alleviate the stall by executing independently of the regular pipeline execution flow. Since Tasks 4 and 5 do not send any data, no other tasks must wait for these tasks to complete. The root node can then asynchronously send the frontier and instance to the appropriate nodes as needed, clear its memory, and continue execution without delay.
|
||||
|
||||
\TUsubsubsection{MPI Tags}
|
||||
To ensure that the intended message is received by each node, the MPI message envelopes have their tag fields specified. When a node sends a message, it specifies a tag that corresponds with the data and intent for which it is sent. The tag values were arbitrarily chosen, and tags can be added to the existing list or removed as desired. When receiving a message, a node can specify to only look for messages that have an envelope with a matching tag field. Not only do tags ensure that nodes are receiving the correct messages, they also reduce complexity for program design. Table \ref{table:tasking-tag} displays the list of tags used for the MPI Tasking approach.
|
||||
|
||||
\begin{table}[] \label{table:tasking-tag}
|
||||
\centering
|
||||
\begin{tabular}{|l|l|}
|
||||
\hline
|
||||
\textbf{Tag} & \textbf{Description} \\ \hline
|
||||
2 & Task 2 Finalize Signal \\ \hline
|
||||
3 & Fact for Hash Map Update \\ \hline
|
||||
4 & NetworkState for Hash Map Update \\ \hline
|
||||
5 & NetworkState to be Added to the Frontier \\ \hline
|
||||
6 & Current NetworkState Reference for Edge Creation \\ \hline
|
||||
7 & Factbases for Task 4 \\ \hline
|
||||
8 & Edges for Task 4 \\ \hline
|
||||
9 & Group Exploit Vectors for Local Root in Task 2 \\ \hline
|
||||
10 & Exploit Reference for Task 3 Work \\ \hline
|
||||
11 & AssetGroup Reference for Task 3 Work \\ \hline
|
||||
14 & Continue Signal \\ \hline
|
||||
15 & Finalize Signal \\ \hline
|
||||
20 & Current NetworkState Reference for Task 1 \\ \hline
|
||||
21 & Applicable Exploit Vector Scatter for Task 1 Case 2 \\ \hline
|
||||
30 & Applicable Exploit Vector Send to Task 2 \\ \hline
|
||||
40 & NetworkState Send to Task 2 \\ \hline
|
||||
50 & NetworkState to Store in Task 5 \\ \hline
|
||||
\end{tabular}
|
||||
\caption{MPI Tags for the MPI Tasking Approach}
|
||||
\end{table}
|
||||
|
||||
\TUsubsection{Performance Expectations}
|
||||
|
||||
|
||||
36
Chapter6.aux
36
Chapter6.aux
@ -1,23 +1,23 @@
|
||||
\relax
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {6.1}\bf Small Networks}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.2}\it Results}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {6.2}\bf Large Networks}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}\it Results}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.2}\it Results}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{33}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{34}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.2}\it Results}{34}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{34}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {6.1}\bf Small Networks}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.2}\it Results}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {6.2}\bf Large Networks}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}\it Results}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.2}\it Results}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{36}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.2}\it Results}{36}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{36}{}\protected@file@percent }
|
||||
\@setckpt{Chapter6}{
|
||||
\setcounter{page}{35}
|
||||
\setcounter{page}{37}
|
||||
\setcounter{equation}{0}
|
||||
\setcounter{enumi}{4}
|
||||
\setcounter{enumii}{0}
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
\relax
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {7.1}\bf Future Work}{35}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{37}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {7.1}\bf Future Work}{37}{}\protected@file@percent }
|
||||
\@setckpt{Chapter7}{
|
||||
\setcounter{page}{36}
|
||||
\setcounter{page}{38}
|
||||
\setcounter{equation}{0}
|
||||
\setcounter{enumi}{4}
|
||||
\setcounter{enumii}{0}
|
||||
|
||||
@ -32,9 +32,9 @@
|
||||
\bibcite{cook_rage_2018}{9}
|
||||
\bibcite{cook_scalable_2016}{10}
|
||||
\@writefile{toc}{{\hfill \ }}
|
||||
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{36}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{38}{}\protected@file@percent }
|
||||
\@writefile{toc}{\addvspace {10pt}}
|
||||
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{36}{}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{38}{}\protected@file@percent }
|
||||
\@writefile{toc}{{\hfill \ }}
|
||||
\bibcite{CVE-2019-10747}{11}
|
||||
\bibcite{dai_fpgp_2016}{12}
|
||||
@ -54,4 +54,4 @@
|
||||
\bibcite{zhang_boosting_2017}{26}
|
||||
\bibstyle{plain}
|
||||
\@input{Appendices.aux}
|
||||
\gdef \@abspage@last{50}
|
||||
\gdef \@abspage@last{52}
|
||||
|
||||
@ -6,6 +6,6 @@
|
||||
\contentsline {figure}{\numberline {4.3}{\ignorespaces Synchronous Firing in the Graph Generation Process}}{23}{}%
|
||||
\contentsline {figure}{\numberline {5.1}{\ignorespaces Task Overview of the Attack Graph Generation Process}}{27}{}%
|
||||
\contentsline {figure}{\numberline {5.2}{\ignorespaces Node Allocation for each Task}}{28}{}%
|
||||
\contentsline {figure}{\numberline {5.3}{\ignorespaces Data Distribution of Task One}}{29}{}%
|
||||
\contentsline {figure}{\numberline {5.4}{\ignorespaces Communication From Task 1 to Task 2 when the Number of Nodes Allocated is Equal}}{30}{}%
|
||||
\contentsline {figure}{\numberline {5.5}{\ignorespaces Communication From Task 1 to Task 2 when Task 1 Has More Nodes Allocated}}{31}{}%
|
||||
\contentsline {figure}{\numberline {5.3}{\ignorespaces Data Distribution of Task One}}{30}{}%
|
||||
\contentsline {figure}{\numberline {5.4}{\ignorespaces Communication From Task 1 to Task 2 when the Number of Nodes Allocated is Equal}}{31}{}%
|
||||
\contentsline {figure}{\numberline {5.5}{\ignorespaces Communication From Task 1 to Task 2 when Task 1 Has More Nodes Allocated}}{32}{}%
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
This is pdfTeX, Version 3.141592653-2.6-1.40.23 (TeX Live 2021/Arch Linux) (preloaded format=pdflatex 2022.2.14) 18 MAR 2022 22:14
|
||||
This is pdfTeX, Version 3.141592653-2.6-1.40.23 (TeX Live 2021/Arch Linux) (preloaded format=pdflatex 2022.2.14) 20 MAR 2022 13:08
|
||||
entering extended mode
|
||||
restricted \write18 enabled.
|
||||
%&-line parsing enabled.
|
||||
@ -295,55 +295,60 @@ Package pdftex.def Info: ./Chapter5_img/node-alloc.png used on input line 54.
|
||||
File: ./Chapter5_img/Task1-Data-Dist.png Graphic file (type png)
|
||||
<use ./Chapter5_img/Task1-Data-Dist.png>
|
||||
Package pdftex.def Info: ./Chapter5_img/Task1-Data-Dist.png used on input line
|
||||
68.
|
||||
70.
|
||||
(pdftex.def) Requested size: 469.75499pt x 155.42674pt.
|
||||
[29 <./Chapter5_img/Task1-Data-Dist.PNG>]
|
||||
<./Chapter5_img/Task1-Case1.png, id=148, 586.44093pt x 339.51843pt>
|
||||
[29]
|
||||
<./Chapter5_img/Task1-Case1.png, id=147, 586.44093pt x 339.51843pt>
|
||||
File: ./Chapter5_img/Task1-Case1.png Graphic file (type png)
|
||||
<use ./Chapter5_img/Task1-Case1.png>
|
||||
Package pdftex.def Info: ./Chapter5_img/Task1-Case1.png used on input line 77.
|
||||
Package pdftex.def Info: ./Chapter5_img/Task1-Case1.png used on input line 79.
|
||||
|
||||
(pdftex.def) Requested size: 469.75499pt x 271.9622pt.
|
||||
<./Chapter5_img/Task1-Case2.png, id=149, 702.37407pt x 414.79968pt>
|
||||
<./Chapter5_img/Task1-Case2.png, id=148, 702.37407pt x 414.79968pt>
|
||||
File: ./Chapter5_img/Task1-Case2.png Graphic file (type png)
|
||||
<use ./Chapter5_img/Task1-Case2.png>
|
||||
Package pdftex.def Info: ./Chapter5_img/Task1-Case2.png used on input line 85.
|
||||
Package pdftex.def Info: ./Chapter5_img/Task1-Case2.png used on input line 86.
|
||||
|
||||
(pdftex.def) Requested size: 469.75499pt x 277.43332pt.
|
||||
[30 <./Chapter5_img/Task1-Case1.PNG>] [31 <./Chapter5_img/Task1-Case2.PNG>]) [
|
||||
32]
|
||||
[30 <./Chapter5_img/Task1-Data-Dist.PNG>] [31 <./Chapter5_img/Task1-Case1.PNG>
|
||||
] [32 <./Chapter5_img/Task1-Case2.PNG>]
|
||||
|
||||
LaTeX Warning: No positions in optional float specifier.
|
||||
Default added (so using `tbp') on input line 104.
|
||||
|
||||
[33]) [34]
|
||||
\openout2 = `Chapter6.aux'.
|
||||
|
||||
(./Chapter6.tex
|
||||
CHAPTER 6.
|
||||
[33
|
||||
[35
|
||||
|
||||
|
||||
|
||||
|
||||
]) [34]
|
||||
]) [36]
|
||||
\openout2 = `Chapter7.aux'.
|
||||
|
||||
(./Chapter7.tex
|
||||
CHAPTER 7.
|
||||
) [35
|
||||
) [37
|
||||
|
||||
|
||||
|
||||
|
||||
] (./Schrick-Noah_MS-Thesis.bbl [36
|
||||
] (./Schrick-Noah_MS-Thesis.bbl [38
|
||||
|
||||
|
||||
|
||||
] [37])
|
||||
] [39])
|
||||
\c@appendixno=\count269
|
||||
[38]
|
||||
[40]
|
||||
\openout2 = `Appendices.aux'.
|
||||
|
||||
(./Appendices.tex [39
|
||||
(./Appendices.tex [41
|
||||
|
||||
])
|
||||
[40] (./Schrick-Noah_MS-Thesis.aux (./Chapter1.aux) (./Chapter2.aux)
|
||||
[42] (./Schrick-Noah_MS-Thesis.aux (./Chapter1.aux) (./Chapter2.aux)
|
||||
(./Chapter3.aux) (./Chapter4.aux) (./Chapter5.aux) (./Chapter6.aux)
|
||||
(./Chapter7.aux) (./Appendices.aux)) )
|
||||
(\end occurred inside a group at level 6)
|
||||
@ -356,13 +361,13 @@ CHAPTER 7.
|
||||
### semi simple group (level 1) entered at line 52 (\begingroup)
|
||||
### bottom level
|
||||
Here is how much of TeX's memory you used:
|
||||
2225 strings out of 478353
|
||||
40165 string characters out of 5854635
|
||||
345098 words of memory out of 5000000
|
||||
20287 multiletter control sequences out of 15000+600000
|
||||
2226 strings out of 478353
|
||||
40184 string characters out of 5854635
|
||||
345111 words of memory out of 5000000
|
||||
20288 multiletter control sequences out of 15000+600000
|
||||
407326 words of font info for 40 fonts, out of 8000000 for 9000
|
||||
1141 hyphenation exceptions out of 8191
|
||||
55i,7n,62p,1109b,1305s stack positions out of 5000i,500n,10000p,200000b,80000s
|
||||
55i,8n,62p,1109b,1305s stack positions out of 5000i,500n,10000p,200000b,80000s
|
||||
{/usr/share/texmf-dist/fonts/enc/dvips/cm-super/cm-super-ts1.en
|
||||
c}</usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb></usr/share/
|
||||
texmf-dist/fonts/type1/public/amsfonts/cm/cmmi12.pfb></usr/share/texmf-dist/fon
|
||||
@ -371,10 +376,10 @@ ts/type1/public/amsfonts/cm/cmr12.pfb></usr/share/texmf-dist/fonts/type1/public
|
||||
y10.pfb></usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cmti12.pfb></usr/
|
||||
share/texmf-dist/fonts/type1/public/amsfonts/cm/cmtt12.pfb></usr/share/texmf-di
|
||||
st/fonts/type1/public/cm-super/sfrm1200.pfb>
|
||||
Output written on Schrick-Noah_MS-Thesis.pdf (50 pages, 594171 bytes).
|
||||
Output written on Schrick-Noah_MS-Thesis.pdf (52 pages, 598425 bytes).
|
||||
PDF statistics:
|
||||
226 PDF objects out of 1000 (max. 8388607)
|
||||
139 compressed objects within 2 object streams
|
||||
232 PDF objects out of 1000 (max. 8388607)
|
||||
143 compressed objects within 2 object streams
|
||||
0 named destinations out of 1000 (max. 500000)
|
||||
51 words of extra memory for PDF output out of 10000 (max. 10000000)
|
||||
|
||||
|
||||
@ -1 +1,2 @@
|
||||
{\vspace {\baselineskip }}
|
||||
\contentsline {table}{\numberline {5.1}{\ignorespaces MPI Tags for the MPI Tasking Approach}}{33}{}%
|
||||
|
||||
Binary file not shown.
@ -49,49 +49,49 @@
|
||||
\contentsline {section}{\numberline {5.3}\bf Tasking Approach}{26}{}%
|
||||
\contentsline {subsection}{\numberline {5.3.1}\it Introduction to the Tasking Approach}{26}{}%
|
||||
\contentsline {subsection}{\numberline {5.3.2}\it Algorithm Design}{26}{}%
|
||||
\contentsline {subsubsection}{Communication Structure}{28}{}%
|
||||
\contentsline {subsubsection}{Communication Structure}{29}{}%
|
||||
\contentsline {subsubsection}{Task 0}{29}{}%
|
||||
\contentsline {subsubsection}{Task 1}{29}{}%
|
||||
\contentsline {subsubsection}{Task 2}{30}{}%
|
||||
\contentsline {subsubsection}{Task 3}{31}{}%
|
||||
\contentsline {subsubsection}{Task 4 and Task 5}{31}{}%
|
||||
\contentsline {subsubsection}{MPI Tags}{31}{}%
|
||||
\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{32}{}%
|
||||
\contentsline {subsection}{\numberline {5.3.4}\it Results}{32}{}%
|
||||
\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{32}{}%
|
||||
\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{32}{}%
|
||||
\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{32}{}%
|
||||
\contentsline {subsubsection}{Communication Structure}{32}{}%
|
||||
\contentsline {subsubsection}{Worker Nodes}{32}{}%
|
||||
\contentsline {subsubsection}{Root Node}{32}{}%
|
||||
\contentsline {subsubsection}{Database Node}{32}{}%
|
||||
\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{32}{}%
|
||||
\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{33}{}%
|
||||
\contentsline {section}{\numberline {6.1}\bf Small Networks}{33}{}%
|
||||
\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{33}{}%
|
||||
\contentsline {subsection}{\numberline {6.1.2}\it Results}{33}{}%
|
||||
\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{33}{}%
|
||||
\contentsline {section}{\numberline {6.2}\bf Large Networks}{33}{}%
|
||||
\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{33}{}%
|
||||
\contentsline {subsection}{\numberline {6.2.2}\it Results}{33}{}%
|
||||
\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{33}{}%
|
||||
\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{33}{}%
|
||||
\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{33}{}%
|
||||
\contentsline {subsection}{\numberline {6.3.2}\it Results}{33}{}%
|
||||
\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{33}{}%
|
||||
\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{33}{}%
|
||||
\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{34}{}%
|
||||
\contentsline {subsection}{\numberline {6.4.2}\it Results}{34}{}%
|
||||
\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{34}{}%
|
||||
\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{35}{}%
|
||||
\contentsline {section}{\numberline {7.1}\bf Future Work}{35}{}%
|
||||
\contentsline {subsubsection}{Task 3}{32}{}%
|
||||
\contentsline {subsubsection}{Task 4 and Task 5}{32}{}%
|
||||
\contentsline {subsubsection}{MPI Tags}{33}{}%
|
||||
\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{33}{}%
|
||||
\contentsline {subsection}{\numberline {5.3.4}\it Results}{34}{}%
|
||||
\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{34}{}%
|
||||
\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{34}{}%
|
||||
\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{34}{}%
|
||||
\contentsline {subsubsection}{Communication Structure}{34}{}%
|
||||
\contentsline {subsubsection}{Worker Nodes}{34}{}%
|
||||
\contentsline {subsubsection}{Root Node}{34}{}%
|
||||
\contentsline {subsubsection}{Database Node}{34}{}%
|
||||
\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{34}{}%
|
||||
\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{35}{}%
|
||||
\contentsline {section}{\numberline {6.1}\bf Small Networks}{35}{}%
|
||||
\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{35}{}%
|
||||
\contentsline {subsection}{\numberline {6.1.2}\it Results}{35}{}%
|
||||
\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{35}{}%
|
||||
\contentsline {section}{\numberline {6.2}\bf Large Networks}{35}{}%
|
||||
\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{35}{}%
|
||||
\contentsline {subsection}{\numberline {6.2.2}\it Results}{35}{}%
|
||||
\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{35}{}%
|
||||
\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{35}{}%
|
||||
\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{35}{}%
|
||||
\contentsline {subsection}{\numberline {6.3.2}\it Results}{35}{}%
|
||||
\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{35}{}%
|
||||
\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{35}{}%
|
||||
\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{36}{}%
|
||||
\contentsline {subsection}{\numberline {6.4.2}\it Results}{36}{}%
|
||||
\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{36}{}%
|
||||
\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{37}{}%
|
||||
\contentsline {section}{\numberline {7.1}\bf Future Work}{37}{}%
|
||||
{\hfill \ }
|
||||
\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{36}{}%
|
||||
\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{38}{}%
|
||||
\addvspace {10pt}
|
||||
\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{36}{}%
|
||||
\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{38}{}%
|
||||
{\hfill \ }
|
||||
\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{39}{}%
|
||||
\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{40}{}%
|
||||
\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{40}{}%
|
||||
\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{40}{}%
|
||||
\contentsline {subsubsection}{A Sub-subsection in an Appendix}{40}{}%
|
||||
\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{41}{}%
|
||||
\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{42}{}%
|
||||
\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{42}{}%
|
||||
\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{42}{}%
|
||||
\contentsline {subsubsection}{A Sub-subsection in an Appendix}{42}{}%
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user