diff --git a/.~lock.mpiP_timing.ods# b/.~lock.mpiP_timing.ods# new file mode 100644 index 0000000..ef08c93 --- /dev/null +++ b/.~lock.mpiP_timing.ods# @@ -0,0 +1 @@ +,noah,NovaArchSys,20.04.2022 11:33,file:///home/noah/.config/libreoffice/4; \ No newline at end of file diff --git a/Chapter5.aux b/Chapter5.aux index 1a9de40..f569a2a 100644 --- a/Chapter5.aux +++ b/Chapter5.aux @@ -75,12 +75,19 @@ \newlabel{fig:subg_mod}{{5.15}{51}} \@writefile{lof}{\contentsline {figure}{\numberline {5.16}{\ignorespaces Duplicate States Explored vs Actual Number of States for the 1-4 Service Tests\relax }}{52}{}\protected@file@percent } \newlabel{fig:subg_dup}{{5.16}{52}} +\@writefile{lot}{\contentsline {table}{\numberline {5.3}{\ignorespaces MPI Communication Time Percentage in Relation to the Overall Program Runtime for the 1 Service Test\relax }}{53}{}\protected@file@percent } +\newlabel{table:1_serv_comm}{{5.3}{53}} +\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.5}\it Subgraphing Result Analysis}{53}{}\protected@file@percent } +\newlabel{sec:Subg_Discuss}{{5.4.5}{53}} \@writefile{lof}{\contentsline {figure}{\numberline {5.17}{\ignorespaces Speedup and Efficiency of MPI Subgraphing when using a DHT\relax }}{54}{}\protected@file@percent } \newlabel{fig:subg_DHT_Spd}{{5.17}{54}} \@writefile{lof}{\contentsline {figure}{\numberline {5.18}{\ignorespaces Runtime of MPI Subgraphing when using a DHT vs not using a DHT\relax }}{55}{}\protected@file@percent } \newlabel{fig:subg_DHT_base}{{5.18}{55}} +\@writefile{lot}{\contentsline {table}{\numberline {5.4}{\ignorespaces MPI Communication Time Percentage in Relation to the Overall Program Runtime for the 4 Service Test\relax }}{55}{}\protected@file@percent } +\newlabel{table:4_serv_comm}{{5.4}{55}} +\citation{7087377} \@setckpt{Chapter5}{ -\setcounter{page}{56} +\setcounter{page}{57} \setcounter{equation}{0} \setcounter{enumi}{4} \setcounter{enumii}{0} @@ -91,12 +98,12 @@ \setcounter{part}{0} \setcounter{chapter}{5} \setcounter{section}{4} -\setcounter{subsection}{4} +\setcounter{subsection}{5} \setcounter{subsubsection}{0} \setcounter{paragraph}{0} \setcounter{subparagraph}{0} \setcounter{figure}{18} -\setcounter{table}{2} +\setcounter{table}{4} \setcounter{caption@flags}{2} \setcounter{continuedfloat}{0} \setcounter{subfigure}{0} diff --git a/Chapter5.tex b/Chapter5.tex index 3c27d2e..ea5cc8b 100644 --- a/Chapter5.tex +++ b/Chapter5.tex @@ -103,7 +103,7 @@ To ensure that the intended message is received by each node, the MPI message en \begin{table}[] \centering - \begin{tabular}{|l|l|} + \begin{tabular}{|c|c|} \hline \textbf{Tag} & \textbf{Description} \\ \hline 2 & Task 2 Finalize Signal \\ \hline @@ -215,7 +215,7 @@ Similar to Section \ref{sec:tasking-tag} that discussed the usage of MPI Tags fo \begin{table}[] \centering - \begin{tabular}{|l|l|} + \begin{tabular}{|c|c|} \hline \textbf{Tag} & \textbf{Description} \\ \hline 1 & New State from Root to Workers \\ \hline @@ -298,4 +298,57 @@ To minimize the duplicate work performed, a second approach using a distributed \label{fig:subg_DHT_base} \end{figure} -Implementing the DHT did prevent duplicate work, but the communication cost from repeated DHT queries by each worker node was far greater than the serial approach, and was also greater than the first approach for MPI Subgraphing without the DHT. As a result, the MPI Subgraphing approach is not viable as it stands. Future improvements or entire reworking will need to be performed, and this is discussed further in Section \ref{sec:FW}. +\TUsubsection{Subgraphing Result Analysis} \label{sec:Subg_Discuss} +Implementing the DHT did prevent duplicate work, but the communication cost from repeated DHT queries by each worker node was far greater than the serial approach, and was also greater than the first approach for MPI Subgraphing without the DHT. Table \ref{table:1_serv_comm} displays the communication cost incurred when using the DHT in the MPI Subgraphing approach with the 1 Service test. Likewise, Table \ref{table:4_serv_comm} displays the communication cost with the 4 Service test. The minimum, maximum, and average MPI communication time in relation to the entire program is high in all cases, and causes a large increase in the overall runtime. + +\begin{table}[] + \centering + \begin{tabular}{|c|c|c|c|c|} + \hline + \multicolumn{5}{|c|}{\textbf{1 Service Test, Synchronous Firing Enabled}} \\ \hline + \multicolumn{1}{|c|}{\# Compute Nodes} & \multicolumn{1}{|c|}{Min \%MPI Time} & \multicolumn{1}{|c|}{Max \%MPI Time} & \multicolumn{1}{|c|}{Avg \%MPI Time} & \multicolumn{1}{|c|}{Std Dev} \\ \hline + \multicolumn{1}{|c|}{2} & \multicolumn{1}{|c|}{78.23} & \multicolumn{1}{|c|}{84.68} & \multicolumn{1}{|c|}{81.46} & \multicolumn{1}{|c|}{4.56} \\ \hline + \multicolumn{1}{|c|}{3} & \multicolumn{1}{|c|}{78.54} & \multicolumn{1}{|c|}{99.64} & \multicolumn{1}{|c|}{87.92} & \multicolumn{1}{|c|}{10.74} \\ \hline + \multicolumn{1}{|c|}{4} & \multicolumn{1}{|c|}{80.13} & \multicolumn{1}{|c|}{99.12} & \multicolumn{1}{|c|}{90.04} & \multicolumn{1}{|c|}{9.27} \\ \hline + \multicolumn{1}{|c|}{5} & \multicolumn{1}{|c|}{86.07} & \multicolumn{1}{|c|}{99.66} & \multicolumn{1}{|c|}{92.72} & \multicolumn{1}{|c|}{6.68} \\ \hline + \multicolumn{1}{|c|}{6} & \multicolumn{1}{|c|}{82.94} & \multicolumn{1}{|c|}{98.9} & \multicolumn{1}{|c|}{92.72} & \multicolumn{1}{|c|}{6.92} \\ \hline + \multicolumn{1}{|c|}{7} & \multicolumn{1}{|c|}{82.81} & \multicolumn{1}{|c|}{99.17} & \multicolumn{1}{|c|}{92.85} & \multicolumn{1}{|c|}{5.83} \\ \hline + \multicolumn{1}{|c|}{8} & \multicolumn{1}{|c|}{83.58} & \multicolumn{1}{|c|}{99.35} & \multicolumn{1}{|c|}{94.19} & \multicolumn{1}{|c|}{5.91} \\ \hline + \multicolumn{1}{|c|}{9} & \multicolumn{1}{|c|}{82.92} & \multicolumn{1}{|c|}{99.58} & \multicolumn{1}{|c|}{94.85} & \multicolumn{1}{|c|}{6.76} \\ \hline + \multicolumn{1}{|c|}{10} & \multicolumn{1}{|c|}{84.02} & \multicolumn{1}{|c|}{98.98} & \multicolumn{1}{|c|}{95.10} & \multicolumn{1}{|c|}{5.19} \\ \hline + \multicolumn{1}{|c|}{11} & \multicolumn{1}{|c|}{84.41} & \multicolumn{1}{|c|}{99.25} & \multicolumn{1}{|c|}{95.55} & \multicolumn{1}{|c|}{5.06} \\ \hline + \multicolumn{1}{|c|}{12} & \multicolumn{1}{|c|}{84.82} & \multicolumn{1}{|c|}{99.68} & \multicolumn{1}{|c|}{96.49} & \multicolumn{1}{|c|}{4.83} \\ \hline + \end{tabular} + \caption{MPI Communication Time Percentage in Relation to the Overall Program Runtime for the 1 Service Test} + \label{table:1_serv_comm} +\end{table} + +\begin{table}[] + \centering + \begin{tabular}{|c|c|c|c|c|} + \hline + \multicolumn{5}{|c|}{\textbf{4 Service Test, Synchronous Firing Enabled}} \\ \hline + \multicolumn{1}{|c|}{\# Compute Nodes} & \multicolumn{1}{|c|}{Min \%MPI Time} & \multicolumn{1}{|c|}{Max \%MPI Time} & \multicolumn{1}{|c|}{Avg \%MPI Time} & Std Dev \\ \hline + \multicolumn{1}{|c|}{2} & \multicolumn{1}{|c|}{89.13} & \multicolumn{1}{|c|}{91.53} & \multicolumn{1}{|c|}{90.33} & 1.70 \\ \hline + \multicolumn{1}{|c|}{3} & \multicolumn{1}{|c|}{89.18} & \multicolumn{1}{|c|}{99.99} & \multicolumn{1}{|c|}{93.60} & 5.67 \\ \hline + \multicolumn{1}{|c|}{4} & \multicolumn{1}{|c|}{90.41} & \multicolumn{1}{|c|}{99.99} & \multicolumn{1}{|c|}{94.44} & 4.53 \\ \hline + \multicolumn{1}{|c|}{5} & \multicolumn{1}{|c|}{91.4} & \multicolumn{1}{|c|}{99.98} & \multicolumn{1}{|c|}{95.44} & 3.36 \\ \hline + \multicolumn{1}{|c|}{6} & \multicolumn{1}{|c|}{89.01} & \multicolumn{1}{|c|}{99.97} & \multicolumn{1}{|c|}{94.11} & 3.59 \\ \hline + \multicolumn{1}{|c|}{7} & \multicolumn{1}{|c|}{91.41} & \multicolumn{1}{|c|}{99.99} & \multicolumn{1}{|c|}{96.58} & 2.63 \\ \hline + \multicolumn{1}{|c|}{8} & \multicolumn{1}{|c|}{89.57} & \multicolumn{1}{|c|}{99.98} & \multicolumn{1}{|c|}{96.06} & 3.08 \\ \hline + \multicolumn{1}{|c|}{9} & \multicolumn{1}{|c|}{90.94} & \multicolumn{1}{|c|}{99.98} & \multicolumn{1}{|c|}{96.77} & 2.83 \\ \hline + \multicolumn{1}{|c|}{10} & \multicolumn{1}{|c|}{89.2} & \multicolumn{1}{|c|}{99.97} & \multicolumn{1}{|c|}{96.02} & 3.29 \\ \hline + \multicolumn{1}{|c|}{11} & \multicolumn{1}{|c|}{89.1} & \multicolumn{1}{|c|}{99.97} & \multicolumn{1}{|c|}{96.46} & 3.25 \\ \hline + \multicolumn{1}{|c|}{12} & \multicolumn{1}{|c|}{89.3} & \multicolumn{1}{|c|}{99.97} & \multicolumn{1}{|c|}{96.89} & 2.83 \\ \hline + \end{tabular} + \caption{MPI Communication Time Percentage in Relation to the Overall Program Runtime for the 4 Service Test} + \label{table:4_serv_comm} +\end{table} + +When a DHT is not used, Figure \ref{fig:subg_dup} displays the amount of duplicate work that is performed. Section \ref{sec:Subgraphing-Results} discusses these results, and also describes that 35{\%} of the total program runtime is comprised entirely from worker nodes waiting for the root node to finish cleaning the duplicate work. + +However, despite the results from both of these subgraphing approaches, the subgraphing approach can be improved through several means. This work took a first step, na\"ive approach when not using a DHT. Other than using markers to denote node local frontiers in the root frontier, no sophisticated metric is used for distributing starting states to compute nodes. The approach used is to simply pop a state from the queue and send it to a compute node. This work also discussed that if no marker was available for a compute node, a random state would be distributed instead. A better, more sophisticated metric would likely result in increased performance. The usage of the DHT can also likely be improved. When discovering new states, a compute node would check the DHT to see if the state had already been discovered. Since this query is performed on all new state discoveries, there is a large increase in overall runtime due to the communication cost. Better usage of the DHT can likely be implemented. + +Other solutions can be implemented to minimize the duplicate work performed by MPI compute nodes. As discussed in Section \ref{sec:related_works}, the authors of \cite{7087377} presented a different approach for a distributed algorithm, but they made use of a virtual shared memory abstraction. A similar approach can be attempted for this subgraphing implementation. + +Though the subgraphing approach presented by this work did not lead to a speedup in attack and compliance graph generation, it is believed that further tuning, better work distribution metrics, and/or better communication tactics can lead to increased performance. This work has laid the initial foundation for a data parallelism approach for an MPI implementation for attack and compliance graph generation, and future works and improvements can lead to promising results. diff --git a/Chapter6.aux b/Chapter6.aux index 507c2b2..aa178ad 100644 --- a/Chapter6.aux +++ b/Chapter6.aux @@ -1,12 +1,12 @@ \relax -\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{56}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.1}\bf Conclusions}{56}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.2}\bf Future Work}{57}{}\protected@file@percent } -\newlabel{sec:FW}{{6.2}{57}} -\@writefile{lof}{\contentsline {figure}{\numberline {6.1}{\ignorespaces Possible Method for Blending MPI and OpenMP for Task 2 of the MPI Tasking Approach\relax }}{58}{}\protected@file@percent } -\newlabel{fig:OMP_MPI_Blend}{{6.1}{58}} +\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{57}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {6.1}\bf Conclusions}{57}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {6.2}\bf Future Work}{58}{}\protected@file@percent } +\newlabel{sec:FW}{{6.2}{58}} +\@writefile{lof}{\contentsline {figure}{\numberline {6.1}{\ignorespaces Possible Method for Blending MPI and OpenMP for Task 2 of the MPI Tasking Approach\relax }}{59}{}\protected@file@percent } +\newlabel{fig:OMP_MPI_Blend}{{6.1}{59}} \@setckpt{Chapter6}{ -\setcounter{page}{60} +\setcounter{page}{61} \setcounter{equation}{0} \setcounter{enumi}{4} \setcounter{enumii}{0} diff --git a/Schrick-Noah_MS-Thesis.aux b/Schrick-Noah_MS-Thesis.aux index 4b14e6e..d8a583d 100644 --- a/Schrick-Noah_MS-Thesis.aux +++ b/Schrick-Noah_MS-Thesis.aux @@ -29,9 +29,9 @@ \bibcite{baloyi_guidelines_2019}{7} \bibcite{allman_complying_2006}{8} \@writefile{toc}{{\hfill \ }} -\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{60}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{61}{}\protected@file@percent } \@writefile{toc}{\addvspace {10pt}} -\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{60}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{61}{}\protected@file@percent } \@writefile{toc}{{\hfill \ }} \bibcite{noauthor_sarbanes-oxley_2002}{9} \bibcite{noauthor_health_1996}{10} @@ -60,4 +60,4 @@ \bibcite{pacheco_introduction_2011}{33} \bibcite{lawrence_livermore_national_laboratory_mpip_nodate}{34} \bibstyle{ieeetr} -\gdef \@abspage@last{74} +\gdef \@abspage@last{75} diff --git a/Schrick-Noah_MS-Thesis.lof b/Schrick-Noah_MS-Thesis.lof index bbe10e0..0962f58 100644 --- a/Schrick-Noah_MS-Thesis.lof +++ b/Schrick-Noah_MS-Thesis.lof @@ -25,4 +25,4 @@ \contentsline {figure}{\numberline {5.16}{\ignorespaces Duplicate States Explored vs Actual Number of States for the 1-4 Service Tests\relax }}{52}{}% \contentsline {figure}{\numberline {5.17}{\ignorespaces Speedup and Efficiency of MPI Subgraphing when using a DHT\relax }}{54}{}% \contentsline {figure}{\numberline {5.18}{\ignorespaces Runtime of MPI Subgraphing when using a DHT vs not using a DHT\relax }}{55}{}% -\contentsline {figure}{\numberline {6.1}{\ignorespaces Possible Method for Blending MPI and OpenMP for Task 2 of the MPI Tasking Approach\relax }}{58}{}% +\contentsline {figure}{\numberline {6.1}{\ignorespaces Possible Method for Blending MPI and OpenMP for Task 2 of the MPI Tasking Approach\relax }}{59}{}% diff --git a/Schrick-Noah_MS-Thesis.log b/Schrick-Noah_MS-Thesis.log index 8a9b27c..35b7a33 100644 --- a/Schrick-Noah_MS-Thesis.log +++ b/Schrick-Noah_MS-Thesis.log @@ -1,4 +1,4 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.23 (TeX Live 2021/Arch Linux) (preloaded format=pdflatex 2022.3.21) 4 APR 2022 21:04 +This is pdfTeX, Version 3.141592653-2.6-1.40.23 (TeX Live 2021/Arch Linux) (preloaded format=pdflatex 2022.4.17) 20 APR 2022 12:37 entering extended mode restricted \write18 enabled. %&-line parsing enabled. @@ -525,26 +525,35 @@ File: ./Chapter5_img/DHT_noDHT.png Graphic file (type png) Package pdftex.def Info: ./Chapter5_img/DHT_noDHT.png used on input line 295. (pdftex.def) Requested size: 469.75499pt x 289.27902pt. -) [53] [54 <./Chapter5_img/DHT_Spd.png> <./Chapter5_img/DHT_Eff.png>] [55 <./Ch -apter5_img/DHT_noDHT.png>] + + +LaTeX Warning: No positions in optional float specifier. + Default added (so using `tbp') on input line 304. + + +LaTeX Warning: No positions in optional float specifier. + Default added (so using `tbp') on input line 326. + +[53] [54 <./Chapter5_img/DHT_Spd.png> <./Chapter5_img/DHT_Eff.png>] [55 <./Chap +ter5_img/DHT_noDHT.png>]) [56] \openout2 = `Chapter6.aux'. (./Chapter6.tex CHAPTER 6. -[56 +[57 ] -<./Chapter5_img/MPI-OpenMP-Blend.PNG, id=281, 613.04031pt x 354.07281pt> +<./Chapter5_img/MPI-OpenMP-Blend.PNG, id=284, 613.04031pt x 354.07281pt> File: ./Chapter5_img/MPI-OpenMP-Blend.PNG Graphic file (type png) Package pdftex.def Info: ./Chapter5_img/MPI-OpenMP-Blend.PNG used on input lin e 21. (pdftex.def) Requested size: 469.75499pt x 271.31865pt. - [57] [58 <./Chapter5_img/MPI-OpenMP-Blend.PNG>]) [59] -(./Schrick-Noah_MS-Thesis.bbl [60 + [58] [59 <./Chapter5_img/MPI-OpenMP-Blend.PNG>]) [60] +(./Schrick-Noah_MS-Thesis.bbl [61 @@ -572,13 +581,13 @@ Underfull \hbox (badness 2119) in paragraph at lines 51--54 ntent/pkg/PLAW- [] -[61] [62] +[62] [63] Underfull \hbox (badness 1383) in paragraph at lines 175--178 []\OT1/cmr/m/n/12 Lawrence Liv-er-more Na-tional Lab-o-ra-tory, ``mpiP, a light -weight MPI pro-filer.'' [] -) [63] (./Schrick-Noah_MS-Thesis.aux (./Chapter1.aux) (./Chapter2.aux) +) [64] (./Schrick-Noah_MS-Thesis.aux (./Chapter1.aux) (./Chapter2.aux) (./Chapter3.aux) (./Chapter4.aux) (./Chapter5.aux) (./Chapter6.aux)) ) (\end occurred inside a group at level 6) @@ -590,13 +599,13 @@ Underfull \hbox (badness 1383) in paragraph at lines 175--178 ### semi simple group (level 1) entered at line 52 (\begingroup) ### bottom level Here is how much of TeX's memory you used: - 4481 strings out of 478276 - 84087 string characters out of 5853013 - 374095 words of memory out of 5000000 - 22587 multiletter control sequences out of 15000+600000 + 4485 strings out of 478276 + 84152 string characters out of 5853013 + 387130 words of memory out of 5000000 + 22591 multiletter control sequences out of 15000+600000 473155 words of font info for 41 fonts, out of 8000000 for 9000 1141 hyphenation exceptions out of 8191 - 67i,9n,77p,2339b,1439s stack positions out of 5000i,500n,10000p,200000b,80000s + 67i,9n,77p,2339b,1440s stack positions out of 5000i,500n,10000p,200000b,80000s {/usr/share/texmf-dist/fonts/enc/dvips/cm-super/cm-super-ts1.en c} -Output written on Schrick-Noah_MS-Thesis.pdf (74 pages, 2636912 bytes). +Output written on Schrick-Noah_MS-Thesis.pdf (75 pages, 2642634 bytes). PDF statistics: - 344 PDF objects out of 1000 (max. 8388607) - 192 compressed objects within 2 object streams + 347 PDF objects out of 1000 (max. 8388607) + 194 compressed objects within 2 object streams 0 named destinations out of 1000 (max. 500000) 161 words of extra memory for PDF output out of 10000 (max. 10000000) diff --git a/Schrick-Noah_MS-Thesis.lot b/Schrick-Noah_MS-Thesis.lot index e0245cb..a2fb1a5 100644 --- a/Schrick-Noah_MS-Thesis.lot +++ b/Schrick-Noah_MS-Thesis.lot @@ -3,3 +3,5 @@ \contentsline {table}{\numberline {4.2}{\ignorespaces Tabled Results for the Synchronous Firing Testing\relax }}{28}{}% \contentsline {table}{\numberline {5.1}{\ignorespaces MPI Tags for the MPI Tasking Approach\relax }}{39}{}% \contentsline {table}{\numberline {5.2}{\ignorespaces MPI Tags for the MPI Subgraphing Approach\relax }}{47}{}% +\contentsline {table}{\numberline {5.3}{\ignorespaces MPI Communication Time Percentage in Relation to the Overall Program Runtime for the 1 Service Test\relax }}{53}{}% +\contentsline {table}{\numberline {5.4}{\ignorespaces MPI Communication Time Percentage in Relation to the Overall Program Runtime for the 4 Service Test\relax }}{55}{}% diff --git a/Schrick-Noah_MS-Thesis.pdf b/Schrick-Noah_MS-Thesis.pdf index 6794987..969f4e0 100644 Binary files a/Schrick-Noah_MS-Thesis.pdf and b/Schrick-Noah_MS-Thesis.pdf differ diff --git a/Schrick-Noah_MS-Thesis.tex b/Schrick-Noah_MS-Thesis.tex index c487a13..947ae09 100644 --- a/Schrick-Noah_MS-Thesis.tex +++ b/Schrick-Noah_MS-Thesis.tex @@ -155,7 +155,7 @@ \fifthmember{} % as needed \sixthmember{} % as needed -\numofpages{74} % number of pages in the document +\numofpages{75} % number of pages in the document \numofchapters=6 % number of chapters in the document \lastchapter{Conclusions and Future Works} % the title of the last numbered chapter \numofabstractwords{196} % number of words in the abstract diff --git a/Schrick-Noah_MS-Thesis.toc b/Schrick-Noah_MS-Thesis.toc index dbe4575..d0de13c 100644 --- a/Schrick-Noah_MS-Thesis.toc +++ b/Schrick-Noah_MS-Thesis.toc @@ -67,11 +67,12 @@ \contentsline {subsubsection}{\numberline {5.4.2.4}MPI Tags}{46}{}% \contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations and Use Cases}{46}{}% \contentsline {subsection}{\numberline {5.4.4}\it Results}{47}{}% -\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{56}{}% -\contentsline {section}{\numberline {6.1}\bf Conclusions}{56}{}% -\contentsline {section}{\numberline {6.2}\bf Future Work}{57}{}% +\contentsline {subsection}{\numberline {5.4.5}\it Subgraphing Result Analysis}{53}{}% +\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{57}{}% +\contentsline {section}{\numberline {6.1}\bf Conclusions}{57}{}% +\contentsline {section}{\numberline {6.2}\bf Future Work}{58}{}% {\hfill \ } -\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{60}{}% +\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{61}{}% \addvspace {10pt} -\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{60}{}% +\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{61}{}% {\hfill \ } diff --git a/mpiP_timing.ods b/mpiP_timing.ods new file mode 100644 index 0000000..160d3e5 Binary files /dev/null and b/mpiP_timing.ods differ