public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc r12-3103] Disable slp in loop vectorizer when cost model is very-cheap.
@ 2021-08-24 1:28 hongtao Liu
0 siblings, 0 replies; only message in thread
From: hongtao Liu @ 2021-08-24 1:28 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:819b7c3a339e3bdaf85cd55954c5536bd98aae09
commit r12-3103-g819b7c3a339e3bdaf85cd55954c5536bd98aae09
Author: liuhongt <hongtao.liu@intel.com>
Date: Wed Aug 4 16:39:31 2021 +0800
Disable slp in loop vectorizer when cost model is very-cheap.
Performance impact for the commit with option:
-march=x86-64 -O2 -ftree-vectorize -fvect-cost-model=very-cheap
SPEC2017 fprate
503.bwaves_r BuildSame
507.cactuBSSN_r -0.04
508.namd_r 0.14
510.parest_r -0.54
511.povray_r 0.10
519.lbm_r BuildSame
521.wrf_r 0.64
526.blender_r -0.32
527.cam4_r 0.17
538.imagick_r 0.09
544.nab_r BuildSame
549.fotonik3d_r BuildSame
554.roms_r BuildSame
997.specrand_fr -0.09
Geometric mean: 0.02
SPEC2017 intrate
500.perlbench_r 0.26
502.gcc_r 0.21
505.mcf_r -0.09
520.omnetpp_r BuildSame
523.xalancbmk_r BuildSame
525.x264_r -0.41
531.deepsjeng_r BuildSame
541.leela_r 0.13
548.exchange2_r BuildSame
557.xz_r BuildSame
999.specrand_ir BuildSame
Geometric mean: 0.02
EEMBC: no regression, only improvement or build the same, the below is
improved benchmarks.
mp2decoddata1 7.59
mp2decoddata2 31.80
mp2decoddata3 12.15
mp2decoddata4 11.16
mp2decoddata5 11.19
mp2decoddata1 7.06
mp2decoddata2 24.12
mp2decoddata3 10.83
mp2decoddata4 10.04
mp2decoddata5 10.07
gcc/ChangeLog:
PR tree-optimization/100089
* tree-vectorizer.c (try_vectorize_loop_1): Disable slp in
loop vectorizer when cost model is very-cheap.
Diff:
---
gcc/tree-vectorizer.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/gcc/tree-vectorizer.c b/gcc/tree-vectorizer.c
index b9709a613d5..813f4683d1e 100644
--- a/gcc/tree-vectorizer.c
+++ b/gcc/tree-vectorizer.c
@@ -1033,7 +1033,10 @@ try_vectorize_loop_1 (hash_table<simduid_to_vf> *&simduid_to_vf_htab,
only non-if-converted parts took part in BB vectorization. */
if (flag_tree_slp_vectorize != 0
&& loop_vectorized_call
- && ! loop->inner)
+ && ! loop->inner
+ /* This would purely be a workaround and should be removed
+ once PR100089 is fixed. */
+ && flag_vect_cost_model != VECT_COST_MODEL_VERY_CHEAP)
{
basic_block bb = loop->header;
bool require_loop_vectorize = false;
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-08-24 1:28 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-24 1:28 [gcc r12-3103] Disable slp in loop vectorizer when cost model is very-cheap hongtao Liu
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).