commit 8ea6f52bfe681623f4d77e8e2d8fedbf4c42a599
parent f70977260700880ee59209bbd4fa64e3dce4ef7d
Author: Ivan Gankevich <igankevich@ya.ru>
Date:   Sat, 18 Mar 2017 12:14:42 +0300
Add R script to plot the data. Include in the text.
Diffstat:
4 files changed, 41 insertions(+), 4 deletions(-)
diff --git a/.gitignore b/.gitignore
@@ -1,2 +1,3 @@
 build
 *~
+Rplots.pdf
diff --git a/Makefile b/Makefile
@@ -1,6 +1,9 @@
-build/main.pdf: *.tex *.bib bib/* build src/*
+build/main.pdf: *.tex *.bib bib/* build src/* build/test-1.pdf
 	latexmk -interaction=nonstopmode -output-directory=build -pdf -xelatex -bibtex -shell-escape -f main.tex
 
+build/test-1.pdf: R/graph-overhead.R
+	./R/graph-overhead.R
+
 build:
 	mkdir -p build
 
diff --git a/R/graph-overhead.R b/R/graph-overhead.R
@@ -12,10 +12,34 @@ for (d in dirs) {
 		r <- range(lines)
 		ipaddr <- gsub("^.*-([0-9\\.]+)\\.log$", "\\1", f, perl=TRUE)
 		t <- r[[2]] - r[[1]]
-		print(paste(ipaddr, t))
+		# add new column if needed
 		if (!(ipaddr %in% colnames(runtime))) {
-			runtime[, ipaddr] <- rep(1, nrow(runtime))
+			runtime[, ipaddr] <- rep(NA, nrow(runtime))
 		}
+		# add new row if needed
+		if (!(d %in% rownames(runtime))) {
+			runtime[d, ] <- rep(NA, ncol(runtime))
+		}
+		runtime[d, ipaddr] <- t
 	}
-	print(runtime)
 }
+print(runtime)
+x <- c(1:ncol(runtime))
+y <- colMeans(runtime) * 1e-3
+
+pdf(
+	file=file.path("build", "test-1.pdf"),
+	width=3,
+	height=2,
+	pointsize=7
+)
+plot(
+	x,
+	y,
+	xlab="Surviving node no.",
+	ylab="Time, s",
+	axes=FALSE
+)
+axis(1, at=x, labels=x)
+axis(2)
+box()
diff --git a/src/body.tex b/src/body.tex
@@ -251,6 +251,15 @@ number of nodes all launched on the same physical node. The purpose of the
 experiment is to investigate how failure handling overhead affects scalability
 of the application to a large number of nodes.
 
+\section{Results}
+
+\begin{figure}
+	\centering
+	\includegraphics{test-1}
+	\caption{Overhead of recovery from a failure for different surviving
+	cluster nodes.\label{fig:test-1}}
+\end{figure}
+
 \section{Discussion}
 
 % Brainstorming results (various random thoughts).