Chapter 5 Intro
This commit is contained in:
parent
863d44cfab
commit
3956165f50
@ -1,6 +1,7 @@
|
||||
\TUchapter{Utilization OF MESSAGE PASSING INTERFACE}
|
||||
|
||||
\TUsection{Introduction to MPI Utilization for Attack Graph Generation}
|
||||
\TUsection{Introduction to MPI Utilization for Attack and Compliance Graph Generation}
|
||||
Previous works for graph generation, and specifically for attack graph generation, have seen promising results as discussed in Sections \ref{sec:gen_improv} and \ref{sec:related_works}. This work attempts to further those efforts and extend RAGE to function on distributed computing environments to take advantage of the increased computing power using message-passing. As mentioned by the author of \cite{pacheco_introduction_2011}, MPI is the most widely used message-passing API, and this work intended to utilize an API that was not only familiar and accessible, but versatile and powerful for parallelizing RAGE for distributed computing platforms. This Chapter discusses two approaches for parallelism: task parallelism in Section \ref{sec:Tasking-Approach}, and data parallelism in Section \ref{sec:Subgraphing_Approach}.
|
||||
|
||||
\TUsection{Necessary Components}
|
||||
\TUsubsection{Serialization}
|
||||
@ -152,7 +153,7 @@ In terms of efficiency, 2 compute nodes offer the greatest value since the speed
|
||||
\label{fig:Spd-Eff-Task}
|
||||
\end{figure}
|
||||
|
||||
\TUsection{Subgraphing Approach}
|
||||
\TUsection{Subgraphing Approach} \label{sec:Subgraphing_Approach}
|
||||
\TUsubsection{Introduction to the Subgraphing Approach}
|
||||
As opposed to the Tasking Approach described in Section \ref{sec:Tasking-Approach}, this Section introduces the Subgraphing Approach as a means of reducing runtime by frontier distribution though subgraphing. Section \ref{sec:db-stor} discusses that the frontier is expanded at a rate faster than can be processed. This approach attempts to distribute the frontier by assigning MPI nodes a starting state, and each node will generate a subgraph up to a designated depth-limit, where each node will then return their generated subgraph to a merging process. The author of \cite{li_concurrency_2019} presented an alternative method of frontier processing by utilizing OpenMP on a shared-memory system to assign each thread an individual state to explore that would then pass through a critical section. This approach is intended for a distributed system, and additionally differs in that each node will explore multiple states to form a subgraph, rather than exploring one individual state. This approach was implemented with two versions, and both collected results to draw conclusions in regards to speedup, efficiency, and scalability for attack graph and compliance graph generation.
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user