Commit 0e6ccdcd authored by Taddeüs Kroes's avatar Taddeüs Kroes

ModSim ass4 taddeus: Finished report.

parent be77083a
......@@ -26,7 +26,7 @@ for i in range(len(lines))[::3]:
# Plot and optionally save data
plot(x, seq, 'o-', label='Sequentieel')
plot(x, par, 'o-', label='Parallel (9 nodes)')
plot(x, par, 'o-', label='Parallel (9 processen)')
ylim(ymin=0)
legend()
xlabel('Aantal afstandsstappen')
......
......@@ -254,9 +254,15 @@ shell- en python-scripts aanwezig:
parameters voor \emph{par.sh}.
\item \emph{benchmark.sh} \\
Voert een aantal tijdmetingen uit voor een verschillend aantal nodes
meegegeven voor parallelle programma. De eerste twee parameters bepalen
de aantallen nodes voor de benchmark. De laatste parameter geeft het
aantal gewenste afstansstappen (gelijk aan $\frac{1}{\texttt{DX}}$).
meegegeven voor parallelle programma. De parameter geeft het aantal
gewenste afstandsstappen (gelijk aan $\frac{1}{\texttt{DX}}$).
\item \emph{compare.sh} \\
Vergelijkt de runtime van het sequentiële en parallelle programma voor
een vast aantal parallelle nodes, maar een variabel aantal
afstandsstappen.
Voert een aantal tijdmetingen uit voor een vast aantal parallel nodes
meegegeven voor parallelle programma. De parameter geeft het aantal te
starten parallelle processen.
\item \emph{combine.py} \\
Combineert de uitvoer van de verschillende parallelle processen tot een
enkele reeks (zoals de uitvoer van het sequentiële programma zou zijn).
......@@ -273,6 +279,11 @@ shell- en python-scripts aanwezig:
serie grafieken (met name voor gebruik in het verslag). Als optionele
parameter kan een bestand worden opgegeven om de grafieken in op te
slaan.
\item \emph{plot\_benchmark.py} en \emph{plot\_compare.py} \\
Produceren grafieken van de uitvoer van \emph{benchmark.sh} en
\emph{compare.sh} (met name voor gebruik in het verslag). Als optionele
parameter kan een bestand worden opgegeven om de grafieken in op te
slaan.
\end{itemize}
\subsection{Gebruik}
......@@ -299,6 +310,9 @@ $ ...
# Benchmark voor 2, 4, 6 en 8 nodes met 1000 afstandsstappen (DX = .01)
$ ./benchmark.sh 8 2 1000
# Vergelijking voor sequentiëel vs. 4 nodes parallel
$ ./compare.sh 4
\end{verbatim}
Indien een verkeerd aantal parameters wordt meegegeven zal elk programma en
......@@ -397,7 +411,7 @@ is gedaan bij 9 processen, de speedup bij dit aantal is $\frac{9.67}{2.57} =
\begin{figure}[H]
\label{fig:benchmark}
\includegraphics[width=13cm]{benchmark.pdf}
\includegraphics[width=12.1cm]{benchmark.pdf}
\caption{Runtime met parameters \texttt{sinus 10000 1 .00002 1 2}. De
blauwe punten zijn de metingen van het parallelle programma, de
groene lijn is een Least Squares datafit van die metingen. Het
......@@ -412,8 +426,25 @@ afstandsstappen het parallelle programma langzamer zal zijn dan het
sequentiële programma, door overhead van de communicatie. Omdat het parallelle
programma bij de benchmark het snelst is met 9 processen, zullen we vergelijken
wanneer het sequentiële programma voordeel heeft t.o.v. 9 parallelle processen.
Voor dit experiment wordt het script \emph{compare.sh} gebruikt, de resultaten
hiervan staan in figuur \ref{fig:compare}.
We zien dat tot ongeveer 8500 afstandsstappen het sequentiële programma sneller
is dan het parallelle programma, daarna wordt het parallelle programma sneller.
De groene pieken rechts kunnen worden afgedaan als uitschieters, deze kwamen in
een andere uitvoer van hetzelfde programma niet naar boven. Deze zijn ook
minder interessant dan de kruising van de blauwe en groene lijn.
%TODO: add graph
Merk op dat deze meting alleen met 9 processen is gedaan, met minder processen
is het omslagpunt wellicht al bij minder afstandsstappen (een 3D grafiek zou
hier wellicht een beter licht op werpen).
\begin{figure}[H]
\label{fig:compare}
\includegraphics[width=13cm]{compare.pdf}
\caption{Runtime van sequentiëel (blauw) vs. parallel (groen) met
parameters \texttt{sinus 10000 1} \emph{dx} \texttt{1 2}.}
\end{figure}
\pagebreak
\appendix
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment