Interesting statistics on vectorization for Skylake avx512 (i9-7900) - 8.1 vs. 7.3.
Toon Moene
toon@moene.org
Thu May 3 18:43:00 GMT 2018
Consider the attached Fortran code (the most expensive routine,
computation-wise, in our weather forecasting model).
verint.s.7.3 is the result of:
gfortran -g -O3 -S -march=native -mtune=native verint.f
using release 7.3.
verint.s.8.1 is the result of:
gfortran -g -O3 -S -march=native -mtune=native verint.f
using the recently released GCC 8.1.
$ wc -l verint.s.7.3 verint.s.8.1
7818 verint.s.7.3
6087 verint.s.8.1
$ grep vfma verint.s.7.3 | wc -l
381
$ grep vfma verint.s.8.1 | wc -l
254
but:
$ grep vfma verint.s.7.3 | grep -v ss | wc -l
127
$ grep vfma verint.s.8.1 | grep -v ss | wc -l
127
and:
$ grep movaps verint.s.7.3 | wc -l
306
$ grep movaps verint.s.8.3 | wc -l
270
Finally:
$ grep zmm verint.s.7.3 | wc -l
1494
$ grep zmm verint.s.8.1 | wc -l
0
$ grep ymm verint.s.7.3 | wc -l
379
$ grep ymm verint.s.8.1 | wc -l
1464
I haven't had the opportunity to test this for speed (is quite
complicated, as I have to build several support libraries with 8.1, like
openmpi, netcdf, hdf{4|5}, fftw ...)
--
Toon Moene - e-mail: toon@moene.org - phone: +31 346 214290
Saturnushof 14, 3738 XG Maartensdijk, The Netherlands
At home: http://moene.org/~toon/; weather: http://moene.org/~hirlam/
Progress of GNU Fortran: http://gcc.gnu.org/wiki/GFortran#news
-------------- next part --------------
A non-text attachment was scrubbed...
Name: verint.f
Type: text/x-fortran
Size: 12959 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc/attachments/20180503/737ccfe1/attachment.bin>
More information about the Gcc
mailing list