[llvm-dev] [RFC][SLP] Let's turn -slp-vectorize-hor on by default

Charlie Turner via llvm-dev llvm-dev at lists.llvm.org
Wed Nov 11 07:08:30 PST 2015


Thanks, I have enabled it by default in r252733.

--Charlie.

On 11 November 2015 at 14:31, Das, Dibyendu <Dibyendu.Das at amd.com> wrote:
> Cool.No problem.
>
> Sent from my Windows Phone
> ________________________________
> From: James Molloy
> Sent: ‎11/‎11/‎2015 7:50 PM
> To: Das, Dibyendu; Charlie Turner
> Cc: llvm-dev at lists.llvm.org
>
> Subject: Re: [llvm-dev] [RFC][SLP] Let's turn -slp-vectorize-hor on by
> default
>
> Hi Dibyendu,
>
> Would it make sense for Charlie to flip this switch now, and he can easily
> flip it back if you get negative benchmark results? Waiting for three days
> of benchmarking seems a tad overkill for precommit :)
>
> James
>
> On Wed, 11 Nov 2015 at 14:19 Das, Dibyendu via llvm-dev
> <llvm-dev at lists.llvm.org> wrote:
>>
>> We have started this. Since there are some holidays expect a small delay.
>> Will let you know by Friday.
>>
>> Thx
>>
>>
>> Sent from my Windows Phone
>> ________________________________
>> From: Charlie Turner
>> Sent: ‎11/‎11/‎2015 6:34 PM
>> To: Das, Dibyendu
>> Cc: nrotem at apple.com; llvm-dev at lists.llvm.org
>>
>> Subject: Re: [llvm-dev] [RFC][SLP] Let's turn -slp-vectorize-hor on by
>> default
>>
>> > I will try to get some spec cpu 2006 rate runs done under -O3 -flto with
>> > and without -slp-vectorize-hor and let you know.
>>
>> Do you have a time estimate on when you'll be able to get these
>> numbers? Another option would be to default the flag on and revert if
>> this does cause regressions on the targets you're interested in.
>>
>> TIA,
>> Charlie.
>>
>> On 10 November 2015 at 10:39, Das, Dibyendu <Dibyendu.Das at amd.com> wrote:
>> > I will try to get some spec cpu 2006 rate runs done under -O3 -flto with
>> > and without -slp-vectorize-hor and let you know.
>> >
>> > -Thx
>> >
>> > -----Original Message-----
>> > From: nrotem at apple.com [mailto:nrotem at apple.com]
>> > Sent: Tuesday, November 10, 2015 3:33 AM
>> > To: Charlie Turner
>> > Cc: Das, Dibyendu; llvm-dev at lists.llvm.org
>> > Subject: Re: [llvm-dev] [RFC][SLP] Let's turn -slp-vectorize-hor on by
>> > default
>> >
>> >
>> >> On Nov 9, 2015, at 9:55 AM, Charlie Turner via llvm-dev
>> >> <llvm-dev at lists.llvm.org> wrote:
>> >>
>> >> I have not. I could feasibly do this, but I'm not set up to perform
>> >> good experiments on X86-64 hardware. Furthermore, if I do it for
>> >> X86-64, it only seems fair I should do it for the other backends as
>> >> well, which is much less feasible for me. I'm reaching out the
>> >> community to see if there's any objection based on their own
>> >> measurements of this feature about defaulting it to on.
>> >>
>> >> Please let me know if you think I've got the wrong end of the
>> >> etiquette stick here, and if so I'll try and acquire sensible numbers
>> >> for other backends.
>> >>
>> >> Kind regards,
>> >> Charlie.
>> >>
>> >> On 9 November 2015 at 17:50, Das, Dibyendu <Dibyendu.Das at amd.com>
>> >> wrote:
>> >>> Have you run cpu2006 for x86-64 for perf progression/regression ?
>> >
>> > I think it would be great if you could help Charlie with this.
>> >
>> >>>
>> >>> Sent from my Windows Phone
>> >>> ________________________________
>> >>> From: Charlie Turner via llvm-dev
>> >>> Sent: ‎11/‎9/‎2015 11:15 PM
>> >>> To: llvm-dev at lists.llvm.org
>> >>> Subject: [llvm-dev] [RFC][SLP] Let's turn -slp-vectorize-hor on by
>> >>> default
>> >>>
>> >>> I've done compile-time experiments for AArch64 over SPEC{2000,2006}
>> >>> and of course the test-suite. I measure no significant compile-time
>> >>> impact of enabling this feature by default.
>> >>>
>> >>> I also ran the test-suite on an X86-64 machine. I can't imagine any
>> >>> other targets being uniquely effected in terms of compile-time by
>> >>> turning this on after testing both AArch64 and X86-64. I also timed
>> >>> running the regression tests with -slp-vectorize-hor enabled and
>> >>> disabled, no significant difference here either.
>> >>>
>> >>> There are no significant performance regressions (or much
>> >>> improvements) on AArch64 in night-test suite. I do see wins in third
>> >>> party benchmarks when using this flag, which is why I'm asking if
>> >>> there would be any objection from the community to making
>> >>> -slp-vectorize-hor default on.
>> >>>
>> >>> I have run the regression tests and looked through the bug tracker /
>> >>> VC logs, I can't see any reason for not enabling it.
>> >
>> >
>> > +1
>> >
>> > If there are no compile time and runtime regressions and if we are
>> > seeing wins in some benchmarks then we should enable this by default.  At
>> > some point we should demote this flag from a command-line flag into a static
>> > variable in the code.  Out of curiosity, how much of the compile time are we
>> > spending in the SLP vectorizer nowadays ?
>> >
>> >
>> >
>> >
>> >>>
>> >>> Thanks,
>> >>> Charlie.
>> >>> _______________________________________________
>> >>> LLVM Developers mailing list
>> >>> llvm-dev at lists.llvm.org
>> >>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>> >> _______________________________________________
>> >> LLVM Developers mailing list
>> >> llvm-dev at lists.llvm.org
>> >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>> >
>> _______________________________________________
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev


More information about the llvm-dev mailing list