[llvm-dev] [RFC] Adding target-specific overrides for Indirect Call Promotion (ICP)
Teresa Johnson via llvm-dev
llvm-dev at lists.llvm.org
Sun Aug 25 08:08:07 PDT 2019
Ok, thanks. For some odd reason I got two copies of the original email, so
I missed Hal and your responses. Let's continue on that thread. Teresa
On Sun, Aug 25, 2019 at 6:34 AM Wael Yehia <wyehia at ca.ibm.com> wrote:
> Hi Teresa,
> are the values that shown improvement on Power9. Please see my reply to
> Hal Finkel in this thread for more details.
> -----Teresa Johnson <tejohnson at google.com> wrote: -----
> To: Wael Yehia <wyehia at ca.ibm.com>
> From: Teresa Johnson <tejohnson at google.com>
> Date: 08/24/2019 11:22AM
> Cc: llvm-dev <llvm-dev at lists.llvm.org>
> Subject: [EXTERNAL] Re: [RFC] Adding target-specific overrides for
> Indirect Call Promotion (ICP)
> On Thu, Aug 22, 2019 at 8:34 AM Wael Yehia <wyehia at ca.ibm.com> wrote:
>> We see improved performance on the PowerPC platform by increasing the
>> aggressiveness of Indirect Call Promotion (ICP).
>> In particular, lowering the promotion threshold and increasing the
>> maximum number of promotions helps.
>> The following command line options (default values shown) control some of
>> the ICP parameters:
>> We would like to change their defaults to a target specific value.
> The above are defaults - what values are you finding are best on PowerPC?
> I'd be interested in trying the values you found to be optimal there again
> on e.g. x86 to evaluate their effectiveness. We've done various experiments
> and tuning of these values, but curious to try.
>> I have few questions:
>> 1. Is anyone else interested in having target specific default values
>> for the above options?
> It if makes sense from an architectural standpoint - i.e. are indirect
> calls much more expensive in PowerPC than say x86?
>> 2. Is anyone against making the defaults for the above options target
>> 3. If I were to make the default values target dependent (but allow user
>> specified option to trump the defaults) the question is whether the
>> following is the best and simplest way to do it:
>> - teach `TargetTransformInfo` (TTI) about the above 3 values (basically
>> add 3 integer-returning query functions).
>> - make `PGOinstrumentationUse`, `PGOIndirectCallPromotion`, and
>> `ModuleSummaryIndexAnalysis` passes require the `TargetIRAnalysis` pass so
>> that they can access the TTI instance, and pass it to
>> The legacy PM passes would be changed symmetrically.
>> Thank you.
>> Wael Yehia
>> Compiler Development
>> IBM Canada Lab
>> wyehia at ca.ibm.com
> Teresa Johnson | Software Engineer | tejohnson at google.com |
Teresa Johnson | Software Engineer | tejohnson at google.com |
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev