[llvm] [StaticDataLayout][PGO]Implement reader and writer change for data access profiles (PR #139997)
Mingming Liu via llvm-commits
llvm-commits at lists.llvm.org
Mon May 19 15:35:30 PDT 2025
mingmingl-llvm wrote:
Tagging @SharonXSharon @ellishg .
My understanding of memory profile guided data symbols ordering (https://discourse.llvm.org/t/rfc-profile-guided-static-data-partitioning/83744/4) is that iPGHO binaries produces the profiles in [raw MemProf format](https://github.com/llvm/llvm-project/blob/2dd6a8c35a79710273bb98da8729ec6dea251998/llvm/tools/llvm-profdata/llvm-profdata.cpp#L3285-L3294). Could you share more about how the profile representation (and/or) iPGHO change look like in raw MemProf (e.g., a minimal draft PR or whatever makes the sharing easier), and how the profile is used by compiler?
This PR adds data access profiles in [indexed MemProf format](https://github.com/llvm/llvm-project/blob/2dd6a8c35a79710273bb98da8729ec6dea251998/llvm/tools/llvm-profdata/llvm-profdata.cpp#L3303-L3307), and compiler consumes it by reading indexed MemProf out of an [indexed FDO profile](https://llvm.org/docs/InstrProfileFormat.html#indexed-profile-format). Raw memprof remains unchanged. How would it interact with the iPGHO-based data symbol ordering work on your side?
https://github.com/llvm/llvm-project/pull/139997
More information about the llvm-commits
mailing list