[PATCH] D57779: [SLP] Add support for throttling.
Dinar Temirbulatov via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Mar 21 12:36:51 PDT 2019
dtemirbulatov updated this revision to Diff 191763.
dtemirbulatov added a comment.
Fixed cost estimation for canceled elements to be inserted to interact with vectorized.
Replaced main throttling loop in reverse-post-order traversal as it was suggested in the previous remarks.
Making final decision on throttle inside getTreeCost() we don't need to hold cost estimations in TreeEntry.
Avoid vectorizing any flow instructions during partial vectorization.
Added cl::opt flag for Throtelling, it is now on by default to show the impact on tests, but during commit, I could make this option off by default to estimate the whole impact before enabling everywhere.
Here are the spec cup 2006 numbers before and after:
before:
400.perlbench 9770 304 32.2 *
401.bzip2 9650 473 20.4 *
403.gcc 8050 250 32.1 *
429.mcf 9120 326 28.0 *
445.gobmk 10490 465 22.5 *
456.hmmer 9330 344 27.1 *
458.sjeng 12100 462 26.2 *
462.libquantum 20720 255 81.2 *
464.h264ref 22130 504 43.9 *
471.omnetpp 6250 329 19.0 *
473.astar 7020 416 16.9 *
483.xalancbmk 6900 198 34.8 *
Est. SPECint(R)_base2006 29.1
Est. SPECint2006
after:
400.perlbench 9770 301 32.4 *
401.bzip2 9650 471 20.5 *
403.gcc 8050 241 33.4 *
429.mcf 9120 329 27.7 *
445.gobmk 10490 465 22.6 *
456.hmmer 9330 344 27.1 *
458.sjeng 12100 461 26.3 *
462.libquantum 20720 267 77.6 *
464.h264ref 22130 504 43.9 *
471.omnetpp 6250 323 19.4 *
473.astar 7020 416 16.9 *
483.xalancbmk 6900 197 35.0 *
Est. SPECint(R)_base2006 29.2
Est. SPECint2006
with flags applied "-march=broadwell -m64 -O3" on Intel(R) Core(TM) i7-6700HQ
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D57779/new/
https://reviews.llvm.org/D57779
Files:
lib/Transforms/Vectorize/SLPVectorizer.cpp
test/Transforms/SLPVectorizer/AArch64/transpose.ll
test/Transforms/SLPVectorizer/X86/crash_gep.ll
test/Transforms/SLPVectorizer/X86/slp-throttle.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D57779.191763.patch
Type: text/x-patch
Size: 24060 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190321/4afe7520/attachment.bin>
More information about the llvm-commits
mailing list