[PATCH] D123094: [memprof] Deduplicate and outline frame storage in the memprof profile.
    Snehasish Kumar via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Mon Apr  4 16:07:12 PDT 2022
    
    
  
snehasish created this revision.
snehasish added reviewers: tejohnson, davidxl.
Herald added a subscriber: hiraditya.
Herald added a project: All.
snehasish requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
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%.
Repository:
  rG LLVM Github Monorepo
https://reviews.llvm.org/D123094
Files:
  llvm/include/llvm/ProfileData/InstrProfReader.h
  llvm/include/llvm/ProfileData/InstrProfWriter.h
  llvm/include/llvm/ProfileData/MemProf.h
  llvm/include/llvm/ProfileData/RawMemProfReader.h
  llvm/lib/ProfileData/InstrProfReader.cpp
  llvm/lib/ProfileData/InstrProfWriter.cpp
  llvm/lib/ProfileData/MemProf.cpp
  llvm/lib/ProfileData/RawMemProfReader.cpp
  llvm/tools/llvm-profdata/llvm-profdata.cpp
  llvm/unittests/ProfileData/InstrProfTest.cpp
  llvm/unittests/ProfileData/MemProfTest.cpp
STAMPS
actor(@snehasish) application(Differential) author(@snehasish) herald(H114) herald(H225) herald(H428) herald(H576) herald(H599) herald(H615) herald(H864) monogram(D123094) object-type(DREV) phid(PHID-DREV-dqo3hmorwecjbvyabapm) reviewer(@davidxl) reviewer(@tejohnson) revision-repository(rG) revision-status(needs-review) subscriber(@hiraditya) subscriber(@llvm-commits) tag(#all) tag(#llvm) via(conduit)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D123094.420337.patch
Type: text/x-patch
Size: 59280 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220404/3da362ad/attachment.bin>
    
    
More information about the llvm-commits
mailing list