|
@@ -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) |
|
|
|
|
|
B <- matrix(rnorm(n * n), ncol = n, nrow = n) |
|
|
|
|
|
|
|
|
A <- matrix(rnorm(n * 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 <- |
|
|
|
|
|
(2.0 / 3.0 * n * n * n + 2.0 * n * n * n) * loops / (z[3] * 1.0e6) |
|
|
|
|
|
|
|
|
mflops <- (2.0/3 * n * n * n + 2 * n * n * n) * loops/ (z[3] * 1e6) |
|
|
|
|
|
|
|
|
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 |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|