## Loading required package: data.table
## Loading required package: ggplot2

Number of executed orders by account and ReqPerSec

table(d$Account, d$OPS_Req, d$TestNumber)
## , ,  = 1
## 
##         
##            1
##   100011 300
      print("Top longest execution")    
## [1] "Top longest execution"
      print(d[order(-Total)][1:10,])
##     TestNumber Account OPS_Req OPS_Mean OPS_Sd   Order New Calculated1
##  1:          1  100011       1        1      0 5174002 436         420
##  2:          1  100011       1        1      0 5174003  53           0
##  3:          1  100011       1        1      0 5174234  19          32
##  4:          1  100011       1        1      0 5174097  19          27
##  5:          1  100011       1        1      0 5174262  19          26
##  6:          1  100011       1        1      0 5174037  10          27
##  7:          1  100011       1        1      0 5174258   8          32
##  8:          1  100011       1        1      0 5174033  17          20
##  9:          1  100011       1        1      0 5174022   9          22
## 10:          1  100011       1        1      0 5174274  11          30
##     Filled Calculated2 Total
##  1:     52          31   939
##  2:      1           0    54
##  3:      0           3    54
##  4:      2           0    48
##  5:      0           3    48
##  6:      0           9    46
##  7:      0           6    46
##  8:      0           8    45
##  9:     12           0    43
## 10:      2           0    43
      print("Worst New execution")    
## [1] "Worst New execution"
      print(d[order(-New)][1:10,])
##     TestNumber Account OPS_Req OPS_Mean OPS_Sd   Order New Calculated1
##  1:          1  100011       1        1      0 5174002 436         420
##  2:          1  100011       1        1      0 5174003  53           0
##  3:          1  100011       1        1      0 5174206  21          12
##  4:          1  100011       1        1      0 5174023  20           9
##  5:          1  100011       1        1      0 5174097  19          27
##  6:          1  100011       1        1      0 5174222  19           9
##  7:          1  100011       1        1      0 5174234  19          32
##  8:          1  100011       1        1      0 5174262  19          26
##  9:          1  100011       1        1      0 5174088  18           9
## 10:          1  100011       1        1      0 5174033  17          20
##     Filled Calculated2 Total
##  1:     52          31   939
##  2:      1           0    54
##  3:      0           4    37
##  4:      2           0    31
##  5:      2           0    48
##  6:      0          12    40
##  7:      0           3    54
##  8:      0           3    48
##  9:      1           5    33
## 10:      0           8    45
      print("Worst Calculated1 execution")    
## [1] "Worst Calculated1 execution"
      print(d[order(-Calculated1)][1:10,])
##     TestNumber Account OPS_Req OPS_Mean OPS_Sd   Order New Calculated1
##  1:          1  100011       1        1      0 5174002 436         420
##  2:          1  100011       1        1      0 5174234  19          32
##  3:          1  100011       1        1      0 5174258   8          32
##  4:          1  100011       1        1      0 5174291   8          32
##  5:          1  100011       1        1      0 5174061   8          31
##  6:          1  100011       1        1      0 5174274  11          30
##  7:          1  100011       1        1      0 5174047   7          28
##  8:          1  100011       1        1      0 5174037  10          27
##  9:          1  100011       1        1      0 5174097  19          27
## 10:          1  100011       1        1      0 5174262  19          26
##     Filled Calculated2 Total
##  1:     52          31   939
##  2:      0           3    54
##  3:      0           6    46
##  4:      0           1    41
##  5:      0           0    39
##  6:      2           0    43
##  7:      0           0    35
##  8:      0           9    46
##  9:      2           0    48
## 10:      0           3    48
      print("Worst Filled execution")    
## [1] "Worst Filled execution"
      print(d[order(-Filled)][1:10,])
##     TestNumber Account OPS_Req OPS_Mean OPS_Sd   Order New Calculated1
##  1:          1  100011       1        1      0 5174002 436         420
##  2:          1  100011       1        1      0 5174022   9          22
##  3:          1  100011       1        1      0 5174103   5          16
##  4:          1  100011       1        1      0 5174132   6           9
##  5:          1  100011       1        1      0 5174186   7          11
##  6:          1  100011       1        1      0 5174202  11           4
##  7:          1  100011       1        1      0 5174017   7          23
##  8:          1  100011       1        1      0 5174029  11          11
##  9:          1  100011       1        1      0 5174183   6          17
## 10:          1  100011       1        1      0 5174228   6           9
##     Filled Calculated2 Total
##  1:     52          31   939
##  2:     12           0    43
##  3:     12           3    36
##  4:      9           2    26
##  5:      6           0    24
##  6:      6           0    21
##  7:      5           0    35
##  8:      5           0    27
##  9:      5           0    28
## 10:      5           0    20
      print("Proprtion delay for each execution staqge")
## [1] "Proprtion delay for each execution staqge"
      print ( apply( apply(d[,7:10, with=F], 1, prop.table), 1, mean) )
##         New Calculated1      Filled Calculated2 
##   0.3468905   0.4886324   0.0262423   0.1382348

Summary execution time ~ requested orders per second

d[,OPS_Req:=OPS_Req * TestNumber]
d[,OPS_Mean:=OPS_Mean * TestNumber]

si<-rbind( tapply(d$Total, d$OPS_Req, length), 
           tapply(d$Total, d$OPS_Req, min),
           tapply(d$Total, d$OPS_Req, mean), 
           tapply(d$Total, d$OPS_Req, median), 
           tapply(d$Total, d$OPS_Req, max), 
           tapply(d$Total, d$OPS_Req, sd))
rownames(si)<-c("length", "min", "mean", "median", "max", "sd")
si<-round(t(si))
ggplot(melt(si), aes(Var1, value)) + geom_point() + facet_grid(Var2 ~ ., scales = "free") + xlab("Requested Orders Per Second")

Scaling

ggplot( d, aes(x=OPS_Req, y=OPS_Mean)) + geom_line() + geom_abline(intercept = 0, slope = 1,  size=2, color='red')