From dae2889765b114f4a23581da80799ce03efc6510 Mon Sep 17 00:00:00 2001 From: taivop Date: Tue, 6 Dec 2016 12:48:15 +0100 Subject: [PATCH] #170 some graphs into report --- report/milestone3.pdf | Bin 126296 -> 144874 bytes report/milestone3.tex | 14 +++++++++++- scripts/r/part1_mm1.r | 52 ++++++++++++++++++++++++++++++++++++++++-- 3 files changed, 63 insertions(+), 3 deletions(-) diff --git a/report/milestone3.pdf b/report/milestone3.pdf index 49faed0c7a1a9250877564645f388438cb1fed21..8ef59697b394f848fc4d7804c2b9c6fcd9ea02f7 100644 GIT binary patch delta 39839 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 aV6;f7{j6a4@XW02%xtjaS=iwv7M) diff --git a/report/milestone3.tex b/report/milestone3.tex index 0ad332c..bb14d52 100644 --- a/report/milestone3.tex +++ b/report/milestone3.tex @@ -91,7 +91,7 @@ \section{System as One Unit}\label{sec:system-one-unit} took service rate to be max of throughput and arrival rate as mean of throughput - +\todo{Table of predicted vs actual numbers about the system} Once I have parameters, calculate: \begin{itemize} @@ -99,6 +99,18 @@ \section{System as One Unit}\label{sec:system-one-unit} \item distribution of number of jobs in system and queue \end{itemize} +\begin{figure}[h] +\includegraphics[width=\textwidth]{../results/analysis/part1_mm1/graphs/job_count_dist_actual_and_predicted.pdf} +\caption{ \todo{} } +\label{fig:part1:job_count_dist} +\end{figure} + +\begin{figure}[h] +\includegraphics[width=\textwidth]{../results/analysis/part1_mm1/graphs/quantiles_actual_and_predicted.pdf} +\caption{ \todo{} note x scale huge difference} +\label{fig:part1:quantiles} +\end{figure} + \clearpage % -------------------------------------------------------------------------------- diff --git a/scripts/r/part1_mm1.r b/scripts/r/part1_mm1.r index 442c0c9..5cd30f1 100644 --- a/scripts/r/part1_mm1.r +++ b/scripts/r/part1_mm1.r @@ -43,11 +43,12 @@ print(paste0("Traffic intensity: ", round(traffic_intensity, digits=2))) predicted = list() predicted$type <- "predicted" predicted$mean_num_jobs_in_system <- traffic_intensity / (1-traffic_intensity) +predicted$std_num_jobs_in_system <- traffic_intensity / (1-traffic_intensity)^2 predicted$mean_num_jobs_in_queue <- traffic_intensity^2 / (1-traffic_intensity) predicted$utilisation <- 1 - traffic_intensity predicted$mean_response_time <- 1 / (service_rate) / (1 - traffic_intensity) * 1000 # ms -predicted$response_time_q50 <- predicted$mean_response_time * log(100 / (100-50)) -predicted$response_time_q95 <- predicted$mean_response_time * log(100 / (100-95)) +predicted$response_time_q50 <- predicted$mean_response_time * log(1 / (1-0.5)) +predicted$response_time_q95 <- predicted$mean_response_time * log(1 / (1-0.95)) # ---- Actual results ---- actual = list() @@ -72,6 +73,7 @@ response_times <- requests$timeReturned - requests$timeEnqueued actual$type <- "actual" actual$mean_num_jobs_in_system <- means$total +actual$std_num_jobs_in_system <- sum(distributions$total * (distributions$num_elements-means$total)^2) actual$mean_num_jobs_in_queue <- means$queue actual$utilisation <- 1 - (distributions %>% filter(num_elements==0))$total actual$mean_response_time <- mean(response_times) @@ -79,3 +81,49 @@ actual$response_time_q50 <- quantile(response_times, probs=c(0.5)) actual$response_time_q95 <- quantile(response_times, probs=c(0.95)) comparison <- rbind(data.frame(predicted), data.frame(actual)) + + + + + +# ---- Plots ---- +# Distribution of number of jobs in system +num_elements <- distributions$num_elements +actual_prob <- distributions$total +predicted_prob <- (1-traffic_intensity) * traffic_intensity^num_elements + +data1 <- data.frame(num_elements, actual=actual_prob, predicted=predicted_prob) %>% + melt(id.vars=c("num_elements")) + +ggplot(data1, aes(x=num_elements, y=value, color=variable, fill=variable)) + + geom_bar(stat="identity") + + facet_wrap(~variable, nrow=1) + + xlab("Number of jobs in the system") + + ylab("Probability") + + asl_theme +ggsave(paste0(output_dir, "/graphs/job_count_dist_actual_and_predicted.pdf"), + width=fig_width, height=fig_height/2) + +# Quantiles of response time +quantiles <- c(0.01, 0.05, 0.1, 0.25, 0.5, 0.75, 0.9, 0.95, 0.99) +actual_response_times <- quantile(response_times, probs=quantiles) +predicted_response_times <- predicted$mean_response_time * log(100 / (100-quantiles)) +predicted_response_times <- ifelse(quantiles > 1-traffic_intensity, predicted_response_times, 0) + +data2 <- data.frame(quantiles, actual=actual_response_times, + predicted=predicted_response_times) %>% + melt(id.vars=c("quantiles")) +ggplot(data2, aes(x=value, y=quantiles, color=variable)) + + geom_line(size=1) + + geom_point(size=2) + + facet_wrap(~variable, scales="free_x") + + xlab("Response time") + + ylab("Quantile") + + asl_theme +ggsave(paste0(output_dir, "/graphs/quantiles_actual_and_predicted.pdf"), + width=fig_width, height=fig_height/2) + + + + +