[PATCH] D84742: [NFCI]MemDepAnalysis] Introduce global limit on a number of instructions to be traversed during single query

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 28 05:50:57 PDT 2020


lebedev.ri created this revision.
lebedev.ri added reviewers: nikic, fhahn, ebrevnov, void, joerg.
lebedev.ri added a project: LLVM.
Herald added subscribers: bmahjour, hiraditya.
Harbormaster failed remote builds in B65988: Diff 281173!
Harbormaster returned this revision to the author for changes because remote builds failed.
lebedev.ri requested review of this revision.

As we have seen/established in D84108 <https://reviews.llvm.org/D84108>, the cut-off thresholds for Memory Dependence Analysis may need tuning.
In particular, currently they are:

- scan up to 100 instructions per block. IMO this may be a bit low. (rL179713 <https://reviews.llvm.org/rL179713>, changed from `500`)
- Scan up to 1000 (*sic*) blocks. That seems to be somewhat high.. (D16123 <https://reviews.llvm.org/D16123>)
- There is no cumulative limit on scanned instructions, so one query can end up scanning up to 100 instructions/block * 1k blocks = 100k instructions. Just as @nikic noted in https://reviews.llvm.org/D84108#2174113, that is indeed kinda just insane.

For now, this patch simply adds said cut-off option, but the limit is presently unset.
D84609 <https://reviews.llvm.org/D84609> will be lowering the limits.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D84742

Files:
  llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h
  llvm/lib/Analysis/MemoryDependenceAnalysis.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D84742.281173.patch
Type: text/x-patch
Size: 14445 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200728/7d226db2/attachment.bin>


More information about the llvm-commits mailing list