diff --git a/Schrick-Noah_MPI-Tasking.aux b/Schrick-Noah_MPI-Tasking.aux index 2b2e711..483179a 100644 --- a/Schrick-Noah_MPI-Tasking.aux +++ b/Schrick-Noah_MPI-Tasking.aux @@ -56,12 +56,12 @@ \@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {III-A}}Serialization}{2}{subsection.3.1}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {IV}Implementation of the Tasking Approach}{2}{section.4}\protected@file@percent } \newlabel{sec:Tasking-Approach}{{IV}{2}{Implementation of the Tasking Approach}{section.4}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {IV-A}}Algorithm Design}{2}{subsection.4.1}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Task Overview of the Attack and Compliance Graph Generation Process}}{3}{figure.1}\protected@file@percent } \newlabel{fig:tasks}{{1}{3}{Task Overview of the Attack and Compliance Graph Generation Process}{figure.1}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {IV-B}}Communication Structure}{3}{subsection.4.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {IV-A}}Algorithm Design}{3}{subsection.4.1}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Node Allocation for each Task}}{3}{figure.2}\protected@file@percent } \newlabel{fig:node-alloc}{{2}{3}{Node Allocation for each Task}{figure.2}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {IV-B}}Communication Structure}{3}{subsection.4.2}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {IV-C}}Task Breakdown}{3}{subsection.4.3}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IV-C}1}Task 0}{3}{subsubsection.4.3.1}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IV-C}2}Task 1}{3}{subsubsection.4.3.2}\protected@file@percent } @@ -69,9 +69,9 @@ \newlabel{fig:Task1-Data-Dist}{{3}{4}{Data Distribution of Task One}{figure.3}{}} \@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Communication From Task 1 to Task 2 when the Number of Nodes Allocated is Equal}}{4}{figure.4}\protected@file@percent } \newlabel{fig:Task1-Case1}{{4}{4}{Communication From Task 1 to Task 2 when the Number of Nodes Allocated is Equal}{figure.4}{}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IV-C}3}Task 2}{4}{subsubsection.4.3.3}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Task 1 to Task 2 Communication, Case 2}}{4}{figure.5}\protected@file@percent } \newlabel{fig:Task1-Case2}{{5}{4}{Task 1 to Task 2 Communication, Case 2}{figure.5}{}} +\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IV-C}3}Task 2}{4}{subsubsection.4.3.3}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IV-C}4}Task 3}{4}{subsubsection.4.3.4}\protected@file@percent } \newlabel{sec:T4T5}{{\mbox {IV-C}5}{4}{Task 4 and Task 5}{subsubsection.4.3.5}{}} \@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IV-C}5}Task 4 and Task 5}{4}{subsubsection.4.3.5}\protected@file@percent } @@ -111,8 +111,6 @@ \newlabel{fig:Tasking-RT}{{10}{8}{MPI Tasking Approach Runtime Results}{figure.10}{}} \@writefile{lof}{\contentsline {figure}{\numberline {11}{\ignorespaces Results for the MPI Tasking Approach in Terms of Speedup}}{8}{figure.11}\protected@file@percent } \newlabel{fig:Tasking-Spd}{{11}{8}{Results for the MPI Tasking Approach in Terms of Speedup}{figure.11}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {12}{\ignorespaces Results for the MPI Tasking Approach in Terms of Efficiency}}{8}{figure.12}\protected@file@percent } -\newlabel{fig:Tasking-Eff}{{12}{8}{Results for the MPI Tasking Approach in Terms of Efficiency}{figure.12}{}} \bibcite{7993827}{2} \bibcite{8652334}{3} \bibcite{baloyi_guidelines_2019}{4} @@ -140,6 +138,8 @@ \bibcite{li_combining_2019}{26} \bibcite{Slurm}{27} \bibstyle{ieeetr} +\@writefile{lof}{\contentsline {figure}{\numberline {12}{\ignorespaces Results for the MPI Tasking Approach in Terms of Efficiency}}{9}{figure.12}\protected@file@percent } +\newlabel{fig:Tasking-Eff}{{12}{9}{Results for the MPI Tasking Approach in Terms of Efficiency}{figure.12}{}} \@writefile{toc}{\contentsline {section}{\numberline {VIII}Analysis}{9}{section.8}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {IX}Conclusion and Future Work}{9}{section.9}\protected@file@percent } \newlabel{sec:FW}{{IX}{9}{Conclusion and Future Work}{section.9}{}} diff --git a/Schrick-Noah_MPI-Tasking.log b/Schrick-Noah_MPI-Tasking.log index 2ec51b4..95944e1 100644 --- a/Schrick-Noah_MPI-Tasking.log +++ b/Schrick-Noah_MPI-Tasking.log @@ -1,4 +1,4 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023/Arch Linux) (preloaded format=pdflatex 2023.4.3) 6 APR 2023 16:22 +This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023/Arch Linux) (preloaded format=pdflatex 2023.4.3) 6 APR 2023 16:33 entering extended mode restricted \write18 enabled. %&-line parsing enabled. @@ -536,58 +536,50 @@ Underfull \hbox (badness 3260) in paragraph at lines 77--80 \OT1/ptm/m/n/10 to parallelize the exploration of a FIFO queue. This [] - -Underfull \vbox (badness 10000) has occurred while \output is active [] - -<./images/horiz_task.drawio.png, id=160, 1181.41376pt x 785.93625pt> +[2] +<./images/horiz_task.drawio.png, id=181, 1181.41376pt x 785.93625pt> File: ./images/horiz_task.drawio.png Graphic file (type png) Package pdftex.def Info: ./images/horiz_task.drawio.png used on input line 116 . (pdftex.def) Requested size: 252.0pt x 167.64183pt. - [2] <./images/node-alloc.png, id=184, 818.30719pt x 536.75531pt> File: ./images/node-alloc.png Graphic file (type png) Package pdftex.def Info: ./images/node-alloc.png used on input line 128. (pdftex.def) Requested size: 252.0pt x 165.29492pt. -<./images/Task1-Data-Dist.png, id=188, 597.98407pt x 197.48781pt> + [3 <./images/horiz_task.drawio.png> <./images/node-alloc.PNG>] +<./images/Task1-Data-Dist.png, id=196, 597.98407pt x 197.48781pt> File: ./images/Task1-Data-Dist.png Graphic file (type png) Package pdftex.def Info: ./images/Task1-Data-Dist.png used on input line 145. (pdftex.def) Requested size: 252.0pt x 83.22455pt. - -[3 <./images/horiz_task.drawio.png> <./images/node-alloc.PNG>] -<./images/Task1-Case1.png, id=201, 586.44093pt x 339.51843pt> +<./images/Task1-Case1.png, id=200, 586.44093pt x 339.51843pt> File: ./images/Task1-Case1.png Graphic file (type png) Package pdftex.def Info: ./images/Task1-Case1.png used on input line 154. (pdftex.def) Requested size: 252.0pt x 145.89163pt. -<./images/Task1-Case2.png, id=202, 702.37407pt x 414.79968pt> +<./images/Task1-Case2.png, id=201, 702.37407pt x 414.79968pt> File: ./images/Task1-Case2.png Graphic file (type png) Package pdftex.def Info: ./images/Task1-Case2.png used on input line 161. (pdftex.def) Requested size: 252.0pt x 148.82143pt. -<./images/Sync-Fire.png, id=204, 489.83pt x 1053.9375pt> +<./images/Sync-Fire.png, id=203, 489.83pt x 1053.9375pt> File: ./images/Sync-Fire.png Graphic file (type png) Package pdftex.def Info: ./images/Sync-Fire.png used on input line 171. (pdftex.def) Requested size: 252.0pt x 542.21298pt. - -Underfull \vbox (badness 10000) has occurred while \output is active [] - [4 <./images/Task1-Data-Dist.PNG> <./images/Task1-Case1.PNG> <./images/Task1-C ase2.PNG>] LaTeX Warning: No positions in optional float specifier. Default added (so using `tbp') on input line 186. - +[5 <./images/Sync-Fire.png>] Underfull \hbox (badness 1389) in paragraph at lines 217--218 \OT1/ptm/m/n/10 the performance of each task. Generating larger graphs [] -[5 <./images/Sync-Fire.png>] LaTeX Warning: No positions in optional float specifier. Default added (so using `tbp') on input line 219. @@ -618,29 +610,29 @@ Underfull \hbox (badness 3713) in paragraph at lines 310--311 []\OT1/ptm/m/n/10 In terms of efficiency, 2 compute nodes offer the [] -<./images/Speedup-Esize-Tasking.png, id=261, 620.208pt x 321.93pt> +<./images/Speedup-Esize-Tasking.png, id=260, 620.208pt x 321.93pt> File: ./images/Speedup-Esize-Tasking.png Graphic file (type png) Package pdftex.def Info: ./images/Speedup-Esize-Tasking.png used on input line 318. (pdftex.def) Requested size: 252.0pt x 130.80338pt. -<./images/Eff-Esize-Tasking.png, id=262, 620.208pt x 322.149pt> +<./images/Eff-Esize-Tasking.png, id=261, 620.208pt x 322.149pt> File: ./images/Eff-Esize-Tasking.png Graphic file (type png) Package pdftex.def Info: ./images/Eff-Esize-Tasking.png used on input line 319 . (pdftex.def) Requested size: 252.0pt x 130.89236pt. -<./images/Tasking_RT.png, id=263, 860.46469pt x 257.96375pt> +<./images/Tasking_RT.png, id=262, 860.46469pt x 257.96375pt> File: ./images/Tasking_RT.png Graphic file (type png) Package pdftex.def Info: ./images/Tasking_RT.png used on input line 326. (pdftex.def) Requested size: 252.0pt x 75.54756pt. -<./images/Tasking_Spd.png, id=264, 860.46469pt x 276.53313pt> +<./images/Tasking_Spd.png, id=263, 860.46469pt x 276.53313pt> File: ./images/Tasking_Spd.png Graphic file (type png) Package pdftex.def Info: ./images/Tasking_Spd.png used on input line 333. (pdftex.def) Requested size: 252.0pt x 80.98582pt. -<./images/Tasking_Eff.png, id=265, 860.46469pt x 276.53313pt> +<./images/Tasking_Eff.png, id=264, 860.46469pt x 276.53313pt> File: ./images/Tasking_Eff.png Graphic file (type png) Package pdftex.def Info: ./images/Tasking_Eff.png used on input line 340. @@ -649,7 +641,7 @@ Package pdftex.def Info: ./images/Tasking_Eff.png used on input line 340. Underfull \vbox (badness 10000) has occurred while \output is active [] [8 <./images/Speedup-Esize-Tasking.png> <./images/Eff-Esize-Tasking.png> <./im -ages/Tasking_RT.png> <./images/Tasking_Spd.png> <./images/Tasking_Eff.png>] +ages/Tasking_RT.png> <./images/Tasking_Spd.png>] Underfull \hbox (badness 1442) in paragraph at lines 21--26 \OT1/ptm/m/n/8 A Focus on Cyberphysical Systems and Internet of Things,'' in [] @@ -692,7 +684,7 @@ Before submitting the final camera ready copy, remember to: uses only Type 1 fonts and that every step in the generation process uses the appropriate paper size. -[9] (./Schrick-Noah_MPI-Tasking.aux) +[9 <./images/Tasking_Eff.png>] (./Schrick-Noah_MPI-Tasking.aux) Package rerunfilecheck Info: File `Schrick-Noah_MPI-Tasking.out' has not change d. (rerunfilecheck) Checksum: 282EFB5F213C3BBCE81796BF27E429B0;3411. @@ -700,11 +692,11 @@ d. Here is how much of TeX's memory you used: 12254 strings out of 476025 194956 string characters out of 5796533 - 1869388 words of memory out of 5000000 + 1871388 words of memory out of 5000000 32452 multiletter control sequences out of 15000+600000 550927 words of font info for 105 fonts, out of 8000000 for 9000 1141 hyphenation exceptions out of 8191 - 75i,14n,76p,2022b,598s stack positions out of 5000i,500n,10000p,200000b,80000s + 75i,14n,76p,2022b,592s stack positions out of 5000i,500n,10000p,200000b,80000s -Output written on Schrick-Noah_MPI-Tasking.pdf (9 pages, 1044147 bytes). +Output written on Schrick-Noah_MPI-Tasking.pdf (9 pages, 1046533 bytes). PDF statistics: 340 PDF objects out of 1000 (max. 8388607) 286 compressed objects within 3 object streams diff --git a/Schrick-Noah_MPI-Tasking.pdf b/Schrick-Noah_MPI-Tasking.pdf index cd34982..95f4317 100644 Binary files a/Schrick-Noah_MPI-Tasking.pdf and b/Schrick-Noah_MPI-Tasking.pdf differ diff --git a/Schrick-Noah_MPI-Tasking.tex b/Schrick-Noah_MPI-Tasking.tex index 5adcf17..4bed58a 100644 --- a/Schrick-Noah_MPI-Tasking.tex +++ b/Schrick-Noah_MPI-Tasking.tex @@ -44,7 +44,7 @@ peter-hawrylak@utulsa.edu} \maketitle \begin{abstract} - +Large-scale attack and compliance graphs can be used for detecting, preventing, and correcting cybersecurity or compliance violations with a system or set of systems. However, as modern-day networks expand in size, and as the number of possible exploits and regulation mandates increase, large-scale attack and compliance graphs can seldom be feasibly generated through serial means. This work presents a parallelized generation process that leverages Message-Passing Interface (MPI) for distributed computing. A task parallelism approach was implemented that includes compatibility for a hybrid MPI-OpenMPI graph generation. This approach was deployed on a High-Performance Computing (HPC) system where a large amount of performance data was collected to capture and conduct a comprehensive analysis on the approach. This work discusses the need for this approach, describes the design process and experimental setup, and illustrates the success that was obtained through speedup and efficiency metrics. \end{abstract} \begin{IEEEkeywords}