forked from rarias/bscpkgs
fwi: adjust input size to meet timing constraints
The previous iniput size for both granularity and strong scaling tests where too big to meet the timing constrains needed for garlic. This patch sets a new, smaller, input size. Also, a minor cleanup is applied to the rest of the fwi experiments and figures.
This commit is contained in:
@@ -30,7 +30,7 @@ w=5
|
||||
####################################################################
|
||||
### Line Graph
|
||||
####################################################################
|
||||
png("time.png", width=w*ppi, height=h*ppi, res=ppi)
|
||||
png("mtime.png", width=w*ppi, height=h*ppi, res=ppi)
|
||||
|
||||
## Create the plot with the normalized time vs nblocks
|
||||
p = ggplot(df, aes(x = blocksize, y=mtime, group=gitBranch, color=gitBranch)) +
|
||||
@@ -49,22 +49,23 @@ print(p)
|
||||
dev.off()
|
||||
|
||||
####################################################################
|
||||
### Boxplot
|
||||
### Line Graph
|
||||
####################################################################
|
||||
png("box.png", width=w*ppi, height=h*ppi, res=ppi)
|
||||
# Create the plot with the normalized time vs nblocks
|
||||
p = ggplot(df, aes(x=blocksize, y=time, group=gitBranch, colour=gitBranch)) +
|
||||
# Labels
|
||||
labs(x="Blocksize", y="Normalized time",
|
||||
title=sprintf("FWI Time"),
|
||||
subtitle=input_file) +
|
||||
# Draw boxplots
|
||||
geom_boxplot() +
|
||||
theme_bw() +
|
||||
theme(plot.subtitle=element_text(size=8)) +
|
||||
theme(legend.position = c(0.5, 0.88))
|
||||
png("time.png", width=w*ppi, height=h*ppi, res=ppi)
|
||||
|
||||
## Create the plot with the normalized time vs nblocks
|
||||
p = ggplot(df, aes(x = blocksize, y=time, group=gitBranch, color=gitBranch)) +
|
||||
geom_point() +
|
||||
geom_line() +
|
||||
theme_bw() +
|
||||
labs(x="Blocksize", y="Time (s)", title="FWI granularity",
|
||||
subtitle=input_file) +
|
||||
theme(plot.subtitle=element_text(size=8)) +
|
||||
theme(legend.position = c(0.5, 0.88))
|
||||
|
||||
# Render the plot
|
||||
print(p)
|
||||
## Save the png image
|
||||
|
||||
# Save the png image
|
||||
dev.off()
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ dataset = jsonlite::stream_in(file(input_file)) %>%
|
||||
jsonlite::flatten()
|
||||
|
||||
# Select block size to display
|
||||
useBlocksize = 1
|
||||
useBlocksize = 2
|
||||
|
||||
# We only need the nblocks and time
|
||||
df = select(dataset, config.blocksize, config.gitBranch, config.nodes, time) %>%
|
||||
@@ -59,7 +59,7 @@ print(p)
|
||||
dev.off()
|
||||
|
||||
####################################################################
|
||||
### Line plot (timei x nodes)
|
||||
### Line plot (time x nodes)
|
||||
####################################################################
|
||||
png("nxtime.png", width=w*ppi, height=h*ppi, res=ppi)
|
||||
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
library(ggplot2)
|
||||
library(dplyr)
|
||||
library(scales)
|
||||
library(jsonlite)
|
||||
|
||||
args=commandArgs(trailingOnly=TRUE)
|
||||
|
||||
# Read the timetable from args[1]
|
||||
input_file = "input.json"
|
||||
if (length(args)>0) { input_file = args[1] }
|
||||
|
||||
# Load the dataset in NDJSON format
|
||||
dataset = jsonlite::stream_in(file(input_file)) %>%
|
||||
jsonlite::flatten()
|
||||
|
||||
# We only need the nblocks and time
|
||||
df = select(dataset, config.blocksize, config.gitBranch, time) %>%
|
||||
rename(blocksize=config.blocksize, gitBranch=config.gitBranch) %>%
|
||||
group_by(blocksize, gitBranch) %>%
|
||||
mutate(mtime = median(time)) %>%
|
||||
ungroup()
|
||||
|
||||
df$gitBranch = as.factor(df$gitBranch)
|
||||
df$blocksize = as.factor(df$blocksize)
|
||||
|
||||
ppi=300
|
||||
h=5
|
||||
w=5
|
||||
|
||||
png("time.png", width=w*ppi, height=h*ppi, res=ppi)
|
||||
#
|
||||
## Create the plot with the normalized time vs nblocks
|
||||
p = ggplot(df, aes(x=blocksize, y=time)) +
|
||||
geom_point() +
|
||||
geom_line(aes(y=mtime, group=gitBranch, color=gitBranch)) +
|
||||
theme_bw() +
|
||||
labs(x="Blocksize", y="Time (s)", title="FWI granularity",
|
||||
subtitle=input_file) +
|
||||
theme(plot.subtitle=element_text(size=8)) +
|
||||
theme(legend.position = c(0.5, 0.88))
|
||||
|
||||
# Render the plot
|
||||
print(p)
|
||||
|
||||
# Save the png image
|
||||
dev.off()
|
||||
@@ -62,10 +62,12 @@ in
|
||||
};
|
||||
|
||||
fwi = with exp.fwi; {
|
||||
test = stdPlot ./fwi/test.R [ test ];
|
||||
strong_scaling = stdPlot ./fwi/strong_scaling.R [ strong_scaling_task strong_scaling_forkjoin strong_scaling_mpionly ];
|
||||
strong_scaling_io = stdPlot ./fwi/strong_scaling_io.R [ strong_scaling_io ];
|
||||
granularity = stdPlot ./fwi/granularity.R [ granularity ];
|
||||
strong_scaling = stdPlot ./fwi/strong_scaling.R [ strong_scaling_task strong_scaling_forkjoin ];
|
||||
#strong_scaling = stdPlot ./fwi/strong_scaling.R [ strong_scaling_task strong_scaling_forkjoin strong_scaling_mpionly ];
|
||||
data_reuse = stdPlot ./fwi/granularity.R [ data_reuse ];
|
||||
strong_scaling_io = stdPlot ./fwi/strong_scaling_io.R [ strong_scaling_io ];
|
||||
sync_io = stdPlot ./fwi/strong_scaling_io.R [ sync_io ];
|
||||
};
|
||||
|
||||
osu = with exp.osu; {
|
||||
|
||||
Reference in New Issue
Block a user