> On 2 Feb 2026, at 11:16, Jan Hubicka <[email protected]> wrote:
> 
>> Gentle ping
> OK,
> thanks!
> Honza

I’ve pushed this for Prachi to trunk.
Prachi, to commit further patches to GCC yourself, please apply for a 
Sourceware account using this form:
https://sourceware.org/cgi-bin/pdw/ps_form.cgi
You can put me down as your sponsor.
Thanks,
Kyrill


>> 
>>> On 20 Jan 2026, at 3:45 PM, Prachi Godbole <[email protected]> wrote:
>>> 
>>> <0001-ipa-reorder-for-locality-Adjust-bootstrap-lto-locali.patch>
>>> 
>>> I’ve updated the patch as per discussion and lowered the default value. 
>>> Attaching the new version here.
>>> 
>>> This patch turns off -fipa-reorder-for-locality for -fprofile-generate 
>>> because
>>> it's not required and contributes to the bloated time taken by bootstrap.  
>>> It
>>> also reduces the default partition size by half; the increased number of
>>> partitions speeds up LTRANS phase.
>>> 
>>> Bootstrapped and tested on aarch64-none-linux-gnu. OK for mainline?
>>> 
>>> Signed-off-by: Prachi Godbole <[email protected]>
>>> 
>>> config/ChangeLog:
>>> 
>>>       * bootstrap-lto-locality.mk (STAGE2_CFLAGS): Add param
>>>       lto-max-locality-partition.
>>>       (STAGE3_CFLAGS): Ditto.
>>>       (STAGEprofile_CFLAGS): Remove -fipa-reorder-for-locality.
>>>       (STAGEtrain_CFLAGS): Ditto.
>>> 
>>> gcc/Changelog:
>>> 
>>>       * params.opt: Change default param value.
>>> 
>>> 
>>> 
>>>> On 16 Jan 2026, at 6:09 PM, Prachi Godbole <[email protected]> wrote:
>>>> 
>>>> 
>>>> 
>>>>> On 16 Jan 2026, at 5:56 PM, Jan Hubicka <[email protected]> wrote:
>>>>> 
>>>>> External email: Use caution opening links or attachments
>>>>> 
>>>>> 
>>>>>> Thank you Honza for the review
>>>>>> 
>>>>>> 
>>>>>> The default value was tuned according to the target applications - large 
>>>>>> applications that benefit from the higher size. This results in majority 
>>>>>> of the target applications not needing param adjustment. I see ~5-10% 
>>>>>> improvement for the current default over a lower value.
>>>>>> 
>>>>>> The adjustment I made here was for additional build time improvement 
>>>>>> specifically for GCC bootstrap with the intention that the target 
>>>>>> applications can use the pass without needing it.
>>>>> 
>>>>> I see that 5-10% improvement is quite important for the specific
>>>>> use-case.  It is kind of unfortunate that we need to tune the parameter
>>>>> so high. Is it something that can be fixed by better code placement
>>>>> across adjacent partitions (which can be acomplished by tp_first_run
>>>>> machinery and also your new numbered textsubsections) or is it really
>>>>> about late IPA optimizations (such as register alloation) being important
>>>>> and ltrans partition being in a way?
>>>>> 
>>>>> I think we should go with reasonable defaults (which does not bow up
>>>>> build times) in GCC, so perhaps param should be lowered by default to
>>>>> what we need for bootstrap and have the target app to bump it up in its
>>>>> config.
>>>>> 
>>>>> Hozna
>>>> 
>>>> Unfortunately, it’s about IPA optimizations and specifically how many 
>>>> clones are created - having too low a default will blow up the code size. 
>>>> Following your suggestion, I’ll try with a lowered default - meeting 
>>>> halfway between current default and the param here so that we don’t blow 
>>>> up build time and also the apps don’t require too much adjustment. I’ll be 
>>>> back with that patch
>>>> 
>>>> Thanks,
>>>> Prachi
>>>> 
>>> 
>> 

Reply via email to