From fce3737607894454d24a73ec212e5ff46d54188e Mon Sep 17 00:00:00 2001 From: taivop Date: Thu, 22 Dec 2016 14:26:51 +0100 Subject: [PATCH] fix #182 all todos done --- report/milestone3.pdf | Bin 327735 -> 329302 bytes report/milestone3.tex | 28 +++++++++++++--------------- scripts/r/part2_mmm.r | 6 ++++-- 3 files changed, 17 insertions(+), 17 deletions(-) diff --git a/report/milestone3.pdf b/report/milestone3.pdf index 7d4509bebbf55485208769c5a190b6b0daae2139..2175410eef85b382e2ebdab6e4738e896af73f3e 100644 GIT binary patch delta 43598 zcmZs?V{~Op)GnMI+w9oZj&0kvopj6{Cmq{n$F|+EI!4E~(;a+$&Ux>9$GGGBv&XDj ztLB(BYwcC_JnNZlftbrNnCO(s;*yN4OdRl(b3aE`;aSO&X_RYHPf~mJ=SeHJ9|n5Xj*evOk@CUw|#ZOgQPoN2l6r)5w|gv za^&m*zZReKC<@$7M9!y)ejW~(UoXK0VHYtK617sfPL8F`f^$*)$eOBVbIvH`6e+;0 zq`AmX_N==7%F=-9CWc#N%hF6BZ!iJQfel(yjKq8CWROi#jO`*{a2UzQ-qorXEvz5MzMJ3-why*DU zn_45X&Z83FCOyv$krxw(95okqFzQUX=0&O=MC}*R6o;lK%I9q1ks#)=lZm-(5NMUT z2uvl}-YSCI9L9F$ma}P~ajm$=|0ou>O|5osuGA$E3_wQY9ILD9Q!I{Zfwxm` zP~Ck`8Ji?q_^r23d)QVp4bzRvwgt*PyP}PM^~RKorNU*<*hfnj0e{~N;TMJIkFn_b z#!KYx%e`eOiGUK{`R=^M8I}=~#R}_wdJ+MBFP3fApM@IJ*h3`fB;c3PkxJy@HDyaE zp3-WeMb>yBnB{d+3S1^Q$m1$nXptM;<|!n3&R6zBZ8?5b^S5|SJyUP}77Uu@1V?B< z6{t0(6Czn%he(`h74ilYl3Wtyn3MO%!6Kl|+II)*-h6wMQ)B@0^b6ej%*E&<-| zsHgq;0YJO701bLvLY7&QvqC4c8;>>&+D+j1bh=MW+{ow{wBehp`sBYVI@wXg+QX@} z9@N|slBF+G{5Dt$15#gi@Xl7EH1=v8NvsD&l`gh$o1H-cgg1s|{V-n^ls9 zk1wb5w$&ZBFG%BGff2v)U1>&FkrLS*a3=&1B&PN7FImTud-}dEN_-|acw!{~fu=!b z|KI;QD;GOQGAj%nX#DFYCu+~E*2DY^Af%?DM86{GlEx)9S3!~P+XRe{_!>jJv_<&- z;q`qMMC{%wI$i{?^bR@oC`BbbZ*=1TSe zf5)VDV+?JG)i%ByOoZ78K{M!+Nk>seszl=RI#`ooqpM`B9<_6=`jx?#^z~) zuqceYd!u^FEIE{ZF*HG7XyMLnC=Bb`cY7f6hGfEo5UK7+L0IrsGQz>YtvMbtuSR|u zbbAt%uLQ*>5j2yMm>lTdxI~oS8)?pH0^j!rAawKQ?z*nLr6$MRob>8`m)WIuDE;zl zYWKVYnQW}!s5_jFwU!xel=Xd{CTvX(eXnwv?QHT9SXjF1`e;5itUZrrbU*&tS9@wY zsN6>UyZx*xF|Su%)uA%FvyMyM>CaJ7QX4tBx6qx6r;Cn5mct7CKoEh(CEn6C^SOen zO56L>M=TvSM*O<%yU7M36}AMi=EmLi=aCe6*aLO0UZJ2K+lPHgWg{6g+~n z=i#o_;bzY&OWT%wv>?ohU)3aWDu_J%`)W6Q9*z#HU+QwD5zz!&b7#&R?kfoa%@`8TT5<2C+gHo`gTK!MeILG5vR~2$;XuLxS(HMO@W{(;6rT^O_@#y(+x*78lP5-=Q65vzNTs z?;q^<#|3v>h%bBtO6BRojSQDBb?)=xK)poEHoVuIAyLN>t5r^MJ!-Vl?C+wJ`(+@~ zKolZ|v{@nj<>t2v9}VWTcwU-Nez8LI(qmIN$1TUE%0rb^As@|rj-{b1fn3`P2R4Q{ z8kimx+CFVC8}i*KQTr1^%h%(JzRz3g2?bf+%E;fPTQw`pju#P)Kywn%<|VE;NM?$U zQ}yiBG%e-pcb{i2F&Br)SWE?)Pg$-CjCW^7T5~Ty`N`wQKY7S%{)YMH zg7Yvf8#pIT{I(m&k>z4gG$|!un{5@%-oF}|YG`X1Yv^m38Pi*LTn6@o$Do)oyOnQ5 z2N3=r!*n1T1jUTqt$p*?`p?)Sx;C0X`OT0<-If0C{Ml^tiy;lAYg(rV4|AD0?H6-C z195KFuB2aMFk7*T?qm>jY8K`NPgNv@+JmCa?1_hX+e&Uzy|l`>31wDwW9rFp5lWwA zcIqrw{Y!I7ZfX?rgov%3N~5$7p5|JF3!MkZgN{@$l|sQl9dA}Bz=5Y(^~^=6lxsQi3cXIbPj&hh~fQd6jL?;QA9sZt7*xDi`!yCNiQM{v8;x0()D z7!}h7C2h|ixq;RVYcZ!L*Cd|704N4CtqzQ8wfPMfI?sZrWjbvTVZ9_hA@z44=!ylT z%V?x0`^6PG>Jn1pXqHfN$7ecXb2oHJ@Q(`}+ff{AJ)$q8t2&%-{RRIQUzXxH6VQFu zXGhaP&iE8Elv~`LjEWcPM~dR@vVCueaf77A>sO7&%m$$*IWwZKo(a>{$)Z7CsZ%lX z6E@(EFoO*d!{@+t?lPz*H0tAqS zy@~Y8G7^A0y+0nHpR7(}2H;6YG6%>b16ltWqslA^BmuIrrYqJ17$AVGz$OveO-OK7 z_BLm7Km>+6^2-wnhd`Jqdv z=;34={dcMkhhSfY-5<`HFkP|xe_BOjWRIOdTGlk>54Q?hfM_TA`pVmRu6 zbAdwPQue!YOY0wjPkwdx>6#5!jr2{18)|stOxVh!W-Jj0uabdUkFI1J(9rd4}M=u%c-?Mvf&LW&JeubO&)xtL;P5d6BQ>>ogUO)s}l^?T}m%z zyuKS}+(ZZ`4j!^&g)>W*)atln@)7aB;VtQ~Fo)qwcWwJ}r`OcSe2Lo6*GCn1;RF!T z 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%0DkJR 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 CzKucv delta 42243 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≺{+dX;QwQ^xaIf2S(F>(qqX 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 MAyHF{D@Y*y5Bw#e_5c6? diff --git a/report/milestone3.tex b/report/milestone3.tex index e3522b2..392d4c8 100644 --- a/report/milestone3.tex +++ b/report/milestone3.tex @@ -157,49 +157,47 @@ \subsection{Model} The model built here does not account for the effect of replication. For this reason I will only use data from experiments for which $R=1$. \subsection{Problems of the model} -\todo{} - -\begin{enumerate} - \item I actually have $m$ queues (one for each server), not a single queue; each request is assigned to a server when \linkmain{LoadBalancer} receives it. - \item I map requests to servers uniformly. M/M/m assumes that each server takes a request when it finishes with the previous one, but that is not true in my case -- I take earlier -\end{enumerate} +As in the previous section, the assumption of a single queue is inaccurate -- we actually have $S$ queues for \get{}s and $S$ queues for \set{}s. Another inaccuracy is the M/M/m assumption that each server dequeues a request only once it has finished with the previous one: this is true if we consider each \linkmain{ReadWorker} a separate server, but incorrect for \linkmain{WriteWorker}s that are designed to be asynchronous (see Section~\ref{sec:part3:problems} for a detailed discussion about this design). \subsection{Parameter estimation} We need to determine three parameters: the number of servers $m$, the arrival rate $\lambda$ and the service rate of each server $\mu$. -Let us first find $m$. Since SUT has $S$ \linkmain{MiddlewareComponent}s, each of which has $T$ read threads and 1 write thread, all of which ideally run in parallel (i.e. none starve for resources). Thus I take $m := S \cdot (T + 1)$. +Let us first find $m$. SUT has $S$ \linkmain{MiddlewareComponent}s, each of which has $T$ read threads and 1 write thread, all of which ideally run in parallel (i.e. none are starved of resources). Thus I take $m := S \cdot (T + 1)$. -To estimate $\mu$ we can calculate the service time of each worker as the time spent between dequeueing the request and sending it back to the client: $t_{service} := t_{returned} - t_{dequeued}$. From there we find $\mu := \frac{1}{t_{service}}$. Note that this calculation does not distinguish between write and read threads. +To estimate $\mu$ we can calculate the service time of each server (worker) as the time spent between dequeueing the request and sending it back to the client: $t_{service} := t_{returned} - t_{dequeued}$. From there we find $\mu := \frac{1}{t_{service}}$. Note that this calculation does not distinguish between \get{}s and \set{}s. We can find $\lambda$ as simply the mean throughput over 1-second windows, similarly to Section~\ref{sec:part1:model}. \subsection{Data} -The experimental data used in this section comes from Milestone~2 Section~2 and can be found in \texttt{\href{https://gitlab.inf.ethz.ch/pungast/asl-fall16-project/tree/master/results/replication}{results/replication}}. For this section, only data from one repetition (rep. no. 5) and $R=1$ were used (short names \texttt{replication-S*-R1-r5}). As a reminder, that experiment had \todo{} $S=3$, $R=3$, $W=1\%$, $T=5$ and $C=192$. +The experimental data used in this section comes from Milestone~2 Section~2 and can be found in \texttt{\href{https://gitlab.inf.ethz.ch/pungast/asl-fall16-project/tree/master/results/replication}{results/replication}}. For this section, only data from one repetition (rep. no. 5) and $R=1$ were used (short names \texttt{replication-S*-R1-r5}), which gives a total of 3 distinct experiments. As a reminder, the experiments had $S \in \{3,5,7\}$, $W=5\%$, $T=32$ and $C=180$. The first 2 minutes and last 2 minutes were dropped as warm-up and cool-down time similarly to previous milestones. \subsection{Comparison of model and experiments} -Table~\ref{tbl:part2:comparison_table} shows the results of modelling the system as M/M/m. Since $\rho < 1$ the model is stable for all cases. However, the table reveals an important shortcoming of the model: waiting times and the time spent in the queue are 0. +\input{../results/analysis/part2_mmm/comparison_table.txt} + +Table~\ref{tbl:part2:comparison_table} shows the results of modelling the system as M/M/m. Since $\rho < 1$, the model is stable for all cases. However, the table reveals an important shortcoming of the model: waiting times and the time spent in the queue are 0. -The reason becomes clear if we look at the formulas for calculating $p_0$ (the probability of 0 jobs in the system). As $m$ goes to infinity, $p_0$ goes to zero (because the inverse of $p_0$ is a sum that goes to infinity). Even for finite values of $m \in [99, 231]$, $p_0$ is on the order of $10^{-32}$ to $10^{-77}$ (for rho=0.8). Since the probability of queueing $\varrho$ also depends on $p_0$, this causes queueing to become nonexistent in the M/M/m model. +The reason becomes clear if we look at the formulas for calculating $p_0$ (the probability of 0 jobs in the system). As $m$ goes to infinity, $p_0$ goes to zero (because the inverse of $p_0$ is a sum that goes to infinity). Even for finite values of $m \in [99, 231]$, $p_0$ is on the order of $10^{-32}$ to $10^{-77}$ (for rho=0.8). Since the probability of queueing $\varrho$ also depends on $p_0$, this causes queueing to become nonexistent in the M/M/m model. Needless to say, this is a huge -There are some aspects in which the model performs well, though. Figure~\ref{fig:part2:responsetime} shows that the model only slightly underestimates response time, although the variance estimate is too low. +There are some aspects in which the model performs well, though. Figure~\ref{fig:part2:responsetime} shows that the model only slightly underestimates response time, although the variance estimate is too low. For the same reason the number of jobs in the system -- which mostly depends on the ratio of the response time and network delay -- is off by a relatively small factor. -\todo{} +\subsubsection{Scalability} \begin{figure}[h] \centering \includegraphics[width=\textwidth]{../results/analysis/part2_mmm/graphs/response_time_predicted_and_actual.pdf} -\caption{\todo{} note difference in scale} +\caption{Predicted and actual mean response time of SUT (line with points) and standard deviation of the response time (semi-transparent ribbon).} \label{fig:part2:responsetime} \end{figure} -\input{../results/analysis/part2_mmm/comparison_table.txt} +Figure~\ref{fig:part2:responsetime} shows the response time of SUT as a function of $S$ and the M/M/m predictions of the same metric (exact numbers are shown in Table~\ref{tbl:part2:comparison_table}). The model is correctly able to capture the overall trend: there is almost no change in response time when $S$ is changed. However, M/M/m underestimates the variance in response time; this is because of the nonexistent predicted queueing time discussed above. Furthermore, the model predicts a slight increase in response time as $S$ increases (2.89 ms at $S=3$ to 3.28 ms at $S=7$), which we do not observe. The scalability of the system -- especially with respect to \set{}s -- is further discussed in Section~\ref{sec:part3:problems}. +In summary, while M/M/m does a much better job than M/M/1 at capturing the behaviour of SUT, its main shortcoming -- no queueing -- renders the model useless for practical purposes (we want to build a queueing model!). This is the motivation for building a more complex model in Section~\ref{sec:part3-network-of-queues}. \clearpage % -------------------------------------------------------------------------------- diff --git a/scripts/r/part2_mmm.r b/scripts/r/part2_mmm.r index cfe3149..1bd500b 100644 --- a/scripts/r/part2_mmm.r +++ b/scripts/r/part2_mmm.r @@ -158,7 +158,9 @@ ggsave(paste0(output_dir, "/graphs/utilisation_vs_clients.pdf"), width=fig_width/2, height=fig_height/2) # Mean response time -ggplot(comparisons, aes(x=servers, y=response_time_mean, color=type, fill=type)) + +data2 <- comparisons %>% + mutate(type=factor(type, levels=c("actual", "predicted"))) +ggplot(data2, aes(x=servers, y=response_time_mean, color=type, fill=type)) + geom_ribbon(aes(ymin=response_time_mean-response_time_std, ymax=response_time_mean+response_time_std), alpha=0.3, color=NA) + @@ -167,7 +169,7 @@ ggplot(comparisons, aes(x=servers, y=response_time_mean, color=type, fill=type)) facet_wrap(~type, nrow=1) + #ylim(0, NA) + xlab("Number of servers") + - ylab("Mean response time") + + ylab("Mean response time [ms]") + asl_theme + theme(legend.position="none") ggsave(paste0(output_dir, "/graphs/response_time_predicted_and_actual.pdf"),