[CSSPGO][Preinliner] Set default value of sample-profile-inline-limit-max to 50000.
authorHongtao Yu <hoy@fb.com>
Fri, 10 Feb 2023 01:48:53 +0000 (17:48 -0800)
committerHongtao Yu <hoy@fb.com>
Mon, 13 Feb 2023 17:17:50 +0000 (09:17 -0800)
commit39eb1c6145eb3b2a0f1738b7122e0c65533b2505
tree4f39fdbe51de3f95d3e05e834f0a7aa5c193a2d6
parentb6259eca16f6c923d87a1ca1d424931e37d6871a
[CSSPGO][Preinliner] Set default value of sample-profile-inline-limit-max to 50000.

The previous threshold 3000 is too small to enable any inlining for giant functions which come in with bigger size than that. In real world, I've seen a big hot function with 34000 dissasembly size. Motivated by that I'm changing the value to 50000.

With the new value the allowance size growth should still be reasonable, as it is also bounded by another threshold, i.e, --sample-profile-inline-growth-limit , which defaults to 12. The new value should mostly only affect giant functions.

I've seen for serveral internal services, the new threshold boosts performance, and it has neutral impact for other services without hot giant functions. So far I haven't seen any performance regression with that.

Reviewed By: wenlei

Differential Revision: https://reviews.llvm.org/D143696
llvm/tools/llvm-profgen/CSPreInliner.cpp