PR target/84743 adjust reassociation widths for power8/power9

Aaron Sawdey acsawdey@linux.vnet.ibm.com
Tue Mar 13 01:02:00 GMT 2018


Looking at CPU2017 results for different reassociation widths, things
have shifted since I last looked at this with CPU2006 in early gcc7
timeframe. Best thing to do seems to be to set reassociation width to 1
for all integer modes, which is what the attached patch does.

I also tried setting width to 1 for float modes PLUS_EXPR as this patch
did for aarch64 but this does not seem to be helpful for power8.
https://gcc.gnu.org/ml/gcc-patches/2018-02/msg01271.html


Results below are % performance improvement on power8 comparing trunk
with the attached patch vs trunk with --param tree-reassoc-width=1 to
disable parallel reassociation for everything (first column of results)
and trunk unmodified (second column of results). 

CPU2017 component    vs width=1   vs trunk
500.perlbench_r        -0.36%     -0.15%
502.gcc_r               0.06%      0.04%
505.mcf_r               0.32%      0.24%
520.omnetpp_r           0.57%     -0.95%
523.xalancbmk_r         1.45%      1.04%
525.x264_r             -0.05%      0.09%
531.deepsjeng_r         0.04%      0.09%
541.leela_r             0.10%      0.72%
548.exchange2_r         0.08%      0.73%
557.xz_r                0.09%      2.12%
CPU2017 int geo mean    0.23%      0.40%
503.bwaves_r            0.00%      0.01%
507.cactuBSSN_r         0.05%     -0.02%
508.namd_r              0.00%      0.00%
510.parest_r           -0.01%      0.20%
511.povray_r            0.03%     -0.24%
519.lbm_r              -0.04%     -0.16%
521.wrf_r              -0.01%     -0.56%
526.blender_r          -0.82%     -0.47%
527.cam4_r             -0.18%      0.06%
538.imagick_r          -0.02%      0.01%
544.nab_r               0.00%      0.23%
549.fotonik3d_r         0.24%      0.54%
554.roms_r             -0.05%      0.03%
CPU2017 fp geo mean    -0.06%     -0.03%

Bottom line is net improvement for CPU2017 int compared with either
current trunk, or disabling parallel reassociation. For CPU2017 fp,
very small overall degradation. 

Currently doing regstrap on ppc64le, ok for trunk if results look good?

Thanks!
   Aaron

2018-03-12  Aaron Sawdey  <acsawdey@linux.vnet.ibm.com>

	PR target/84743
	* config/rs6000/rs6000.c (rs6000_reassociation_width): Disable parallel
	reassociation for int modes.


-- 
Aaron Sawdey, Ph.D.  acsawdey@linux.vnet.ibm.com
050-2/C113  (507) 253-7520 home: 507/263-0782
IBM Linux Technology Center - PPC Toolchain
-------------- next part --------------
A non-text attachment was scrubbed...
Name: reassoc.20180312.patch
Type: text/x-patch
Size: 407 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20180313/c1671204/attachment.bin>


More information about the Gcc-patches mailing list