[PATCH] Divergence analysis for GPU programs
Jingyue Wu
jingyue at google.com
Mon Mar 23 22:14:45 PDT 2015
Hi resistor, hfinkel, eliben, meheff,
Some optimizations such as jump threading and loop unswitching can negatively
affect performance when applied to divergent branches. The divergence analysis
added in this patch conservatively estimates which branches in a GPU program
can diverge. This information can then help LLVM to run certain optimizations
selectively.
http://reviews.llvm.org/D8576
Files:
include/llvm/Analysis/Passes.h
include/llvm/Analysis/TargetTransformInfo.h
include/llvm/Analysis/TargetTransformInfoImpl.h
include/llvm/CodeGen/BasicTTIImpl.h
include/llvm/InitializePasses.h
include/llvm/LinkAllPasses.h
lib/Analysis/Analysis.cpp
lib/Analysis/CMakeLists.txt
lib/Analysis/DivergenceAnalysis.cpp
lib/Analysis/TargetTransformInfo.cpp
lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
lib/Target/NVPTX/NVPTXTargetTransformInfo.h
test/Analysis/DivergenceAnalysis/NVPTX/diverge.ll
test/Analysis/DivergenceAnalysis/NVPTX/lit.local.cfg
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D8576.22540.patch
Type: text/x-patch
Size: 22207 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150324/76d53bf4/attachment.bin>
More information about the llvm-commits
mailing list