|
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6, llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1 |
|
| #
6dd6a616 |
| 22-Mar-2022 |
Snehasish Kumar <[email protected]> |
[memprof] Deduplicate and outline frame storage in the memprof profile.
The current implementation of memprof information in the indexed profile format stores the representation of each calling cont
[memprof] Deduplicate and outline frame storage in the memprof profile.
The current implementation of memprof information in the indexed profile format stores the representation of each calling context fram inline. This patch uses an interned representation where the frame contents are stored in a separate on-disk hash table. The table is indexed via a hash of the contents of the frame. With this patch, the compressed size of a large memprof profile reduces by ~22%.
Reviewed By: tejohnson
Differential Revision: https://reviews.llvm.org/D123094
show more ...
|
| #
27a4f254 |
| 22-Mar-2022 |
Snehasish Kumar <[email protected]> |
Reland "[memprof] Store callsite metadata with memprof records."
This reverts commit f4b794427e8037a4e952cacdfe7201e961f31a6f.
Reland with underlying msan issue fixed in D122260.
|
| #
f4b79442 |
| 21-Mar-2022 |
Mitch Phillips <[email protected]> |
Revert "[memprof] Store callsite metadata with memprof records."
This reverts commit 0d362c90d335509c57c0fbd01ae1829e2b9c3765.
Reason: Causes the MSan buildbot to fail (see comments on https://revi
Revert "[memprof] Store callsite metadata with memprof records."
This reverts commit 0d362c90d335509c57c0fbd01ae1829e2b9c3765.
Reason: Causes the MSan buildbot to fail (see comments on https://reviews.llvm.org/D121179 for more information
show more ...
|
|
Revision tags: llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3 |
|
| #
0d362c90 |
| 02-Mar-2022 |
Snehasish Kumar <[email protected]> |
[memprof] Store callsite metadata with memprof records.
To ease profile annotation, each of the callsites in a function can be annotated with profile data - "IR metadata format for MemProf" [1]. Thi
[memprof] Store callsite metadata with memprof records.
To ease profile annotation, each of the callsites in a function can be annotated with profile data - "IR metadata format for MemProf" [1]. This patch extends the on-disk serialized record format to store the debug information for allocation callsites incl inline frames. This change is incompatible with the existing format i.e. indexed profiles must be regenerated, raw profiles are unaffected.
[1] https://groups.google.com/g/llvm-dev/c/aWHsdMxKAfE/m/WtEmRqyhAgAJ
Reviewed By: tejohnson
Differential Revision: https://reviews.llvm.org/D121179
show more ...
|
|
Revision tags: llvmorg-14.0.0-rc2 |
|
| #
fc97efa4 |
| 23-Feb-2022 |
serge-sans-paille <[email protected]> |
Cleanup includes: ProfileData
Estimation of the impact on preprocessor output:
before: 1067349756 after: 1065940348
Discourse thread: https://discourse.llvm.org/t/include-what-you-use-include-clea
Cleanup includes: ProfileData
Estimation of the impact on preprocessor output:
before: 1067349756 after: 1065940348
Discourse thread: https://discourse.llvm.org/t/include-what-you-use-include-cleanup Differential Revision: https://reviews.llvm.org/D120434
show more ...
|
| #
0a418490 |
| 18-Feb-2022 |
Snehasish Kumar <[email protected]> |
Reland "[memprof] Extend the index prof format to include memory profiles."
This patch adds support for optional memory profile information to be included with and indexed profile. The indexed profi
Reland "[memprof] Extend the index prof format to include memory profiles."
This patch adds support for optional memory profile information to be included with and indexed profile. The indexed profile header adds a new field which points to the offset of the memory profile section (if present) in the indexed profile. For users who do not utilize this feature the only overhead is a 64-bit offset in the header.
The memory profile section contains (1) profile metadata describing the information recorded for each entry (2) an on-disk hashtable containing the profile records indexed via llvm::md5(function_name). We chose to introduce a separate hash table instead of the existing one since the indexing for the instrumented fdo hash table is based on a CFG hash which itself is perturbed by memprof instrumentation.
This commit also includes the changes reviewed separately in D120093.
Differential Revision: https://reviews.llvm.org/D120103
show more ...
|
| #
27b7c1e3 |
| 17-Feb-2022 |
Snehasish Kumar <[email protected]> |
Revert "[memprof] Fix frame deserialization on big endian systems."
This reverts commit c74389b4b58d8db3f8262ce15b9d514d62fe265c.
This broke the ml-opt-x86-64 build. https://lab.llvm.org/buildbot#b
Revert "[memprof] Fix frame deserialization on big endian systems."
This reverts commit c74389b4b58d8db3f8262ce15b9d514d62fe265c.
This broke the ml-opt-x86-64 build. https://lab.llvm.org/buildbot#builders/9/builds/4127
show more ...
|
| #
c74389b4 |
| 17-Feb-2022 |
Snehasish Kumar <[email protected]> |
[memprof] Fix frame deserialization on big endian systems.
We write the memprof internal call frame data in little endian format. However when reading the frame information we were casting it direct
[memprof] Fix frame deserialization on big endian systems.
We write the memprof internal call frame data in little endian format. However when reading the frame information we were casting it directly to a MemProfRecord::Frame pointer. In this change we add a separate deserialization method which uses an endian reader to read the bytes as little endian.
This fixes https://lab.llvm.org/buildbot/#/builders/100/builds/12940
Differential Revision: https://reviews.llvm.org/D120093
show more ...
|
| #
807ba7aa |
| 14-Feb-2022 |
Snehasish Kumar <[email protected]> |
Reland "[memprof] Extend the index prof format to include memory profiles."
This reverts commit 85355a560a33897453df2ef959e255ee725eebce.
This patch adds support for optional memory profile informa
Reland "[memprof] Extend the index prof format to include memory profiles."
This reverts commit 85355a560a33897453df2ef959e255ee725eebce.
This patch adds support for optional memory profile information to be included with and indexed profile. The indexed profile header adds a new field which points to the offset of the memory profile section (if present) in the indexed profile. For users who do not utilize this feature the only overhead is a 64-bit offset in the header.
The memory profile section contains (1) profile metadata describing the information recorded for each entry (2) an on-disk hashtable containing the profile records indexed via llvm::md5(function_name). We chose to introduce a separate hash table instead of the existing one since the indexing for the instrumented fdo hash table is based on a CFG hash which itself is perturbed by memprof instrumentation.
Differential Revision: https://reviews.llvm.org/D118653
show more ...
|
| #
de54e4ab |
| 14-Feb-2022 |
Snehasish Kumar <[email protected]> |
Reland "[memprof] Extend the index prof format to include memory profiles."
This reverts commit 0f73fb18ca333e38cdb9ffa701a8db026c56041d.
Use llvm/Profile/MIBEntryDef.inc instead of relative path.
Reland "[memprof] Extend the index prof format to include memory profiles."
This reverts commit 0f73fb18ca333e38cdb9ffa701a8db026c56041d.
Use llvm/Profile/MIBEntryDef.inc instead of relative path.
Generated the raw profile data with `-mllvm -enable-name-compression=false` so that builbots where the reader is built without zlib do not fail.
Also updated the test build instructions.
show more ...
|
| #
43c2348c |
| 12-Feb-2022 |
Snehasish Kumar <[email protected]> |
[memprof] Extend the index prof format to include memory profiles.
This patch adds support for optional memory profile information to be included with and indexed profile. The indexed profile header
[memprof] Extend the index prof format to include memory profiles.
This patch adds support for optional memory profile information to be included with and indexed profile. The indexed profile header adds a new field which points to the offset of the memory profile section (if present) in the indexed profile. For users who do not utilize this feature the only overhead is a 64-bit offset in the header.
The memory profile section contains (1) profile metadata describing the information recorded for each entry (2) an on-disk hashtable containing the profile records indexed via llvm::md5(function_name). We chose to introduce a separate hash table instead of the existing one since the indexing for the instrumented fdo hash table is based on a CFG hash which itself is perturbed by memprof instrumentation.
Differential Revision: https://reviews.llvm.org/D118653
show more ...
|