help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Compiled 3.8.0 from source on Ubuntu 12.10 slower than 3.6.3 from PPA


From: Aielyn
Subject: Compiled 3.8.0 from source on Ubuntu 12.10 slower than 3.6.3 from PPA
Date: Mon, 10 Mar 2014 05:41:41 -0700 (PDT)

I wish to have Octave 3.8.0 on Ubuntu 12.10, primarily for the JIT and GUI.
As such, I have downloaded and compiled it on my system. My first attempt
saw significantly slower performance (same code, same conditions, taking
about 50% longer) than that obtained from the "GNU Octave" team PPA.

By investigation, I noted that it was compiling against the reference BLAS,
and figured out how to make it compile against ATLAS. Recompiling and
testing with the same code/conditions did not result in any improvement.

I looked at the buildlog for the PPA version and noticed that, while the
default compilation uses "-O" for gfortran, the PPA version uses "-O2", so I
worked out how to change this, and again tried a recompilation - same
result, no improvement.

Which other options should I be considering in order to reclaim (and, if
possible, beat) the packaged version's level of performance?

Note that the code being used for this comparison involves loops and
vectorised operations, basic vector operations (backslash operator being
used, but not contributing much according to the profiler), and a few basic
function calls (like abs, sqrt, etc, plus some non-recursive written
functions). Profiler also appears to indicate that speed issues are across
the board, not specific operations. I have also tested a simple case, namely
"a = 1; b = 1; tic; for i=1:1000; for j=1:1000; a = a + b; end; end; toc" -
and while it is far faster with jit enabled, it is slower than 3.6.3 by
about 50% otherwise.

The following differences are observed, for category listings that appear on
both lists, in the list of options being applied (bracketed ones are in my
config.log, unbracketed ones are in the buildlog for 3.6.3):
C and C++ compilers: -fstack-protector --param=ssp-buffer-size=4 -Wformat
-Werror=format-security -fopenmp
LIBS: -lGL (-lutil)
FFTW3 libraries: (-lfftw3_threads)
FFTW3F libraries: (-lfftw3f_threads)
FT2_LIBS: -L/usr/lib/x86_64-linux-gnu -lz

Also, code does not seem to be using extra cores in 3.6.3 or 3.8, so this is
not a matter of parallelisation. If there is any further information that
would be useful, let me know.



--
View this message in context: 
http://octave.1599824.n4.nabble.com/Compiled-3-8-0-from-source-on-Ubuntu-12-10-slower-than-3-6-3-from-PPA-tp4662951.html
Sent from the Octave - General mailing list archive at Nabble.com.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]