[PATCH] D99123: [SampleFDO] Flow Sensitive Sample FDO (FSAFDO)
Rong Xu via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Mar 22 15:36:08 PDT 2021
xur created this revision.
xur added reviewers: davidxl, wmi, hoy, snehasish.
Herald added subscribers: dexonsmith, wenlei, pengfei, steven_wu, zzheng, hiraditya, mgorny.
xur requested review of this revision.
Herald added a project: LLVM.
This patch implements Flow Sensitive Sample FDO (FSAFDO). It has the following
changes:
(1) disable current discriminator coding scheme.
(2) new hierarchical discriminator for FSAFDO
(3) FSAFDO profile loader.
For this patch, "-enable-fs-discriminator=true" turns on the new functionality.
"-enable-fs-discriminator=false" (the default) keeps current Sample FDO behavior.
This patch is not intended for check-in. I post it mainly to get the advises on to break
into smaller patches. Also because of this, I did not include the test cases.
https://reviews.llvm.org/D99123
Files:
llvm/include/llvm/CodeGen/FlowSensitiveSampleProfile.h
llvm/include/llvm/CodeGen/MachineDominators.h
llvm/include/llvm/CodeGen/MachineOptimizationRemarkEmitter.h
llvm/include/llvm/CodeGen/Passes.h
llvm/include/llvm/IR/DebugInfoMetadata.h
llvm/include/llvm/InitializePasses.h
llvm/include/llvm/LTO/Config.h
llvm/include/llvm/ProfileData/SampleProfReader.h
llvm/include/llvm/Support/FSAFDODiscriminator.h
llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
llvm/lib/CodeGen/CMakeLists.txt
llvm/lib/CodeGen/FlowSensitiveSampleProfile.cpp
llvm/lib/CodeGen/TargetPassConfig.cpp
llvm/lib/LTO/LTOBackend.cpp
llvm/lib/Passes/PassBuilder.cpp
llvm/lib/ProfileData/SampleProf.cpp
llvm/lib/ProfileData/SampleProfReader.cpp
llvm/lib/Target/X86/X86InsertPrefetch.cpp
llvm/lib/Transforms/IPO/SampleProfile.cpp
llvm/lib/Transforms/Utils/LoopUnroll.cpp
llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
llvm/tools/llvm-profdata/llvm-profdata.cpp
llvm/unittests/ProfileData/SampleProfTest.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D99123.332450.patch
Type: text/x-patch
Size: 60627 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210322/8fa82cd1/attachment-0001.bin>
More information about the llvm-commits
mailing list