[GRASS-user] r.neighbors velocity
Hamish
hamish_b at yahoo.com
Fri Jun 28 23:35:37 PDT 2013
Hi,
here are the same results for Soeren's test program, with the Open64
compiler from AMD:
- Same AMD X6 CPU as below.
- Open64 compiler 4.5.2.1 from AMD (GPLv2, LGPL)
I just downloaded the pre-built RHEL5 binary tarball and they worked
on Debian/squeeze, I just made an alias to the executable in the un-
tarred bin/ dir to get it to work.
see also http://wiki.open64.net/index.php/Installation_on_Ubuntu
Source is available of course, but according to the Debian ITP ticket
it's a bit of a pain to build there.
straight opencc:
real 0m59.015s | 0m58.972s | 0m58.963s
user 0m58.760s | 0m58.812s | 0m58.624s
sys 0m0.248s | 0m0.136s | 0m0.300s
--
opencc -O3:
real 0m35.203s | 0m35.173s | 0m35.204s
user 0m35.206s | 0m35.174s | 0m35.206s
sys 0m0.000s | 0m0.000s | 0m0.000s
--
opencc -Ofast (with or without -march=auto for native bytecode)
real 0m13.389s | 0m13.402s | 0m13.435s
user 0m13.389s | 0m13.405s | 0m13.437s
sys 0m0.000s | 0m0.000s | 0m0.000s
--
opencc -Ofast -march=auto -apo on a 6-(real)-core CPU
v is 2.09131e+13
real 0m2.552s | 0m2.595s | 0m2.591s
user 0m14.857s | 0m14.725s | 0m14.725s
sys 0m0.008s | 0m0.024s | 0m0.016s
'-apo' is autoparallelization, poorly documented, but it works!
it adds OpenMP pragmas where it thinks it can && where it will
cause a gain; I'm glad to see it's not just for the fotran
compiler anymore.
So the Open64 compiler is not quite as fast as Intel's one for this
test case, but it's pretty close versus the more versatile gcc in the
far distance. Executable file size for all of the above was less than
12kb, since it can link to local OS shared libs.
I haven't tried it with llvm/clang.
Now I wonder which flags to use to recreate -Ofast in gcc to make it
a fairer comparison..
Hamish
> I also ran it on an AMD Phenom II X6 1090T (icc -xHost --> -xSSSE3 ?)
> All times "real"; all output was "v is 2.09131e+13".
>
> gcc 4.4.5 with standard-opts: 7kb binary
> == near parity single-threaded performance with the new i7 chip from
> the 2 year old AMD Phenom and older copy of gcc! (stock debian/squeeze)
> 1m16.175s | 1m15.634s | 1m16.029s
>
> icc 12.1 with standard-opts:
> 0m32.975s | 0m33.079s | 0m33.249s
>
> icc with "-fast" opt: (700kb binary)
> 0m9.577s | 0m9.572s | 0m9.583s
>
> icc with -parallel auto-MP: (31kb binary)
> == again near parity with the new i7 chip! even with the Intel-biased
> compiler. "user" cpu-time was actually less. the advantage of 6 real
> cores vs 4 real+4virtual ones.*
> 0m6.406s | 0m6.404s | 0m6.404s
> 0m37.106s | 0m37.170s | 0m37.106s
> 0m0.044s | 0m0.040s | 0m0.028s
>
> icc with -fast and -parallel: (2mb binary)
> 0m2.002s | 0m2.002s | 0m2.002s
> 0m10.765s | 0m10.769s | 0m10.769s
> 0m0.016s | 0m0.012s | 0m0.008s
More information about the grass-user
mailing list