Displaying 20 results from an estimated 10000 matches similar to: "[LLVMdev] Loop vectorizer"
2012 Oct 16
4
[LLVMdev] Loop vectorizer
----- Original Message -----
> Hi Preston!
>
> >
> > I'd start by making a plan (a design!) with goals and stuff.
> > Publish it so we can see what you mean by "vectorization".
>
> I will send a separate email later, but here is a quick overview. I
> see the vectorizer having four main components:
>
> 1. Preparation passes: If-conversion,
2012 Oct 16
0
[LLVMdev] Loop vectorizer
Hi Preston!
>
> I'd start by making a plan (a design!) with goals and stuff.
> Publish it so we can see what you mean by "vectorization".
I will send a separate email later, but here is a quick overview. I see the vectorizer having four main components:
1. Preparation passes: If-conversion, loop transformations, etc.
2. Cost model - This unit decides on the best
2012 Oct 17
0
[LLVMdev] Loop vectorizer
Hi Nadav,
Do you have any small write-up of current design of loop vectorizer?. If so, can you please send it across?. I want to see if there are dependencies such as unrolling for the vectorization.
In the design we may also have to consider BB vectorizer and loop vectorizer working well together with no ambiguous requirements/dependencies.
Regards,
Shivaram
-----Original Message-----
2012 Oct 17
0
[LLVMdev] Loop vectorizer
Hi everybody,
On 10/17/12 12:32 AM, Hal Finkel wrote:
>>> Do you have a plan for xforms to increase the amount of
>>> vectorization?
>>
>> Yes. We will need to implement a predication phase and to design the
>> interaction with other loop transformations. Also, this will have to
>> work well with the cost model. We also need to think of a good way to
2012 Oct 17
2
[LLVMdev] Loop vectorizer
----- Original Message -----
> From: "Ralf Karrenberg" <Chareos at gmx.de>
> To: llvmdev at cs.uiuc.edu
> Sent: Wednesday, October 17, 2012 2:13:08 AM
> Subject: Re: [LLVMdev] Loop vectorizer
>
> Hi everybody,
>
> On 10/17/12 12:32 AM, Hal Finkel wrote:
> >>> Do you have a plan for xforms to increase the amount of
> >>>
2013 Jan 25
4
[LLVMdev] LoopVectorizer in OpenCL C work group autovectorization
On 01/25/2013 09:56 AM, Nadav Rotem wrote:
> Thanks for checking the Loop Vectorizer, I am interested in hearing your
> feedback. The Loop Vectorizer does not fit here. OpenCL vectorization is
> completely different because the language itself is data-parallel. You
> don't need all of the legality checks that the loop vectorizer has.
I'm aware of this and it was my point in
2013 Jan 25
0
[LLVMdev] LoopVectorizer in OpenCL C work group autovectorization
Hi Pekka,
> Hi,
>
> I started to play with the LoopVectorizer of LLVM trunk
> on the work-item loops produced by pocl's OpenCL C
> kernel compiler, in hopes of implementing multi-work-item
> work group autovectorization in a modular manner.
>
Thanks for checking the Loop Vectorizer, I am interested in hearing your feedback. The Loop Vectorizer does not fit here.
2013 Jan 24
3
[LLVMdev] LoopVectorizer in OpenCL C work group autovectorization
Hi,
I started to play with the LoopVectorizer of LLVM trunk
on the work-item loops produced by pocl's OpenCL C
kernel compiler, in hopes of implementing multi-work-item
work group autovectorization in a modular manner.
The vectorizer seems to refuse to vectorize the loop if it sees
multiple writes to the same memory object within the
same iteration. In case of parallel loops such as
the
2015 Aug 13
2
[LLVMdev] Improving loop vectorizer support for loops with a volatile iteration variable
Hi Gerolf,
I think we have several (perhaps separable) issues here:
1. Do we have a canonical form for loops, preserved through the optimizer, that allows naturally-constructed loop nests to remain separable?
2. Do we forbid non-lowering transformations that turn vectorizable loops into non-vectorizable loops?
3. How do we detect cases where transformations cause a negative answer to either
2012 Jun 20
1
[LLVMdev] another SCEV surprise
On Wed, 20 Jun 2012 02:18:49 -0700
Eli Friedman <eli.friedman at gmail.com> wrote:
> On Tue, Jun 19, 2012 at 10:21 PM, Preston Briggs
> <preston.briggs at gmail.com> wrote:
> > When compile the following case and look at the SCEV analysis, I
> > notice that the first two loops don't have a
> > LoopInvariantBackedgeTakenCount (surprising) and the last one
2013 Jan 25
2
[LLVMdev] LoopVectorizer in OpenCL C work group autovectorization
> I am in favor of adding metadata to control different aspects of
> vectorization, mainly for supporting user-level pargmas [1] but also for
> DSLs. Before we start adding metadata to the IR we need to define the
> semantics of the tags. "Parallel_for" is too general. We also want to control
> vectorization factor, unroll factor, cost model, etc.
These are used to
2018 Sep 13
2
Loop Distribution pass
>I'm just curious as tho which concrete passes would benefit sooner.
This all depends on those who are working on other loop xforms, since we currently don't have bandwidth to drive that kind of changes into other loop xforms. That's why when this line of questions pops up, I offer to work together. Short of that, the best we can proactively do is to make vectorizer analyses
2013 Jan 31
3
[LLVMdev] LoopVectorizer in OpenCL C work group autovectorization
Hi Ralf,
On 01/31/2013 05:44 PM, Ralf Karrenberg wrote:
> As for the current status, the loop vectorizer is only able to vectorize
> inner loops and (I think) does not handle function calls and memory
> operations well. This will prevent it from vectorizing a large group of
> OpenCL kernels, and certainly all "interesting", more complex ones.
Agreed -- but not being able to
2013 Jan 31
0
[LLVMdev] LoopVectorizer in OpenCL C work group autovectorization
Hi Pekka, hi Nadav,
I didn't find the time to read this thread until now, sorry for that.
I actually think you are both right :).
As for the current status, the loop vectorizer is only able to vectorize
inner loops and (I think) does not handle function calls and memory
operations well. This will prevent it from vectorizing a large group of
OpenCL kernels, and certainly all
2015 May 21
3
[LLVMdev] Alias-based Loop Versioning
There is a work taking place by multiple people in this area and more is expected to happen and I’d like to make sure we’re working toward a common end goal.
I tried to collect the use-cases for run-time memory checks and the specific memchecks required for each:
1. Loop Vectorizer: each memory access is checked against all other memory accesses in the loop (except read vs read)
2. Loop
2015 Jul 16
4
[LLVMdev] Improving loop vectorizer support for loops with a volatile iteration variable
----- Original Message -----
> From: "Hal Finkel" <hfinkel at anl.gov>
> To: "Chandler Carruth" <chandlerc at google.com>
> Cc: llvmdev at cs.uiuc.edu
> Sent: Thursday, July 16, 2015 1:58:02 AM
> Subject: Re: [LLVMdev] Improving loop vectorizer support for loops
> with a volatile iteration variable
> ----- Original Message -----
> >
2013 Jan 25
0
[LLVMdev] LoopVectorizer in OpenCL C work group autovectorization
Hi Pekka,
> How I see it, the data parallel input simply makes the vectorizer's job
> easier (skip some of the legality checks) while reusing most of the
> implementation (e.g. cost estimation, unrolling decisions, the
> vector instruction formation itself, predication/if-conversion,
> speculative execution+blend, etc.).
>
What you need is outer loop vectorization while
2013 Jun 05
15
[LLVMdev] Enabling the vectorizer for -Os
Hi,
I would like to start a discussion about enabling the loop vectorizer by default for -Os. The loop vectorizer can accelerate many workloads and enabling it for -Os and -O2 has obvious performance benefits. At the same time the loop vectorizer can increase the code size because of two reasons. First, to vectorize some loops we have to keep the original loop around in order to handle the last
2012 Feb 07
2
[LLVMdev] Vectorization: Next Steps
On 02/06/2012 10:02 PM, Preston Briggs wrote:
> On Mon, Feb 6, 2012 at 12:13 PM, Sebastian Pop <spop at codeaurora.org
> <mailto:spop at codeaurora.org>> wrote:
>> [many things, but I'm only going to focus on one of them] Would
>> you consider using Polly http://polly.grosser.es to avoid writing
>> this code?
>
> My impression is that Polly (and
2011 Dec 24
4
[LLVMdev] dominance frontiers
On Fri, Dec 23, 2011 at 3:53 PM, Chris Lattner <clattner at apple.com> wrote:
>
>
> On Dec 23, 2011, at 1:35 PM, Preston Briggs wrote:
>
> > Reading the comments in Analysis/DominanceFrontier.h, I see a note that the structure is deprecated and
> > we're not to use it for anything new.
> >
> > Has it been replaced with something equally useful, or