mirror of
https://gitlab.com/manzerbredes/paper-lowrate-iot.git
synced 2025-05-01 01:17:46 +00:00
Start some simulation tests
This commit is contained in:
parent
1399886f4d
commit
a6e70544bb
37 changed files with 53416 additions and 5509 deletions
|
@ -1,23 +1,26 @@
|
|||
|
||||
|
||||
|
||||
|
||||
* Run simulations
|
||||
** Experiments
|
||||
*** Number of sensors
|
||||
#+BEGIN_SRC bash :noweb yes :results output
|
||||
<<singleRun>>
|
||||
for sensorsNumber in $(seq 0 20)
|
||||
do
|
||||
run
|
||||
done
|
||||
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS:
|
||||
|
||||
** Single Run
|
||||
#+BEGIN_SRC bash :noweb yes :results output
|
||||
<<singleRun>>
|
||||
run
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS:
|
||||
|
||||
|
||||
#+NAME: singleRun
|
||||
#+BEGIN_SRC bash :noweb yes
|
||||
simulator="ns3-simulator/simulator"
|
||||
parseEnergyScript="./parseEnergy.awk"
|
||||
parseDelayScript="./parseDelay.awk"
|
||||
logFolder="logs/"
|
||||
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${NS3_PATH}/build/lib
|
||||
run () {
|
||||
|
@ -33,12 +36,16 @@
|
|||
|
||||
# Compute some metrics
|
||||
energyLog=$(echo "$log" | $parseEnergyScript)
|
||||
avgDelay=$(echo "$log" | $parseDelayScript)
|
||||
totalEnergy=$(echo "$energyLog"| awk 'BEGIN{power=0;FS=","}NR!=1{power+=$2}END{print(power)}')
|
||||
nbPacketCloud=$(echo "$log"|grep -c "CloudSwitch receive")
|
||||
nbNodes=$(echo "$log"|awk '/Starting simul/{print($4)}')
|
||||
nbNodes=$(echo "$log"|awk '/Simulation used/{print($3)}')
|
||||
ns3Version=$(echo "$log"|awk '/NS-3 Version/{print($3)}')
|
||||
|
||||
# Save logs
|
||||
echo -e "#+TITLE: $(date) ns-3 simulation\n" > $logFile
|
||||
echo -e "#+TITLE: $(date) ns-3 (version ${ns3Version}) simulation\n" > $logFile
|
||||
echo "* Environment Variables" >> $logFile
|
||||
env >> $logFile
|
||||
echo "* Full Command" >> $logFile
|
||||
echo "$simCMD" >> $logFile
|
||||
echo "* Output" >> $logFile
|
||||
|
@ -46,7 +53,7 @@
|
|||
echo "* Energy CSV (negative nodeId = WIFI, 0 = AP (Wireless+Wired), positive nodeId = ECOFEN" >> $logFile
|
||||
echo "$energyLog" >> $logFile
|
||||
echo "* Metrics" >> $logFile
|
||||
echo " sensorsSendInterval:${sensorsSendInterval} sensorsPktSize:${sensorsPktSize} sensorsNumber:${sensorsNumber} nbHop:${nbHop} linksBandwidth:${linksBandwidth} linksLatency:${linksLatency} totalEnergy:$totalEnergy nbPacketCloud:$nbPacketCloud nbNodes:$nbNodes" >> $logFile
|
||||
echo "-METRICSLINE- sensorsSendInterval:${sensorsSendInterval} sensorsPktSize:${sensorsPktSize} sensorsNumber:${sensorsNumber} nbHop:${nbHop} linksBandwidth:${linksBandwidth} linksLatency:${linksLatency} totalEnergy:$totalEnergy nbPacketCloud:$nbPacketCloud nbNodes:$nbNodes avgDelay:${avgDelay} ns3Version:${ns3Version}" >> $logFile
|
||||
|
||||
}
|
||||
#+END_SRC
|
||||
|
@ -57,3 +64,30 @@
|
|||
: Processing logs/logs/log.txt.csv
|
||||
: Processing logs/logs/log.txt-energy.csv
|
||||
|
||||
* Logs Analysis
|
||||
** Log -> CSV
|
||||
#+NAME: logToCSV
|
||||
#+BEGIN_SRC bash :results none
|
||||
csvOutput="logs/data.csv"
|
||||
|
||||
# First save csv header line
|
||||
aLog=$(find logs/ -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")
|
||||
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
|
||||
** R Scripts
|
||||
*** Load Data
|
||||
#+BEGIN_SRC R
|
||||
print("lkj")
|
||||
#+END_SRC
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue