Skip to content
Snippets Groups Projects
Commit 2ffd77c8 authored by Jan Waller's avatar Jan Waller
Browse files

work on scripts

parent 2f1aac44
No related branches found
No related tags found
No related merge requests found
...@@ -54,20 +54,26 @@ for (cr in configs.recursion) { ...@@ -54,20 +54,26 @@ for (cr in configs.recursion) {
for (cr in configs.recursion) { for (cr in configs.recursion) {
printvalues = matrix(nrow=5,ncol=configs.count,dimnames=list(c("mean","ci95%","md25%","md50%","md75%"),c(1:configs.count))) printvalues = matrix(nrow=7,ncol=configs.count,dimnames=list(c("mean","ci95%","md25%","md50%","md75%","max","min"),c(1:configs.count)))
printthrough = matrix(nrow=5,ncol=configs.count,dimnames=list(c("mean","ci95%","md25%","md50%","md75%"),c(1:configs.count))) printthrough = matrix(nrow=7,ncol=configs.count,dimnames=list(c("mean","ci95%","md25%","md50%","md75%","max","min"),c(1:configs.count)))
for (cc in (1:configs.count)) { for (cc in (1:configs.count)) {
printvalues["mean",cc]=mean(resultsBIG[(1:length(configs.recursion))[configs.recursion==cr],cc,c(1:(results.count-results.skip))]) printvalues["mean",cc]=mean(resultsBIG[(1:length(configs.recursion))[configs.recursion==cr],cc,c(1:(results.count-results.skip))])
printvalues["ci95%",cc]=qnorm(0.975)*sd(resultsBIG[(1:length(configs.recursion))[configs.recursion==cr],cc,c(1:(results.count-results.skip))])/sqrt(length(resultsBIG[(1:length(configs.recursion))[configs.recursion==cr],cc,c(1:(results.count-results.skip))])) printvalues["ci95%",cc]=qnorm(0.975)*sd(resultsBIG[(1:length(configs.recursion))[configs.recursion==cr],cc,c(1:(results.count-results.skip))])/sqrt(length(resultsBIG[(1:length(configs.recursion))[configs.recursion==cr],cc,c(1:(results.count-results.skip))]))
printvalues[c("md25%","md50%","md75%"),cc]=quantile(resultsBIG[(1:length(configs.recursion))[configs.recursion==cr],cc,c(1:(results.count-results.skip))],probs=c(0.25,0.5,0.75)) printvalues[c("md25%","md50%","md75%"),cc]=quantile(resultsBIG[(1:length(configs.recursion))[configs.recursion==cr],cc,c(1:(results.count-results.skip))],probs=c(0.25,0.5,0.75))
printvalues["max",cc]=max(resultsBIG[(1:length(configs.recursion))[configs.recursion==cr],cc,c(1:(results.count-results.skip))])
printvalues["min",cc]=min(resultsBIG[(1:length(configs.recursion))[configs.recursion==cr],cc,c(1:(results.count-results.skip))])
printthrough["mean",cc]=mean(throughput[[(1:length(configs.recursion))[configs.recursion==cr],cc]]) printthrough["mean",cc]=mean(throughput[[(1:length(configs.recursion))[configs.recursion==cr],cc]])
printthrough["ci95%",cc]=qnorm(0.975)*sd(throughput[[(1:length(configs.recursion))[configs.recursion==cr],cc]])/sqrt(length(throughput[[(1:length(configs.recursion))[configs.recursion==cr],cc]])) printthrough["ci95%",cc]=qnorm(0.975)*sd(throughput[[(1:length(configs.recursion))[configs.recursion==cr],cc]])/sqrt(length(throughput[[(1:length(configs.recursion))[configs.recursion==cr],cc]]))
printthrough[c("md25%","md50%","md75%"),cc]=quantile(throughput[[(1:length(configs.recursion))[configs.recursion==cr],cc]],probs=c(0.25,0.5,0.75)) printthrough[c("md25%","md50%","md75%"),cc]=quantile(throughput[[(1:length(configs.recursion))[configs.recursion==cr],cc]],probs=c(0.25,0.5,0.75))
printthrough["max",cc]=max(throughput[[(1:length(configs.recursion))[configs.recursion==cr],cc]])
printthrough["min",cc]=min(throughput[[(1:length(configs.recursion))[configs.recursion==cr],cc]])
} }
resultstext=formatC(printvalues,format="f",digits=4,width=8) resultstext=formatC(printvalues,format="f",digits=4,width=8)
throughtext=formatC(printthrough,format="f",digits=1,width=12) throughtext=formatC(printthrough,format="f",digits=1,width=12)
print(resultstext) print(resultstext)
print(throughtext)
write(paste("Recursion Depth: ", cr),file=outtxt_fn,append=TRUE) write(paste("Recursion Depth: ", cr),file=outtxt_fn,append=TRUE)
write("response time",file=outtxt_fn,append=TRUE)
write.table(resultstext,file=outtxt_fn,append=TRUE,quote=FALSE,sep="\t",col.names=FALSE) write.table(resultstext,file=outtxt_fn,append=TRUE,quote=FALSE,sep="\t",col.names=FALSE)
write("Throughput",file=outtxt_fn,append=TRUE) write("Throughput",file=outtxt_fn,append=TRUE)
write.table(throughtext,file=outtxt_fn,append=TRUE,quote=FALSE,sep="\t",col.names=FALSE) write.table(throughtext,file=outtxt_fn,append=TRUE,quote=FALSE,sep="\t",col.names=FALSE)
......
#rm(list=ls(all=TRUE))
results_fn="tmp/results-benchmark-binary/raw"
outtxt_fn="tmp/results-benchmark-binary/results-text.txt"
configs.loop=10
configs.labels=c("No Probe","Inactive Probe","Collecting Data","Writing Data","Reconstructing Data","Reducing Data")
configs.count=length(configs.labels)
results.count=100000000
results.skip=50000000
printvalues = matrix(nrow=7,ncol=configs.count,dimnames=list(c("mean","ci95%","md25%","md50%","md75%","max","min"),c(1:configs.count)))
cr=10
for (cc in (1:configs.count)) {
resultsBIG <- c()
for (cl in (1:configs.loop)) {
results_fn_temp=paste(results_fn, "-", cl, "-", cr, "-", cc, ".csv", sep="")
results=read.csv2(results_fn_temp,nrows=(results.count-results.skip),skip=results.skip,quote="",colClasses=c("NULL","numeric"),comment.char="",col.names=c("thread_id","duration_nsec"),header=FALSE)
resultsBIG <- c(resultsBIG, results[["duration_nsec"]]/(1000))
rm(results)
}
printvalues["mean",cc]=mean(resultsBIG)
printvalues["ci95%",cc]=qnorm(0.975)*sd(resultsBIG)/sqrt(length(resultsBIG))
printvalues[c("md25%","md50%","md75%"),cc]=quantile(resultsBIG,probs=c(0.25,0.5,0.75))
printvalues["max",cc]=max(resultsBIG)
printvalues["min",cc]=min(resultsBIG)
}
resultstext=formatC(printvalues,format="f",digits=4,width=8)
print(resultstext)
write("response time",file=outtxt_fn,append=TRUE)
write.table(resultstext,file=outtxt_fn,append=TRUE,quote=FALSE,sep="\t",col.names=FALSE)
#rm(list=ls(all=TRUE))
#data_fn="tmp/"
#folder_fn="results-benchmark-binary"
#results_fn=paste(data_fn,folder_fn,"/raw",sep="")
#output_fn=paste(data_fn,folder_fn,"/results-timeseries-avg.pdf",sep="")
#configs.loop=10
#configs.recursion=c(10)
#configs.labels=c("Method time (T)","Instrumentation (I)","Collecting (C)","Writing (W)")
#configs.colors=c("black","red","blue","green")
configs.count=length(configs.labels)
## We assume same amount of data in each category
#results.count=2000000
buckets.count=1000
buckets.size=results.count/buckets.count
## Configure Timeseries
#tsconf.min=0
#tsconf.max=50
pdf(output_fn, width=10, height=6.25, paper="special")
for (cr in configs.recursion) {
results.ts <- array(dim=c(buckets.count,configs.count))
if (exists("results.temp")) rm(results.temp)
for (cc in (1:configs.count)) {
results.bucket <- array(dim=c(buckets.count))
for (cl in (1:configs.loop)) {
results_fn_temp=paste(results_fn, "-", cl, "-", cr, "-", cc, ".csv", sep="")
results=read.csv2(results_fn_temp,quote="",colClasses=c("NULL","numeric"),comment.char="",col.names=c("thread_id","duration_nsec"),nrows=results.count)
if (exists("results.temp")) {
results.temp = data.frame(results.temp,results["duration_nsec"]/(1000))
} else {
results.temp = data.frame(results["duration_nsec"]/(1000))
}
rm(results,results_fn_temp)
}
results = rowMeans(results.temp)
rm(results.temp)
for (ci in (1:buckets.count)) {
results.bucket[ci] <- mean(results[(((ci-1)*buckets.size)+1):(ci*buckets.size)])
}
results.ts[,cc]=ts(results.bucket,end=results.count,deltat=buckets.size)
rm(results,results.bucket)
}
ts.plot(results.ts,gpars=list(ylim=c(tsconf.min,tsconf.max),col=configs.colors,xlab="Number of method executions",axes=FALSE))
axis(2)
axis(1,at=c(0,buckets.count/4,buckets.count/2,buckets.count*3/4,buckets.count),labels=format(c(0,results.count/4,results.count/2,results.count*3/4,results.count),scientific=FALSE))
legend("topright",inset=c(0.01,0.01),legend=c(rev(configs.labels)),lty="solid",col=rev(configs.colors),bg="white",title="Mean response time of ...",ncol=2)
title(ylab=expression(paste("Mean response time (",mu,"s)")))
}
invisible(dev.off())
#rm(list=ls(all=TRUE))
#data_fn="tmp/"
#folder_fn="results-benchmark-binary"
#results_fn=paste(data_fn,folder_fn,"/raw",sep="")
#output_fn=paste(data_fn,folder_fn,"/results-timeseries.pdf",sep="")
#configs.loop=10
#configs.recursion=c(10)
#configs.labels=c("No Probe","Deactivated Probe","Collecting Data","Writing Data")
#configs.colors=c("black","red","blue","green")
configs.count=length(configs.labels)
## We assume same amount of data in each category
#results.count=2000000
buckets.count=1000
buckets.size=results.count/buckets.count
## Configure Timeseries
#tsconf.min=0
#tsconf.max=50
pdf(output_fn, width=10, height=6.25, paper="special")
for (cr in configs.recursion) {
for (cl in (1:configs.loop)) {
results.ts <- array(dim=c(buckets.count,configs.count))
for (cc in (1:configs.count)) {
results.bucket <- array(dim=c(buckets.count))
results_fn_temp=paste(results_fn, "-", cl, "-", cr, "-", cc, ".csv", sep="")
results=read.csv2(results_fn_temp,quote="",colClasses=c("NULL","numeric"),comment.char="",col.names=c("thread_id","duration_nsec"),nrows=results.count)
results["rt_musec"]=results["duration_nsec"]/(1000)
results$duration_nsec <- NULL
for (ci in (1:buckets.count)) {
results.bucket[ci] <- mean(results[(((ci-1)*buckets.size)+1):(ci*buckets.size),"rt_musec"])
}
results.ts[,cc]=ts(results.bucket,end=results.count,deltat=buckets.size)
rm(results,results_fn_temp,results.bucket)
}
ts.plot(results.ts,gpars=list(ylim=c(tsconf.min,tsconf.max),col=configs.colors,xlab="Executions"))
legend("topright",inset=c(0.01,0.01),legend=c(rev(configs.labels)),lty="solid",col=rev(configs.colors),bg="white",title="Mean execution time of ...",ncol=2)
title(main=paste("Iteration: ", cl, " Recursion Depth: ", cr),ylab=expression(paste("Execution Time (",mu,"s)")))
}
}
invisible(dev.off())
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment