caching-approaches-comparison
Changes
analysis/cache-balance.R 6(+5 -1)
analysis/parameters-balance.R 9(+7 -2)
analysis/throughput.R 7(+7 -0)
Details
analysis/cache-balance.R 6(+5 -1)
diff --git a/analysis/cache-balance.R b/analysis/cache-balance.R
index ba2bc56..fc91fca 100644
--- a/analysis/cache-balance.R
+++ b/analysis/cache-balance.R
@@ -3,10 +3,14 @@ library(scales)
hits <- read.csv("../applications/output/hits-distribution.csv")
-print("cache-balance")
+print("=== cache-balance ===")
pdf("cache-balance.pdf")
slice <- aggregate(formula = amount~application+version+users+name+event, data = hits, FUN = sum)
+temp <- aggregate(formula = amount~application+version+users+name, data = slice, FUN = length)
+temp <- aggregate(formula = name~application+version+users, data = temp, FUN = length)
+print("number of used recommendations")
+reshape(temp, timevar = "users", idvar = c("application", "version"), direction = "wide")
iter_applications = unique(slice$application)
for (iter_application in iter_applications) {
analysis/parameters-balance.R 9(+7 -2)
diff --git a/analysis/parameters-balance.R b/analysis/parameters-balance.R
index 3b1215b..23b0517 100644
--- a/analysis/parameters-balance.R
+++ b/analysis/parameters-balance.R
@@ -3,12 +3,13 @@ library(scales)
parameters <- read.csv("../applications/output/uncached-parameters.csv")
-print("parameters-balance")
+print("=== inputs discarted by APLCache among recommendations ===")
pdf("parameters-balance.pdf")
iter_applications = unique(parameters$application)
iter_versions = unique(parameters$version)
iter_users = unique(parameters$users)
+print("application, version, user, median, mean, standard-deviation")
for (iter_application in iter_applications) {
for (iter_version in iter_versions) {
for (iter_user in iter_users) {
@@ -20,13 +21,17 @@ for (iter_application in iter_applications) {
}
}
+print("distinct number of inputs discarted per recommendation")
slice <- aggregate(formula = amount~application+version+users+name, data = parameters, FUN = length)
reshape(slice, timevar = "users", idvar = c("application", "version", "name"), direction = "wide")
+print("distinct number of inputs discarted aggregated")
temp <- aggregate(formula = amount~application+version+users, data = slice, FUN = sum)
reshape(temp, timevar = "users", idvar = c("application", "version"), direction = "wide")
+print("occurrences of discarted inputs per recommendation")
slice <- aggregate(formula = amount~application+version+users+name, data = parameters, FUN = sum)
- reshape(slice, timevar = "users", idvar = c("application", "version", "name"), direction = "wide")
+reshape(slice, timevar = "users", idvar = c("application", "version", "name"), direction = "wide")
+print("occurrences of discarted inputs aggregated")
temp <- aggregate(formula = amount~application+version+users, data = slice, FUN = sum)
reshape(temp, timevar = "users", idvar = c("application", "version"), direction = "wide")
analysis/throughput.R 7(+7 -0)
diff --git a/analysis/throughput.R b/analysis/throughput.R
index d0f00bf..62d3113 100644
--- a/analysis/throughput.R
+++ b/analysis/throughput.R
@@ -33,6 +33,13 @@ for (iter_application in iter_applications) {
}
}
+temp <- aggregate
+temp[4:13] <- NULL
+temp[4] <- NULL
+temp[5:8] <- NULL
+print("")
+reshape(temp, timevar = "users", idvar = c("application", "version"), direction = "wide")
+
plot <- ggplot(aggregate, aes(x = factor(users), y = median_percentage, fill = version)) +
geom_bar(position = "dodge", stat = "identity") +
geom_errorbar(aes(ymin = min_percentage, ymax = max_percentage), width = .2, position = position_dodge(.9)) +