|
From: | Dmitri A. Sergatskov |
Subject: | Re: BLAS Level 1 operations in Octave |
Date: | Thu, 25 Aug 2016 11:02:51 -0500 |
Dear maintainers,
my octave-4.1.0+ is linked to multithreaded ATLAS libraries. They work as expected: in particular, a matrix-matrix product involves all my four cores (top shows %CPU at about 390). But, if I run the following script
a = rand(200000,1);
b = rand(200000,1);
tic
for i = 1:100000
c = a+b; % version 1
% b = a+b; % version 2
% b += a; % version 3
end
toc
my %CPU is stuck to 100, (while Matlab, linked to Intel MKL, uses again all the four cores). Versions 2 and 3 are a *axpy (BLAS Level 1) operation, while version 1 is a *copy followed by a *axpy operation. Anyway, they should be multithread in ATLAS, so I presume Octave does not use them. In fact, a
grep -r --include "*" AXPY
in the sources shows something only is some cruft fortran files. At the moment, I cannot check the behavior of OpenBLAS libraries.
Marco
[Prev in Thread] | Current Thread | [Next in Thread] |