[PATCH] D78729: [Attributor] Merge the query set into AbstractAttribute
Johannes Doerfert via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 23 10:16:11 PDT 2020
jdoerfert created this revision.
jdoerfert added reviewers: fhahn, lebedev.ri.
Herald added subscribers: uenoku, bollu, hiraditya.
Herald added a reviewer: sstefan1.
Herald added a reviewer: uenoku.
Herald added a project: LLVM.
The old QuerriedAAs contained two vectors, one for required one for
optional dependences (=queries). We now use a single vector and encode
the kind directly in the pointer.
This reduces memory consumption and makes the connection between
abstract attributes and their dependences clearer.
No functional change is intended.
---
Single run of the Attributor module and then CGSCC pass (oldPM)
for SPASS/clause.c (~10k LLVM-IR loc):
Before:
calls to allocation functions: 468401 (315846/s)
temporary memory allocations: 76415 (51527/s)
peak heap memory consumption: 28.80MB
peak RSS (including heaptrack overhead): 118.41MB
total memory leaked: 269.07KB
After:
calls to allocation functions: 425372 (257801/s)
temporary memory allocations: 77301 (46849/s)
peak heap memory consumption: 17.76MB
peak RSS (including heaptrack overhead): 102.17MB
total memory leaked: 269.07KB
Difference:
calls to allocation functions: -43029 (-257658/s)
temporary memory allocations: 886 (5305/s)
peak heap memory consumption: -11.04MB
peak RSS (including heaptrack overhead): 0B
total memory leaked: 0B
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D78729
Files:
llvm/include/llvm/Transforms/IPO/Attributor.h
llvm/lib/Transforms/IPO/Attributor.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D78729.259617.patch
Type: text/x-patch
Size: 6409 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200423/0fe1765e/attachment.bin>
More information about the llvm-commits
mailing list