[Patch] Tuning the strategy in SLP vectoriezer
Yi Jiang
yjiang at apple.com
Tue Sep 3 10:19:58 PDT 2013
Hi Arnold,
Thank you. It will be included in the patch.
On Sep 3, 2013, at 8:13 AM, Arnold Schwaighofer <aschwaighofer at apple.com> wrote:
> Yi,
>
> we can still test the logic for the case where the size of a type is smaller than its alignment by changing the data layout string and using double instead of x86_fp80. I have attached a test case.
>
> target datalayout = “…f64:64:64…”
> becomes
> target datalayout = “...f64:128:128…”
>
>
>
>
>
> Thanks,
> Arnold
>
> <overalignedtype.ll>
>
>
> On Sep 2, 2013, at 6:34 PM, Nadav Rotem <nrotem at apple.com> wrote:
>
>> Hi Yi,
>>
>> Thanks for working on this. Please don’t commit the whitespace changes. Everything else LGTM.
>>
>> Thanks,
>> Nadav
>>
>>
>> On Sep 2, 2013, at 10:58 AM, yijiang <yjiang at apple.com> wrote:
>>
>>> Hi Nadav,
>>>
>>> Thank you for the comments. I have removed the flag and adjust the test cases.
>>> <slpnew.patch>
>>>
>>> On Aug 30, 2013, at 9:45 PM, Nadav Rotem <nrotem at apple.com> wrote:
>>>
>>>> Hi Yi,
>>>>
>>>> Please don’t add the new flag “-slp-vec-reg-size”. This is not something that we want to control via flags. You can test the new feature just by testing <4 x float> and <5 x float> sequences.
>>>>
>>>> Thanks,
>>>> Nadav
>>>>
>>>> On Aug 30, 2013, at 4:30 PM, yijiang <yjiang at apple.com> wrote:
>>>>
>>>>> Thank you guys! Here is the new patch:
>>>>> <slp.patch>
>>>>>
>>>>> On Aug 30, 2013, at 3:37 PM, Chandler Carruth <chandlerc at google.com> wrote:
>>>>>
>>>>>> Try out clang-format to automatically get some (most?) of these formatting fixes? It even has a tool to run it over a patch file.
>>>>>>
>>>>>>
>>>>>> On Fri, Aug 30, 2013 at 3:28 PM, Yi Jiang <yjiang at apple.com> wrote:
>>>>>> Thank you for the comments. Sorry I somehow lost the version with changed format. I will do it again.
>>>>>> Actually now the rgb_phi.ll is not enabled, so let me merge five roots_pill.ll and phi.ll
>>>>>>
>>>>>> On Aug 30, 2013, at 3:26 PM, Arnold Schwaighofer <aschwaighofer at apple.com> wrote:
>>>>>>
>>>>>>> Also, please remove the brackets here:
>>>>>>>
>>>>>>> + if (i + VF > e) {
>>>>>>> + OpsWidth = e - i;
>>>>>>> + }
>>>>>>> + else {
>>>>>>> + OpsWidth = VF;
>>>>>>> + }
>>>>>>>
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Arnold
>>>>>>>
>>>>>>> On Aug 30, 2013, at 5:21 PM, Arnold Schwaighofer <aschwaighofer at apple.com> wrote:
>>>>>>>
>>>>>>>> Hi Yi,
>>>>>>>>
>>>>>>>> Code looks good to me. The patch has some whitespace errors. Please fix these. Also “return Changed” is not intended properly.
>>>>>>>>
>>>>>>>> Can you merge “rgb_phi.ll” “fiveroots_phi.ll” and “phi.ll” into one file?
>>>>>>>>
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> Arnold
>>>>>>>>
>>>>>>>>
>>>>>>>> On Aug 30, 2013, at 3:14 PM, Yi Jiang <yjiang at apple.com> wrote:
>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> In this patch we are trying to do two things:
>>>>>>>>> 1) If the width of vectorization list candidate is bigger than vector reg width, we will break it down to fit the vector reg.
>>>>>>>>> 2) We do not vectorize the width which is not power of two.
>>>>>>>>>
>>>>>>>>> Here is the performance result of the change and we use ref input. Any comments and suggestions are appreciated.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Performance Regressions - Execution Time Δ Previous Current σ Δ (B) σ (B)
>>>>>>>>> External/SPEC/CINT95/134_perl/134_perl 2.76% 2.9533 3.0348 0.0024 0.00% 0.0024
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Performance Improvements - Execution Time Δ Previous Current σ Δ (B) σ (B)
>>>>>>>>> External/SPEC/CFP2000/177_mesa/177_mesa -6.97% 21.1910 19.7130 0.0223 0.00% 0.0223
>>>>>>>>> SingleSource/Benchmarks/BenchmarkGame/partialsums -5.19% 0.2969 0.2815 - 0.00% -
>>>>>>>>> External/SPEC/CFP2000/188_ammp/188_ammp -1.54% 88.2623 86.9050 0.0823 0.00% 0.0823
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>> <slp.patch>
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> llvm-commits mailing list
>>>>>>>>> llvm-commits at cs.uiuc.edu
>>>>>>>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> llvm-commits mailing list
>>>>>>>> llvm-commits at cs.uiuc.edu
>>>>>>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> llvm-commits mailing list
>>>>>> llvm-commits at cs.uiuc.edu
>>>>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> llvm-commits mailing list
>>>>> llvm-commits at cs.uiuc.edu
>>>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>>>
>>>
>>
>
More information about the llvm-commits
mailing list