This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Enabling -ftree-slp-vectorize on -O2/Os
- From: Allan Sandfeld Jensen <linux at carewolf dot com>
- To: gcc at gcc dot gnu dot org
- Date: Thu, 31 May 2018 13:12:11 +0200
- Subject: Re: Enabling -ftree-slp-vectorize on -O2/Os
- References: <2659301.XPQk3P0qmd@twilight>
Okay, I think I can withdraw the suggestion. It is apparently not providing a
stable end performance.
I would like to end with sharing the measurements I made that motivated me to
suggest the change. Hopefully it can be useful if tree-slp-vectorize gets
improved and the suggestion comes up again.
As I said previously, the benchmarks I ran were not affected, probably because
most thing we benchmark in Qt often is hand-optimized already, but the binary
size with tree-slp-vectorize was on average a one or two percent smaller,
though was not universal, and many smaller libraries were unaffected.
----------------------------
gcc-8 version 8.1.0 (Debian 8.1.0-4)
gcc-7 version 7.3.0 (Debian 7.3.0-19)
Qt version 5.11.0 (edited to override selective use of -O3)
size library
g++-7 -march=corei7 -O2
8015632 libQt5Widgets.so.5.11.0
6194288 libQt5Gui.so.5.11.0
760016 libQt5DBus.so.5.11.0
5603160 libQt5Core.so.5.11.0
g++-7 -march=corei7 -O2 -ftree-slp-vectorize
8007440 libQt5Widgets.so.5.11.0
6182000 libQt5Gui.so.5.11.0
760016 libQt5DBus.so.5.11.0
5603224 libQt5Core.so.5.11.0
g++-8 -O2
8062520 libQt5Widgets.so.5.11.0
6232160 libQt5Gui.so.5.11.0
765584 libQt5DBus.so.5.11.0
5848528 libQt5Core.so.5.11.0
g++-8 -O2 -ftree-slp-vectorize
8058424 libQt5Widgets.so.5.11.0
6219872 libQt5Gui.so.5.11.0
769680 libQt5DBus.so.5.11.0
5844560 libQt5Core.so.5.11.0
g++-8 -march=corei7 -O2
8062520 libQt5Widgets.so.5.11.0
6215584 libQt5Gui.so.5.11.0
765584 libQt5DBus.so.5.11.0
5844440 libQt5Core.so.5.11.0
g++-8 -march=corei7 -O2 -ftree-slp-vectorize
8046136 libQt5Widgets.so.5.11.0
6191008 libQt5Gui.so.5.11.0
765584 libQt5DBus.so.5.11.0
5840472 libQt5Core.so.5.11.0
g++-8 -march=haswell -O2
8046136 libQt5Widgets.so.5.11.0
6170408 libQt5Gui.so.5.11.0
765584 libQt5DBus.so.5.11.0
5852448 libQt5Core.so.5.11.0
g++-8 -march=haswell -O2 -ftree-slp-vectorize
8046136 libQt5Widgets.so.5.11.0
6158120 libQt5Gui.so.5.11.0
765584 libQt5DBus.so.5.11.0
5848480 libQt5Core.so.5.11.0
g++-8 -march=haswell -Os
6990368 libQt5Widgets.so.5.11.0
5030616 libQt5Gui.so.5.11.0
624160 libQt5DBus.so.5.11.0
4847056 libQt5Core.so.5.11.0
g++-8 -march=haswell -Os -ftree-slp-vectorize
6986272 libQt5Widgets.so.5.11.0
5018328 libQt5Gui.so.5.11.0
624160 libQt5DBus.so.5.11.0
4847120 libQt5Core.so.5.11.0
g++-8 -march=haswell -Os -flto
6785760 libQt5Widgets.so.5.11.0
4844464 libQt5Gui.so.5.11.0
593488 libQt5DBus.so.5.11.0
4688432 libQt5Core.so.5.11.0
g++-8 -march=haswell -Os -flto -ftree-slp-vectorize
6777568 libQt5Widgets.so.5.11.0
4836272 libQt5Gui.so.5.11.0
593488 libQt5DBus.so.5.11.0
4688472 libQt5Core.so.5.11.0