Merge branch 'master' of http://git.hps.vi4io.org/eugen.betke/ddn-ime-evaluation
This commit is contained in:
		
						commit
						6c09eafa76
					
				
							
								
								
									
										107
									
								
								benchmark/eval_analysis_v2.R
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										107
									
								
								benchmark/eval_analysis_v2.R
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,107 @@ | ||||
| #!/usr/bin/env Rscript | ||||
| 
 | ||||
| library(sqldf) | ||||
| library(plyr) | ||||
| library(plot3D) | ||||
| library(ggplot2) | ||||
| 
 | ||||
| 
 | ||||
| args = commandArgs(trailingOnly=TRUE) | ||||
| print(args) | ||||
| if (2 != length(args)) { | ||||
| 	print("Requires 2 parameters)") | ||||
| 	q() | ||||
| } | ||||
| 
 | ||||
| file_db = args[1] | ||||
| folder_out = args[2] | ||||
| print(file_db) | ||||
| 
 | ||||
| make_facet_label <- function(variable, value){ | ||||
|   return(paste0(value, " KiB")) | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| #connection = dbConnect(SQLite(), dbname='results.ddnime.db') | ||||
| print(file_db) | ||||
| connection = dbConnect(SQLite(), dbname=file_db) | ||||
| 
 | ||||
| dbdata = dbGetQuery(connection,'select * from p' ) | ||||
| dbdata[,"blocksize"] = dbdata$t | ||||
| 
 | ||||
| 
 | ||||
| summary(dbdata) | ||||
| 
 | ||||
| nn_lab <- sprintf(fmt="NN=%d", unique(dbdata$nn)) | ||||
| names(nn_lab) <- unique(dbdata$nn) | ||||
| ppn_lab <- sprintf(fmt="PPN=%d", unique(dbdata$ppn)) | ||||
| names(ppn_lab) <- unique(dbdata$ppn) | ||||
| breaks <- c(unique(dbdata$blocksize)) | ||||
| 
 | ||||
| 
 | ||||
| dbdata$lab_access <- dbdata$access | ||||
| dbdata$lab_access[dbdata$lab_access == "write"] = "Write" | ||||
| dbdata$lab_access[dbdata$lab_access == "read"] = "Read" | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| for (scale in c("linear", "logarithmic")) { | ||||
| 
 | ||||
| 	p = ggplot(data=dbdata, aes(x=nn, y=bwMiB, colour=as.factor(blocksize/1024), group=blocksize), ymin=0) + | ||||
|         #aes(x=nn, y=bwMiB) + | ||||
| 		ggtitle("POSIX independent random access to a shared file with IOR") + | ||||
| 		facet_grid(ppn ~  lab_access, labeller = labeller(nn = as_labeller(nn_lab), ppn = as_labeller(ppn_lab))) + | ||||
| 		xlab("Nodes") + | ||||
| 		ylab("Performance in MiB/s") + | ||||
| 		theme(axis.text.x=element_text(angle=90, hjust=0.95, vjust=0.5)) + | ||||
| 		theme(legend.position="bottom") + | ||||
| 		#scale_x_continuous(breaks = c(unique(data$nn))) + | ||||
| 		scale_x_log10(breaks = c(unique(dbdata$nn))) + | ||||
| 		scale_color_manual(name="Blocksize in KiB: ", values=c('#999999','#E69F00', '#56B4E9', '#000000'), breaks=sort(unique(dbdata$blocksize)/1024)) + | ||||
| 		#stat_summary(fun.y="median", geom="line", aes(group=factor(blocksize))) + | ||||
| 		stat_summary(fun.y="mean", geom="line", aes(group=factor(blocksize))) + | ||||
| 		#geom_boxplot() | ||||
|         geom_point() | ||||
| 		#geom_point(data=dbdata, aes(x=nn, y=PortRcvData), colour='red') + | ||||
| 		#geom_point(data=dbdata, aes(x=nn, y=PortXmitData), colour='blue') | ||||
| 
 | ||||
| 	if ( "logarithmic" == scale ) { | ||||
| 		p = p + scale_y_log10() | ||||
| 	} | ||||
| 
 | ||||
| 	filename_eps = sprintf("%s/performance_%s.eps", folder_out, scale) | ||||
| 	filename_png = sprintf("%s/performance_%s.png", folder_out, scale) | ||||
| 	ggsave(filename_png, width = 10, height = 8) | ||||
| 	ggsave(filename_eps, width = 10, height = 8) | ||||
| 	#system(sprintf("epstopdf %s", filename_eps)) | ||||
| 	system(sprintf("rm %s", filename_eps)) | ||||
| 
 | ||||
| 	p = ggplot(data=dbdata, ymin=0) + | ||||
|         aes(x=nn, y=(PortXmitData + PortRcvData) * 4 / ppn, colour=as.factor(blocksize/1024), group=blocksize) + | ||||
|         #aes(x=nn, y=bwMiB) + | ||||
|         ggtitle('Infiniband throughput (PortRcvData and PortXmitData by "perfquery -x")') + | ||||
| 		facet_grid(ppn ~  lab_access, labeller = labeller(nn = as_labeller(nn_lab), ppn = as_labeller(ppn_lab))) + | ||||
| 		xlab("Nodes") + | ||||
| 		ylab("Performance in MiB/s") + | ||||
| 		theme(axis.text.x=element_text(angle=90, hjust=0.95, vjust=0.5)) + | ||||
| 		theme(legend.position="bottom") + | ||||
| 		#scale_x_continuous(breaks = c(unique(data$nn))) + | ||||
| 		scale_x_log10(breaks = c(unique(dbdata$nn))) + | ||||
| 		scale_color_manual(name="Blocksize in KiB: ", values=c('#999999','#E69F00', '#56B4E9', '#000000'), breaks=sort(unique(dbdata$blocksize)/1024)) + | ||||
| 		stat_summary(fun.y="mean", geom="line", aes(group=factor(blocksize))) + | ||||
|         #geom_point(data=dbdata, aes(x=nn, y=PortXmitData), colour='blue') | ||||
|         geom_point() | ||||
| 
 | ||||
| 	if ( "logarithmic" == scale ) { | ||||
| 		p = p + scale_y_log10() | ||||
| 	} | ||||
| 
 | ||||
| 	filename_eps = sprintf("%s/ib_%s.eps", folder_out, scale) | ||||
| 	filename_png = sprintf("%s/ib_%s.png", folder_out, scale) | ||||
| 	ggsave(filename_png, width = 10, height = 8) | ||||
| 	ggsave(filename_eps, width = 10, height = 8) | ||||
| 	#system(sprintf("epstopdf %s", filename_eps)) | ||||
| 	system(sprintf("rm %s", filename_eps)) | ||||
| 
 | ||||
| } | ||||
							
								
								
									
										0
									
								
								benchmark/results_v2.R
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								benchmark/results_v2.R
									
									
									
									
									
										Normal file
									
								
							
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user