[llvm-bugs] [Bug 49044] New: >20% code size regression on tramp3d-v4 with new PM
via llvm-bugs
llvm-bugs at lists.llvm.org
Thu Feb 4 13:03:53 PST 2021
https://bugs.llvm.org/show_bug.cgi?id=49044
Bug ID: 49044
Summary: >20% code size regression on tramp3d-v4 with new PM
Product: new-bugs
Version: unspecified
Hardware: PC
OS: All
Status: NEW
Severity: enhancement
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: jpaquette at apple.com
CC: htmldeveloper at gmail.com, llvm-bugs at lists.llvm.org
1) Using LNT, compile CTMark at -O3 for AArch64 with + without the new PM. (I
used -C target-arm64-iphoneos-internal.cmake + --cflags -O3 --cxxflags -O3)
2) Use llvm-test-suite/utils/compare.py to compare size.__text
test-suite...ark/tramp3d-v4/tramp3d-v4.test 613236 763796 24.6%
Although this is -O3, and size generally isn't a concern there, this is a
pretty big jump in code size. It might be worth looking into if it is not
expected. I think that a lot of this is due to inlining changes.
The following functions grew a lot in size:
__ZN5Pooma11newRelationIN3EOS5pg_igE5FieldI22UniformRectilinearMeshI10MeshTraitsILi3Ed21UniformRectilinearTag12CartesianTagLi3EEEd10MultiPatchI7GridTag6RemoteI5BrickEEESG_SG_S3_IS9_d16ConstantFunctionEEEvRKT_RKT0_RKT1_RKT2_RKT3_
1080 10036 8956
__Z6assignI22UniformRectilinearMeshI10MeshTraitsILi3Ed21UniformRectilinearTag12CartesianTagLi3EEEd14MultiPatchViewI7GridTag6RemoteI5BrickELi3EES5_d13ExpressionTagI10BinaryNodeI8OpDivideSD_I10OpSubtractSD_ISE_5FieldIS5_dSB_ESH_ESH_ESG_IS5_d16ConstantFunctionEEE8OpAssignERKSG_IT_T0_T1_ESU_RKSG_IT2_T3_T4_ERKT5_
632 10436 9804
__Z6assignI22UniformRectilinearMeshI10MeshTraitsILi3Ed21UniformRectilinearTag12CartesianTagLi3EEEd14MultiPatchViewI7GridTag6RemoteI5BrickELi3EES5_d13ExpressionTagI10BinaryNodeI10OpMultiply6ScalarIdESD_I5OpAdd9ReferenceI5FieldIS5_dSB_EESL_EEE8OpAssignERKSJ_IT_T0_T1_ESV_RKSJ_IT2_T3_T4_ERKT5_
496 15576 15080
__Z6assignI22UniformRectilinearMeshI10MeshTraitsILi3Ed21UniformRectilinearTag12CartesianTagLi3EEEd14MultiPatchViewI7GridTag6RemoteI5BrickELi3EES5_d13ExpressionTagI10BinaryNodeI8OpDivide5FieldIS5_dSB_ESG_EE8OpAssignERKSF_IT_T0_T1_ESP_RKSF_IT2_T3_T4_ERKT5_
488 15608 15120
__Z6assignI22UniformRectilinearMeshI10MeshTraitsILi3Ed21UniformRectilinearTag12CartesianTagLi3EEEd14MultiPatchViewI7GridTag6RemoteI5BrickELi3EES5_d13ExpressionTagI9UnaryNodeI6FnSqrt10BinaryNodeI8OpDivideSF_I10OpMultiply6ScalarIdE5FieldIS5_dSB_EESL_EEE8OpAssignERKSK_IT_T0_T1_ESW_RKSK_IT2_T3_T4_ERKT5_
496 15656 15160
(Format: function_name old_pm_size new_pm_size diff)
Then looking at the remarks:
$ ~/llvm-project/llvm/tools/opt-viewer/opt-stats.py diff0.opt.yaml
Top 10 remarks by pass:
asm-printer 53%
gvn 18%
licm 12%
inline 12%
slp-vectorizer 2%
loop-vectorize 2%
prologepilog 1%
regalloc 1%
loop-delete 0%
early-ifcvt 0%
Top 10 remarks:
asm-printer/InstructionMix 52%
gvn/LoadClobbered 18%
inline/Inlined 7%
licm/InstSunk 6%
licm/Hoisted 5%
inline/TooCostly 4%
licm/LoadWithLoopInvariantAddressInvalidated 1%
slp-vectorizer/NotBeneficial 1%
asm-printer/InstructionCount 1%
prologepilog/StackSize 1%
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20210204/e242fdbc/attachment.html>
More information about the llvm-bugs
mailing list