/usr/lib/R/site-library/matrixStats/benchmarking/includes/results.md.rsp is in r-cran-matrixstats 0.14.2-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 | <%--------------------------------------------------------------
BENCHMARK RESULTS
--------------------------------------------------------------%>
<%--------------------------------------------------------------
Local functions
--------------------------------------------------------------%>
<% toImage <- function(stats, name=levels(stats$expr)[1L], tags=NULL, ylim="auto", col=NULL, alpha=NULL, ...) { %>
![](<%=toPNG(name, tags=c(tags, "benchmark"), aspectRatio=2/3, {
if (identical(ylim, "auto")) {
y <- stats$time/1e6
ymax <- max(y, na.rm=TRUE)
y75 <- quantile(y, probs=0.75, na.rm=TRUE)
yupper <- min(c(1.5*y75, ymax), na.rm=TRUE)
ylim <- c(0, yupper)
}
if (!is.null(ylim)) {
stats$outlier <- (stats$time > ylim[2]*1e6)
stats$time[stats$outlier] <- ylim[2]*1e6
}
gg <- ggplot(data=stats, aes(x=seq_along(time)/length(levels(expr)), y=time/1e6))
gg <- gg + geom_point(aes(colour=expr, shape=outlier))
gg <- gg + scale_shape_manual(values=c(16,4), guide="none")
if (!is.null(col)) gg <- gg + scale_colour_manual(values=col)
if (!is.null(alpha)) gg <- gg + scale_alpha_manual(values=alpha)
gg <- gg + xlab("iteration") + ylab("time (ms)")
if (!is.null(ylim)) gg <- gg + ylim(ylim)
print(gg)
})%>)
<% } # toImage() %>
<%
toTable <- function(stats, tags=NULL, order="median", ...) {
kable({
s <- summary(stats)
s$neval <- NULL
s$cld <- NULL
s <- s[order(s[[order]]),]
s
})
kable({
s <- summary(stats, unit="relative")
s$neval <- NULL
s$cld <- NULL
s <- s[order(s[[order]]),]
s
})
}
%>
<%--------------------------------------------------------------
Benchmark results for vector functions
--------------------------------------------------------------%>
<% benchmarkResults <- function(stats, tags=NULL, ...) { %>
_Table: Benchmarking of <%=hpaste(sprintf("%s()", levels(stats$expr)), lastCollapse=" and ")%> on <%=paste(tags, collapse="+")%> data. The top panel shows times in milliseconds and the bottom panel shows relative times._
<% toTable(stats, tags=tags) %>
_Figure: Benchmarking of <%=hpaste(sprintf("%s()", levels(stats$expr)), lastCollapse=" and ")%> on <%=paste(tags, collapse="+")%> data. Outliers are displayed as crosses. Times are in milliseconds._
<% toImage(stats, tags=tags) %>
<% } # benchmarkResults() %>
<%--------------------------------------------------------------
Benchmark results for col- and row-specific functions
--------------------------------------------------------------%>
<% crBenchmarkResults <- function(colStats, rowStats=NULL, tags=NULL, ...) { %>
_Table: Benchmarking of <%=hpaste(sprintf("%s()", levels(colStats$expr)), lastCollapse=" and ")%> on <%=paste(tags, collapse="+")%> data. The top panel shows times in milliseconds and the bottom panel shows relative times._
<% toTable(colStats, tags=tags) %>
_Table: Benchmarking of <%=hpaste(sprintf("%s()", levels(rowStats$expr)), lastCollapse=" and ")%> on <%=paste(tags, collapse="+")%> data (transposed). The top panel shows times in milliseconds and the bottom panel shows relative times._
<% if (!is.null(rowStats)) { toTable(rowStats, tags=tags) } %>
_Figure: Benchmarking of <%=hpaste(sprintf("%s()", levels(colStats$expr)), lastCollapse=" and ")%> on <%=paste(tags, collapse="+")%> data <% if (!is.null(rowStats)) { %> as well as <%=hpaste(sprintf("%s()", levels(rowStats$expr)), lastCollapse=" and ")%> on the same data transposed<% } # if (!is.null(rowStats)) %>. Outliers are displayed as crosses. Times are in milliseconds._
<%
y <- c(colStats$time, rowStats$time)/1e6
ymax <- max(y, na.rm=TRUE)
y75 <- quantile(y, probs=0.75, na.rm=TRUE)
yupper <- min(c(1.5*y75, ymax), na.rm=TRUE)
ylim <- c(0, yupper)
%>
<% toImage(colStats, tags=tags, ylim=ylim) %>
<% if (!is.null(rowStats)) toImage(rowStats, tags=tags, ylim=ylim) %>
<% if (!is.null(rowStats)) { %>
<%
# Compare performance or the column- and the row-specific methods
# for the "main" function.
stats <- list(colStats, rowStats)
stats <- lapply(stats, FUN=function(x) {
level <- levels(x$expr)[1]
x <- subset(x, expr %in% level)
x$expr <- factor(as.character(x$expr))
x
})
stats <- Reduce(rbind, stats)
odd <- seq(from=1L, to=nrow(stats), by=2L)
top <- 1:(nrow(stats)/2)
stats0 <- stats
stats[ odd,] <- stats0[ top,]
stats[-odd,] <- stats0[-top,]
%>
_Table: Benchmarking of <%=hpaste(sprintf("%s()", levels(stats$expr)), lastCollapse=" and ")%> on <%=paste(tags, collapse="+")%> data (original and transposed). The top panel shows times in milliseconds and the bottom panel shows relative times._
<% toTable(stats, tags=tags) %>
_Figure: Benchmarking of <%=hpaste(sprintf("%s()", levels(stats$expr)), lastCollapse=" and ")%> on <%=paste(tags, collapse="+")%> data (original and transposed). Outliers are displayed as crosses. Times are in milliseconds._
<% toImage(stats, name=paste(levels(stats$expr), collapse="_vs_"), tags=tags, col=c("#000000", "#999999")) %>
<% } # if (!is.null(rowStats)) %>
<% } # crBenchmarkResults() %>
|