disable NaN checks before BLAS calls dsolve.R
This commit is contained in:
parent
def0385caa
commit
b70fd23836
|
@ -2,6 +2,10 @@
|
||||||
|
|
||||||
argv <- commandArgs(trailingOnly = TRUE)
|
argv <- commandArgs(trailingOnly = TRUE)
|
||||||
|
|
||||||
|
if (!is.null(options("matprod")[[1]])) {
|
||||||
|
options(matprod = "blas")
|
||||||
|
}
|
||||||
|
|
||||||
nfrom <- 128
|
nfrom <- 128
|
||||||
nto <- 2048
|
nto <- 2048
|
||||||
nstep <- 128
|
nstep <- 128
|
||||||
|
@ -19,7 +23,6 @@ if (length(argv) > 0) {
|
||||||
loops <- as.numeric(argv[z])
|
loops <- as.numeric(argv[z])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
p <- Sys.getenv("OPENBLAS_LOOPS")
|
p <- Sys.getenv("OPENBLAS_LOOPS")
|
||||||
|
@ -27,31 +30,23 @@ if (p != "") {
|
||||||
loops <- as.numeric(p)
|
loops <- as.numeric(p)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
cat(sprintf("From %.0f To %.0f Step=%.0f Loops=%.0f\n", nfrom, nto, nstep, loops))
|
||||||
cat(sprintf(
|
|
||||||
"From %.0f To %.0f Step=%.0f Loops=%.0f\n",
|
|
||||||
nfrom,
|
|
||||||
nto,
|
|
||||||
nstep,
|
|
||||||
loops
|
|
||||||
))
|
|
||||||
cat(sprintf(" SIZE Flops Time\n"))
|
cat(sprintf(" SIZE Flops Time\n"))
|
||||||
|
|
||||||
n <- nfrom
|
n <- nfrom
|
||||||
while (n <= nto) {
|
while (n <= nto) {
|
||||||
A <- matrix(rnorm(n * n), ncol = n, nrow = n)
|
A <- matrix(rnorm(n * n), nrow = n)
|
||||||
B <- matrix(rnorm(n * n), ncol = n, nrow = n)
|
B <- matrix(rnorm(n * n), nrow = n)
|
||||||
|
|
||||||
z <- system.time(for (l in 1:loops) {
|
z <- system.time(for (l in 1:loops) {
|
||||||
solve(A, B)
|
solve(A, B)
|
||||||
})
|
})
|
||||||
|
|
||||||
mflops <-
|
mflops <- (2.0/3 * n * n * n + 2 * n * n * n) * loops/ (z[3] * 1e6)
|
||||||
(2.0 / 3.0 * n * n * n + 2.0 * n * n * n) * loops / (z[3] * 1.0e6)
|
|
||||||
|
|
||||||
st <- sprintf("%.0fx%.0f :", n, n)
|
st <- sprintf("%.0fx%.0f :", n, n)
|
||||||
cat(sprintf("%20s %10.2f MFlops %10.6f sec\n", st, mflops, z[3]))
|
cat(sprintf("%20s %10.2f MFlops %10.6f sec\n", st, mflops, z[3]))
|
||||||
|
|
||||||
n <- n + nstep
|
n <- n + nstep
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue