summaryrefslogtreecommitdiff
path: root/2019-Mascots.org
diff options
context:
space:
mode:
authorLoic Guegan <manzerberdes@gmx.com>2019-05-23 12:05:58 +0200
committerLoic Guegan <manzerberdes@gmx.com>2019-05-23 12:05:58 +0200
commitfd6fe9319e3d1dae511579148edc9ad21b6ed2d5 (patch)
tree62326e9da52081902d7d133bb15a932b3df2edfa /2019-Mascots.org
parent66b82c1c3e2c60ee58f380960f6075066824dd4e (diff)
Add last ns-3 logs and update paper
Diffstat (limited to '2019-Mascots.org')
-rw-r--r--2019-Mascots.org117
1 files changed, 83 insertions, 34 deletions
diff --git a/2019-Mascots.org b/2019-Mascots.org
index 9c813e7..6f5e979 100644
--- a/2019-Mascots.org
+++ b/2019-Mascots.org
@@ -6,6 +6,7 @@
#+LATEX_CLASS: IEEEtran
#+LATEX_HEADER: \usepackage{hyperref}
#+LATEX_HEADER: \usepackage{booktabs}
+#+LATEX_HEADER: \usepackage{subfigure}
#+LATEX_HEADER: \usepackage{graphicx}
#+LATEX_HEADER: \IEEEoverridecommandlockouts
#+LATEX_HEADER: \author{\IEEEauthorblockN{1\textsuperscript{st} Anne-Cécile Orgerie}
@@ -78,16 +79,27 @@ component, formatting, style, styling, insert
#+BEGIN_EXPORT latex
\begin{table}[]
- \centering
- \caption{Wifi Energy Values}
- \label{tab:wifi-energy}
- \begin{tabular}{@{}lr@{}}
- Parameter & Value \\ \midrule
- Supply Voltage & 3.3V \\
- Tx & 0.38A \\
- Rx & 0.313A \\
- Idle & 0.273A \\ \bottomrule
- \end{tabular}
+ \centering
+ \caption{Simulations Energy Parameters}
+ \label{tab:wifi-energy}
+ \subtable[Wifi]{
+ \begin{tabular}{@{}lr@{}}
+ Parameter & Value \\ \midrule
+ Supply Voltage & 3.3V \\
+ Tx & 0.38A \\
+ Rx & 0.313A \\
+ Idle & 0.273A \\ \bottomrule
+ \end{tabular}}
+ \hspace{0.3cm}
+ \subtable[Network]{
+ \label{tab:net-energy}
+ \begin{tabular}{@{}lr@{}}
+ Parameter & Value \\ \midrule
+ Idle & 1J \\
+ Bytes (Tx/Rx) & 3.4nJ \\
+ Pkt (Tx/Rx) & 192.0nJ \\ \bottomrule
+ \end{tabular}
+ }
\end{table}
#+END_EXPORT
@@ -103,20 +115,6 @@ component, formatting, style, styling, insert
energy values used to instantiate the ECOFEN energy model for the network part are shown in Table
\ref{tab:net-energy} and come from previous work \cite{cornea_studying_2014-1}.
- #+BEGIN_EXPORT latex
- \begin{table}[]
- \centering
- \caption{Network Part Energy Settings}
- \label{tab:net-energy}
- \begin{tabular}{@{}lr@{}}
- Parameter & Value \\ \midrule
- Idle & 1J \\
- Bytes (Tx/Rx) & 3.4nJ \\
- Pkt (Tx/Rx) & 192.0nJ \\ \bottomrule
- \end{tabular}
- \end{table}
- #+END_EXPORT
-
** Cloud Part
Finally, to measure the energy consumption of the server, we used real server from the
large-scale test-beds Grid5000 (G5K). In fact, G5K has a cluster called Nova composed of several
@@ -151,13 +149,13 @@ component, formatting, style, styling, insert
#+END_EXPORT
- The number of sensors it the dominant factor that leverage the energy consumption of the
+ The number of sensors is the dominant factor that leverage the energy consumption of the
IoT/Network part. Therefore, we varied the number of sensors in the Wifi cell to analyze its
impact. The figure \ref{fig:sensorsNumber} represents the energy consumption of each simulated
part. It is clear that the energy consume by the network is the dominant part. However, since the
number of sensors is increasing the energy consume by the network will become negligible face to
- the energy consume by the sensors.
-
+ the energy consume by the sensors. In fact, deploying new sensors in the cell do not introduce
+ much network load. To this end, sensors energy consumption is dominant.
#+BEGIN_EXPORT latex
\begin{figure}
@@ -168,6 +166,19 @@ component, formatting, style, styling, insert
\end{figure}
#+END_EXPORT
+ Previous work \cite{li_end--end_2018} on similar scenario shows that increasing application
+ accuracy impact strongly the energy consumption for stream analysis.
+
+ #+BEGIN_EXPORT latex
+ \begin{figure}
+ \centering
+ \includegraphics[scale=0.4]{./plots/sendFrequency-energy.png}
+ \caption{Frequency}
+ \label{fig:frequency}
+ \end{figure}
+ #+END_EXPORT
+
+
** Cloud Energy Consumption
*** Virtual Machine Size Impact
@@ -308,22 +319,25 @@ component, formatting, style, styling, insert
logToCSV extract usefull data from logs and put them into logs/data.csv.
#+NAME: NS3-logToCSV
- #+BEGIN_SRC bash :results none
- csvOutput="logs/data.csv"
+ #+BEGIN_SRC bash :results output
+ logsFolder="./logs/ns3/last/"
+ csvOutput="$logsFolder/data.csv"
# First save csv header line
- aLog=$(find logs/ -type f -name "*.org"|head -n 1)
+ aLog=$(find $logsFolder -type f -name "*.org"|head -n 1)
metrics=$(cat $aLog|grep "\-METRICSLINE\-"|sed "s/-METRICSLINE-//g")
echo $metrics | awk '{for(i=1;i<=NF;i++){split($i,elem,":");printf(elem[1]);if(i<NF)printf(",");else{print("")}}}' > $csvOutput
# Second save all values
- for logFile in $(find logs/ -type f -name "*.org")
+ for logFile in $(find $logsFolder -type f -name "*.org")
do
metrics=$(cat $logFile|grep "\-METRICSLINE\-"|sed "s/-METRICSLINE-//g")
echo $metrics | awk '{for(i=1;i<=NF;i++){split($i,elem,":");printf(elem[2]);if(i<NF)printf(",");else{print("")}}}' >> $csvOutput
done
#+END_SRC
+ #+RESULTS: NS3-logToCSV
+
@@ -331,6 +345,10 @@ component, formatting, style, styling, insert
**** Custom Plots
+
+
+
+ Effect of sensors position on app delay
#+BEGIN_SRC R :noweb yes :results graphics :file plots/sensorsPosition-delayenergy.png
<<NS3-RUtils>>
simTime=1800
@@ -598,11 +616,37 @@ component, formatting, style, styling, insert
*** Final Plots
+ Figure
+ #+BEGIN_SRC R :noweb yes :results graphics :file plots/sendFrequency-energy.png
+ <<NS3-RUtils>>
+ simTime=1800
+ tr=171
+
+
+ cbPalette <- c("#00AFBB", "#E7B800", "#FC4E07","#0abb00")
+ # Load Data
+ data=read_csv("logs/ns3/last/data.csv")
+ data=data%>%mutate(energy=totalEnergy/simTime)
+
+ data=data%>%filter(simKey=="SENDINTERVAL",sensorsNumber==15)
+
+ ggplot(data,aes(y=energy,x=sensorsSendInterval))+xlab(getLabel("sensorsSendInterval"))+ylab(getLabel("Sensors And Network Energy Consumption (W)"))+
+ geom_line()+geom_point()+expand_limits(y=c(0,50)) +theme_bw() + scale_fill_manual(values=cbPalette) + scale_colour_manual(values=cbPalette)+guides(color=guide_legend(title="Curves"))+
+ theme(axis.title.y.right = element_text(margin = margin(t = 0, r = -12, b = 0, l = 7)))
+
+ ggsave("plots/sendFrequency-energy.png",dpi=80, width=3, height=3)
+ #+END_SRC
+
+ #+RESULTS:
+ [[file:plots/sendFrequency-energy.png]]
+
+
+
Figure Sensors Position ~ Energy/Delay
#+BEGIN_SRC R :noweb yes :results graphics :file plots/sensorsPosition-delayenergy.png
<<NS3-RUtils>>
simTime=1800
-
+ tr=171
cbPalette <- c("#00AFBB", "#E7B800", "#FC4E07","#0abb00")
@@ -610,8 +654,11 @@ component, formatting, style, styling, insert
data=read_csv("logs/ns3/last/data.csv")
data=data%>%mutate(sensorsEnergyW=sensorsEnergy/simTime)
- data%>%filter(simKey=="SENSORSPOS",sensorsNumber==10) %>% ggplot(aes(y=sensorsEnergyW,x=positionSeed,color="Energy"))+xlab(getLabel("Sensors Position Seed"))+ylab(getLabel("Sensors Energy Consumption (W)"))+
- geom_line()+geom_point()+geom_line(aes(y=(avgDelay+5),color="Delay"))+geom_point(aes(y=(avgDelay+5),color="Delay"))+expand_limits(y=c(0,15))+scale_y_continuous(sec.axis = sec_axis(~.-5, name = "Application Delay (s)")) +theme_bw() + scale_fill_manual(values=cbPalette) + scale_colour_manual(values=cbPalette)+guides(color=guide_legend(title="Curves"))
+ data%>%filter(simKey=="SENSORSPOS",sensorsNumber==9) %>% ggplot(aes(y=sensorsEnergyW,x=positionSeed,color="Energy"))+xlab(getLabel("Sensors Position Seed"))+ylab(getLabel("Sensors Energy Consumption (W)"))+
+ geom_line()+geom_point()+geom_line(aes(y=(avgDelay-tr),color="Delay"))+geom_point(aes(y=(avgDelay-tr),color="Delay"))+expand_limits(y=c(0,15))+
+ scale_y_continuous(sec.axis = sec_axis(~.+tr, name = "Application Delay (s)")) +theme_bw() + scale_fill_manual(values=cbPalette) + scale_colour_manual(values=cbPalette)+guides(color=guide_legend(title="Curves"))+
+ theme(axis.title.y.right = element_text(margin = margin(t = 0, r = -12, b = 0, l = 7)))
+
ggsave("plots/sensorsPosition-delayenergy.png",dpi=80, width=4, height=3.2)
#+END_SRC
@@ -656,6 +703,8 @@ component, formatting, style, styling, insert
+
+
#+BEGIN_SRC R :noweb yes :results graphics :file plots/final.png :session *R*
library("tidyverse")