diff --git a/dat/dramsys.csv b/dat/dramsys.csv new file mode 100644 index 0000000..1719d74 --- /dev/null +++ b/dat/dramsys.csv @@ -0,0 +1,95 @@ +T,B +0,0.0792687142113483 +0.0102040816326531,0.314176366475794 +0.0204081632653061,0.16006663196252 +0.0306122448979592,0.132291098386257 +0.0408163265306122,0.143078813118168 +0.0510204081632653,0.16334492451848 +0.0612244897959184,0.156388547631442 +0.0714285714285714,0.17805726184279 +0.0816326530612245,0.222833940655908 +0.0918367346938776,0.171230817282665 +0.102040816326531,0.150045184799584 +0.112244897959184,0.0810544508068714 +0.122448979591837,0.177360957834461 +0.13265306122449,0.150454971369079 +0.142857142857143,0.161502550754815 +0.153061224489796,0.156085372201978 +0.163265306122449,0.210723581467985 +0.173469387755102,0.17759416970328 +0.183673469387755,0.149865278500781 +0.193877551020408,0.130265486725664 +0.204081632653061,0.189827798021864 +0.214285714285714,0.178490369599167 +0.224489795918367,0.158074336283186 +0.23469387755102,0.11825507548152 +0.244897959183673,0.21761665799063 +0.255102040816327,0.163075065070276 +0.26530612244898,0.182964705882353 +0.275510204081633,0.112747943779282 +0.285714285714286,0.178447058823529 +0.295918367346939,0.186722748568454 +0.306122448979592,0.18896158250911 +0.316326530612245,0.184297345132743 +0.326530612244898,0.167416137428423 +0.336734693877551,0.2050565330557 +0.346938775510204,0.154109734513274 +0.357142857142857,0.166276730869339 +0.36734693877551,0.12823987506507 +0.377551020408163,0.217373451327434 +0.387755102040816,0.143911712649662 +0.397959183673469,0.230759812597605 +0.408163265306122,0.20290432066632 +0.418367346938776,0.180372722540344 +0.428571428571429,0.120460593440916 +0.438775510204082,0.159133784487246 +0.448979591836735,0.13473982300885 +0.459183673469388,0.165337220197814 +0.469387755102041,0.147446538261322 +0.479591836734694,0.212426028110359 +0.489795918367347,0.182974700676731 +0.5,0.163471525247267 +0.510204081632653,0.120024154086413 +0.520408163265306,0.130728578865174 +0.530612244897959,0.115006767308693 +0.540816326530612,0.199322852680895 +0.551020408163265,0.146640291514836 +0.561224489795918,0.184274023945862 +0.571428571428571,0.168455596043727 +0.581632653061224,0.162721915668922 +0.591836734693878,0.15056158250911 +0.602040816326531,0.159860072878709 +0.612244897959184,0.127523581467985 +0.622448979591837,0.210210515356585 +0.63265306122449,0.144238209266007 +0.642857142857143,0.0803314940135346 +0.653061224489796,0.222174284226965 +0.663265306122449,0.177937324310255 +0.673469387755102,0.131391566892244 +0.683673469387755,0.0828401874023946 +0.693877551020408,0.148709213951067 +0.704081632653061,0.139130869338886 +0.714285714285714,0.20761520041645 +0.724489795918367,0.160149921915669 +0.73469387755102,0.181102342529932 +0.744897959183674,0.176564705882353 +0.755102040816326,0.15493263925039 +0.76530612244898,0.138347943779282 +0.775510204081633,0.144554711087975 +0.785714285714286,0.133137324310255 +0.795918367346939,0.225485892764185 +0.806122448979592,0.154649453409682 +0.816326530612245,0.209111087975013 +0.826530612244898,0.220828318584071 +0.836734693877551,0.0571302446642374 +0.846938775510204,0.0154186361270172 +0.857142857142857,0.0324564289432587 +0.86734693877551,0.0336591358667361 +0.877551020408163,0.0181938573659552 +0.887755102040816,0.0158350858927642 +0.897959183673469,0.0260031233732431 +0.908163265306122,0.0172876626756897 +0.918367346938775,0.0228847475273295 +0.928571428571429,0.017807391983342 +0.938775510204082,0.00664653826132223 +1,6.66E-06 diff --git a/dat/gem5.csv b/dat/gem5.csv new file mode 100644 index 0000000..05e7e1f --- /dev/null +++ b/dat/gem5.csv @@ -0,0 +1,71 @@ +T,B +0,0.206615720978657 +0.0144927536231884,0.235763872982821 +0.0289855072463768,0.19310942217595 +0.0434782608695652,0.207348672566372 +0.0579710144927536,0.191593545028631 +0.072463768115942,0.190680687142113 +0.0869565217391304,0.176851223321187 +0.101449275362319,0.188005413846955 +0.115942028985507,0.190833940655908 +0.130434782608696,0.202774388339407 +0.144927536231884,0.201838209266007 +0.159420289855072,0.190334200937012 +0.173913043478261,0.178730244664237 +0.188405797101449,0.183614367516918 +0.202898550724638,0.197030713170224 +0.217391304347826,0.189881103591879 +0.231884057971014,0.207561894846434 +0.246376811594203,0.192129932326913 +0.260869565217391,0.180739198334201 +0.27536231884058,0.180945757418011 +0.289855072463768,0.203540655908381 +0.304347826086957,0.183591046330036 +0.318840579710145,0.205459656428943 +0.333333333333333,0.191963352420614 +0.347826086956522,0.185570015616866 +0.36231884057971,0.178243831337845 +0.376811594202899,0.18973118167621 +0.391304347826087,0.192776262363352 +0.405797101449275,0.208558042686101 +0.420289855072464,0.191643519000521 +0.434782608695652,0.189991046330036 +0.449275362318841,0.178793545028631 +0.463768115942029,0.18583987506507 +0.478260869565217,0.190204268610099 +0.492753623188406,0.202411244143675 +0.507246376811594,0.203070900572618 +0.521739130434783,0.19121374284227 +0.536231884057971,0.179103383654347 +0.550724637681159,0.182738157209787 +0.565217391304348,0.199879229567933 +0.579710144927536,0.185336803748048 +0.594202898550725,0.209091098386257 +0.608695652173913,0.192 +0.623188405797101,0.182225091098386 +0.63768115942029,0.180129515877147 +0.652173913043478,0.201038625715773 +0.666666666666667,0.185046954711088 +0.681159420289855,0.206262571577303 +0.695652173913043,0.191633524206143 +0.710144927536232,0.186289640812077 +0.72463768115942,0.177500884955752 +0.739130434782609,0.186649453409682 +0.753623188405797,0.195131702238418 +0.768115942028985,0.209164393545029 +0.782608695652174,0.191313690786049 +0.797101449275362,0.190817282665279 +0.811594202898551,0.178770223841749 +0.826086956521739,0.185126913066111 +0.840579710144927,0.189841124414368 +0.855072463768116,0.200179073399271 +0.869565217391304,0.2045434669443 +0.884057971014493,0.190580739198334 +0.898550724637681,0.180306090577824 +0.91304347826087,0.182248412285268 +0.927536231884058,0.100860801665799 +0.942028985507246,0.0375504424778761 +0.956521739130435,0.0370840187402395 +0.971014492753623,0.0372239458615305 +0.985507246376812,0.0374105153565851 +1,0.0339723060905778 diff --git a/inc/7.simulation_results.tex b/inc/7.simulation_results.tex index ae359f0..9c93d70 100644 --- a/inc/7.simulation_results.tex +++ b/inc/7.simulation_results.tex @@ -300,6 +300,54 @@ These tables also provide information about the simulation time of the different \label{fig:latency_ddr4} \end{figure} +In order to compare not only the total average bandwidth, but also its behavior over time, all benchmarks were run consecutively on gem5 SE amd DRAMSys and plotted as a bandwidth-time diagram in Figure \ref{fig:data_bus_util}. + +\begin{figure}[!ht] +\begin{center} +\begin{tikzpicture} +\begin{axis}[ + width=\linewidth, + xlabel={Relative Simulation Time}, + ylabel={Data Bus Utilization}, + xmin=0, xmax=1, + ymin=0, + ytick={0,0.1,0.2,0.3}, + legend style={ + at={(current bounding box.south-|current axis.south)}, + anchor=north, + legend columns=-1, + draw=none, + /tikz/every even column/.append style={column sep=0.5cm} + }, + ymajorgrids=true, + grid style=dashed, +] + +\addplot[mark=none, color=blue] table [x=T,y=B,col sep=comma] {dat/gem5.csv}; + +\addplot[mark=none, color=red] table [x=T,y=B,col sep=comma] {dat/dramsys.csv}; + +\legend{gem5 SE, DRAMSys} + +\end{axis} +\end{tikzpicture} +\end{center} +\caption{Data bus utilization over the simulation time with DDR4-2400.} +\label{fig:data_bus_util} +\end{figure} + +Similar to the previous comparisons, the bandwidth on average of DRAMSys is marginally lower than gem5. +Furthermore, an increased fluctuation around a bandwidth value can be observed. +However, the overall time behavior is the same: +The highest bandwidth value is reached at the beginning of the simulation and the bandwidth drops to a low plateau at the end of the simulation. + +The \revabbr{mean absolute percentage error}{MAPE} is used to evaluate the deviations of the two bandwidth curves. +With the total number of data points $n$, the individual actual values $A_t$ and the individual forecasted values $F_t$, the measure is defined as follows: +\begin{equation} +MAPE=\frac{1}{n}\sum_{t=1}^{n}\bigg|\frac{A_t-F_t}{A_t}\bigg| +\end{equation} +For the bandwidth simulations, the resulting MAPE value is 22.3\%. + \subsection{Comparison to Ramulator} In order to evaluate the new simulation frontend with a simulator that uses a similar approach, the benchmarks are compared with Ramulator in this section.