Re: [RFC] Combine vectorized loops with its scalar remainder.

2016-02-09 Thread Jeff Law
On 02/09/2016 09:09 AM, Ilya Enkovich wrote: Another option is to peel scalar loop and then just run vectorizer one more time to vectorize and mask it. Also we may peel vectorized loop and use original version (with all STMT_VINFO still available) as a tail and peeled version as a main loop. C

Re: [RFC] Combine vectorized loops with its scalar remainder.

2016-02-09 Thread Ilya Enkovich
2015-12-15 19:41 GMT+03:00 Yuri Rumyantsev : > Hi Richard, > > I re-designed the patch to determine ability of loop masking on fly of > vectorization analysis and invoke it after loop transformation. > Test-case is also provided. > > what is your opinion? > > Thanks. > Yuri. > Hi, I'm going to st

Re: [RFC] Combine vectorized loops with its scalar remainder.

2016-01-11 Thread Yuri Rumyantsev
Hi Richard, Did you have a chance to look at this updated patch? Thanks. Yuri. 2015-12-15 19:41 GMT+03:00 Yuri Rumyantsev : > Hi Richard, > > I re-designed the patch to determine ability of loop masking on fly of > vectorization analysis and invoke it after loop transformation. > Test-case is al

Re: [RFC] Combine vectorized loops with its scalar remainder.

2015-12-15 Thread Yuri Rumyantsev
Hi Richard, I re-designed the patch to determine ability of loop masking on fly of vectorization analysis and invoke it after loop transformation. Test-case is also provided. what is your opinion? Thanks. Yuri. ChangeLog:: 2015-12-15 Yuri Rumyantsev * config/i386/i386.c (ix86_builtin_vector

Re: [RFC] Combine vectorized loops with its scalar remainder.

2015-11-30 Thread Yuri Rumyantsev
Richard, Thanks a lot for your detailed comments! Few words about 436.cactusADM gain. The loop which was transformed for avx2 is very huge and this is the last inner-most loop in routine Bench_StaggeredLeapfrog2 (StaggeredLeapfrog2.F #366). If you don't have sources, let me know. Yuri. 2015-11-

Re: [RFC] Combine vectorized loops with its scalar remainder.

2015-11-27 Thread Richard Biener
On Fri, Nov 13, 2015 at 11:35 AM, Yuri Rumyantsev wrote: > Hi Richard, > > Here is updated version of the patch which 91) is in sync with trunk > compiler and (2) contains simple cost model to estimate profitability > of scalar epilogue elimination. The part related to vectorization of > loops wit

Re: [RFC] Combine vectorized loops with its scalar remainder.

2015-11-24 Thread Richard Biener
On Mon, Nov 23, 2015 at 4:52 PM, Yuri Rumyantsev wrote: > Hi Richard, > > Did you have a chance to look at this? It's on my list - I'm still swamped with patches to review. Richard. > Thanks. > Yuri. > > 2015-11-13 13:35 GMT+03:00 Yuri Rumyantsev : >> Hi Richard, >> >> Here is updated version o

Re: [RFC] Combine vectorized loops with its scalar remainder.

2015-11-23 Thread Yuri Rumyantsev
Hi Richard, Did you have a chance to look at this? Thanks. Yuri. 2015-11-13 13:35 GMT+03:00 Yuri Rumyantsev : > Hi Richard, > > Here is updated version of the patch which 91) is in sync with trunk > compiler and (2) contains simple cost model to estimate profitability > of scalar epilogue elimin

Re: [RFC] Combine vectorized loops with its scalar remainder.

2015-11-13 Thread Yuri Rumyantsev
Hi Richard, Here is updated version of the patch which 91) is in sync with trunk compiler and (2) contains simple cost model to estimate profitability of scalar epilogue elimination. The part related to vectorization of loops with small trip count is in process of developing. Note that implemented

Re: [RFC] Combine vectorized loops with its scalar remainder.

2015-11-10 Thread Richard Biener
On Tue, Nov 10, 2015 at 2:02 PM, Ilya Enkovich wrote: > 2015-11-10 15:30 GMT+03:00 Richard Biener : >> On Tue, Nov 3, 2015 at 1:08 PM, Yuri Rumyantsev wrote: >>> Richard, >>> >>> It looks like misunderstanding - we assume that for GCCv6 the simple >>> scheme of remainder will be used through intr

Re: [RFC] Combine vectorized loops with its scalar remainder.

2015-11-10 Thread Ilya Enkovich
2015-11-10 15:30 GMT+03:00 Richard Biener : > On Tue, Nov 3, 2015 at 1:08 PM, Yuri Rumyantsev wrote: >> Richard, >> >> It looks like misunderstanding - we assume that for GCCv6 the simple >> scheme of remainder will be used through introducing new IV : >> https://gcc.gnu.org/ml/gcc-patches/2015-09

Re: [RFC] Combine vectorized loops with its scalar remainder.

2015-11-10 Thread Richard Biener
On Tue, Nov 3, 2015 at 1:08 PM, Yuri Rumyantsev wrote: > Richard, > > It looks like misunderstanding - we assume that for GCCv6 the simple > scheme of remainder will be used through introducing new IV : > https://gcc.gnu.org/ml/gcc-patches/2015-09/msg01435.html > > Is it true or we missed somethin

Re: [RFC] Combine vectorized loops with its scalar remainder.

2015-11-03 Thread Yuri Rumyantsev
Richard, It looks like misunderstanding - we assume that for GCCv6 the simple scheme of remainder will be used through introducing new IV : https://gcc.gnu.org/ml/gcc-patches/2015-09/msg01435.html Is it true or we missed something? Now we are testing vectorization of loops with small non-constant

Re: [RFC] Combine vectorized loops with its scalar remainder.

2015-11-03 Thread Richard Biener
On Wed, Oct 28, 2015 at 11:45 AM, Yuri Rumyantsev wrote: > Hi All, > > Here is a preliminary patch to combine vectorized loop with its scalar > remainder, draft of which was proposed by Kirill Yukhin month ago: > https://gcc.gnu.org/ml/gcc-patches/2015-09/msg01435.html > It was tested wwith '-mavx

Re: [RFC] Combine vectorized loops with its scalar remainder.

2015-11-03 Thread Yuri Rumyantsev
This is expected failure since this patch is not in sync with the latest patches related to masking support for AVX512. I am waiting for support for masking load/store support which is not integrated to trunk. To get workable version of compiler use revision before r229128. 2015-11-03 13:08 GMT+03

Re: [RFC] Combine vectorized loops with its scalar remainder.

2015-11-03 Thread Richard Henderson
On 10/28/2015 11:45 AM, Yuri Rumyantsev wrote: Hi All, Here is a preliminary patch to combine vectorized loop with its scalar remainder, draft of which was proposed by Kirill Yukhin month ago: https://gcc.gnu.org/ml/gcc-patches/2015-09/msg01435.html It was tested wwith '-mavx2' option to run on

[RFC] Combine vectorized loops with its scalar remainder.

2015-10-28 Thread Yuri Rumyantsev
Hi All, Here is a preliminary patch to combine vectorized loop with its scalar remainder, draft of which was proposed by Kirill Yukhin month ago: https://gcc.gnu.org/ml/gcc-patches/2015-09/msg01435.html It was tested wwith '-mavx2' option to run on Haswell processor. The main goal of it is to impr