library(ggplot2)
dat <- read.csv("/Users/lukego/Downloads/bench (3).csv")
dat$snabb <- as.factor("master") # XXX 'snabb' column missing from this CSV file
d <- as.data.frame(dat)

summary

Density plot

Which Snabb version is better overall?

p <- ggplot(d, aes(x=score, fill=snabb, color=snabb))
p <- p + geom_density(alpha = 0.1)
p + ggtitle("Distribution of results for all tests")
## Warning: Removed 2187 rows containing non-finite values (stat_density).

Numeric textual summary

Summary of the data points found in the file.

summary(d)
##  benchmark       pktsize         config        snabb          kernel    
##  basic: 450   Min.   : 64    base   :1350   master:5400   3.18.29:4950  
##  iperf:2250   1st Qu.: 64    noind  : 900                 NA's   : 450  
##  l2fwd:2700   Median :160    nomrg  : 900                               
##               Mean   :160    filter : 450                               
##               3rd Qu.:256    ipsec  : 450                               
##               Max.   :256    (Other): 900                               
##               NA's   :2700   NA's   : 450                               
##     qemu         dpdk            id           score          unit     
##  2.4.1:1650   1.8.0: 540   Min.   : 1.0   Min.   : 0.679   Gbps:2250  
##  2.5.1:1650   16.04: 540   1st Qu.: 8.0   1st Qu.: 3.180   Mpps:3150  
##  2.6.0:1650   2.0.0: 540   Median :15.5   Median : 4.080              
##  NA's : 450   2.1.0: 540   Mean   :15.5   Mean   : 8.833              
##               2.2.0: 540   3rd Qu.:23.0   3rd Qu.: 9.640              
##               NA's :2700   Max.   :30.0   Max.   :32.600              
##                                           NA's   :2187

basic

basic = subset(d, benchmark == "basic")

p <- ggplot(basic, aes(x=id, y=score, color=snabb))
p <- p + geom_point()
p <- p + geom_line()
p <- p + expand_limits(y=0)
p + ggtitle("Results ordered by test ID and colored by Snabb version")

l2fwd

Density plot

Overview of distribution of scores for all tests. For very broadly comparing two Snabb versions.

l2fwd <- subset(d, benchmark == "l2fwd")

p <- ggplot(l2fwd, aes(x=score, fill=snabb, color=snabb))
p <- p + geom_density(alpha = 0.1)
p + ggtitle("Distribution of results across all tests")
## Warning: Removed 1737 rows containing non-finite values (stat_density).

Faceted

p <- ggplot(l2fwd, aes(x=id, y=score, color=snabb))
p <- p + geom_point(alpha=0.50)
p <- p + expand_limits(y=0)
p <- p + facet_grid(qemu + dpdk ~ config)
p <- p + geom_boxplot(alpha=0.50)
p + ggtitle("Distribution of results across all tests, by Snabb version")
## Warning: Removed 1737 rows containing non-finite values (stat_boxplot).
## Warning: Removed 1737 rows containing missing values (geom_point).

iperf

Density plot

iperf <- subset(d, benchmark == "iperf")

p <- ggplot(iperf, aes(x=score, fill=snabb, color=snabb))
p <- p + geom_density(alpha = 0.1)
p + ggtitle("Distribution of results across all tests")
## Warning: Removed 450 rows containing non-finite values (stat_density).

Faceted

p <- ggplot(iperf, aes(x=id, y=score, color=snabb))
p <- p + geom_point(alpha=0.50)
p <- p + expand_limits(y=0)
p <- p + facet_grid(qemu + kernel ~ config)
p <- p + geom_boxplot(alpha=0.50)
p + ggtitle("Distribution of results across all tests, by Snabb version")
## Warning: Removed 450 rows containing non-finite values (stat_boxplot).
## Warning: Removed 450 rows containing missing values (geom_point).