search for: vectoriz

Displaying 20 results from an estimated 202 matches for "vectoriz".

Did you mean: vectorize
2011 May 22
0
[LLVMdev] No SSE instructions
...compiled the simple program: > > #include <stdio.h> > #include <stdlib.h> > > int v1[10000]; > > int main() > { > int i; > > for (i = 0; i < 10000; i++) { > v1[i] = i; > } > > This loop is not really vectorizable, even if LLVM had an auto-vectorizer. You need the same operation (floating-point or integer) applied to contiguous elements in a vector. An example of a vectorizable loop body would be "v1[i] = v1[i] * v1[i]" Then, you could use SSE (or any other vector instruction set) to get a s...
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, loop transformations, etc. > > 2. Cost model - This unit decides on the best vectorization factor &...
2012 Oct 16
2
[LLVMdev] Loop vectorizer
Nadav Rotem <nrotem at apple.com> wrote: > I sent a patch to llvm-commit with a new loop vectorizer. > This is a very simple loop vectorizer, but we have to start somewhere. > With this new loop vectorizer we can already vectorize a good number of loops. > I know that we can improve the new loop vectorizer in a number of ways. > We can implement a precise dependence test, > we ca...
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 vectorization factor (could be 1). 3. Legality check...
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 of the above? Now (2) is a subset of (1), but (1) applies as a general structural property to a much larger class of transformations. Hyojin has found, and proposed a fix for,...
2011 May 22
10
[LLVMdev] No SSE instructions
Hello. I have compiled the simple program: #include <stdio.h> #include <stdlib.h> int v1[10000]; int main() { int i; for (i = 0; i < 10000; i++) { v1[i] = i; } for (i = 0; i < 10000; i++) { printf("%d ", v1[i]); } return 0; } Next, I disasseble the executable file and have not found
2017 Feb 27
2
[Proposal][RFC] Epilog loop vectorization
On 02/27/2017 12:41 PM, Michael Kuperstein wrote: There's another issue with re-running the vectorizer (which I support, btw - I'm just saying there are more problems to solve on the way :-) ) Historically, we haven't even tried to evaluate the cost of the "constant" (not per-iteration) vectorization overhead - things like alias checks. Instead, we have hard bounds - we won'...
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 -----...
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 >> detect early on if the transformations a...
2005 Apr 22
1
RE: [R] when can we expect Prof Tierney's compiled R?
..., 2005 7:33 AM > To: Peter Dalgaard > Cc: Jason Liao; r-help@stat.math.ethz.ch > Subject: Re: [R] when can we expect Prof Tierney's compiled R? > > On Wed, 20 Apr 2005, Peter Dalgaard wrote: > > > Luke Tierney <luke@stat.uiowa.edu> writes: > > > >> Vectorized operations in R are also as fast as compiled C (because > >> that is what they are :-)). A compiler such as the one > I'm working > >> on will be able to make most difference for > non-vectorizable or not > >> very vectorizable code. It may also be able...
2013 Jun 06
2
[LLVMdev] Enabling the vectorizer for -Os
On Wed, Jun 5, 2013 at 5:51 PM, Nadav Rotem <nrotem at apple.com> wrote: > Hi, > > Thanks for the feedback. I think that we agree that vectorization on -Os > can benefit many programs. Regarding -O2 vs -O3, maybe we should set a > higher cost threshold for O2 to increase the likelihood of improving the > performance ? We have very few regressions on -O3 as is and with better > cost models I believe that we can bring them close...
2013 Jun 06
0
[LLVMdev] Enabling the vectorizer for -Os
Hi, Thanks for the feedback. I think that we agree that vectorization on -Os can benefit many programs. Regarding -O2 vs -O3, maybe we should set a higher cost threshold for O2 to increase the likelihood of improving the performance ? We have very few regressions on -O3 as is and with better cost models I believe that we can bring them close to zero, so I am no...
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 Distribution: only memory accesses in different partitions are checked against each other. The loop vectorizer will add its own checks for the vectorizable distributed loops 3. Loop Fusion:...
2019 Sep 09
3
Vectorizing multiple exit loops
I've recently mentioned in a few places that I'm interested in enhancing the loop vectorizer to handle multiple exit loops, and have been asked to share plans.  This email is intended to a) share my current thinking and b) help spark discussion among interested parties.  I do need to warn that my near term plans for this have been delayed; I got pulled into an internal project instea...
2011 May 22
1
[LLVMdev] Fwd: No SSE instructions
....h> >> #include <stdlib.h> >> >> int v1[10000]; >> >> int main() >> { >> int i; >> >> for (i = 0; i < 10000; i++) { >> v1[i] = i; >> } >> >> > This loop is not really vectorizable, even if LLVM had an auto-vectorizer. > You need the same operation (floating-point or integer) applied to > contiguous elements in a vector. An example of a vectorizable loop body > would be "v1[i] = v1[i] * v1[i]" Then, you could use SSE (or any other > vector instruc...
2015 Jan 12
8
[LLVMdev] RFC: Loop distribution/Partial vectorization
Hi, We'd like to propose new Loop Distribution pass. The main motivation is to allow partial vectorization of loops. One such example is the main loop of 456.hmmer in SpecINT_2006. The current version of the patch improves hmmer by 24% on ARM64 and 18% on X86. The goal of the pass is to distribute a loop that can't be vectorized because of memory dependence cycles. The pass splits the part...
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 i...
2002 Oct 07
0
Why are big data.frames slow? What can I do to get it fas ter?
...] > Sent: Monday, October 07, 2002 7:09 AM > To: Uwe Ligges > Cc: r-help at stat.math.ethz.ch > Subject: Re: [R] Why are big data.frames slow? What can I do to get it > faster? > > > First I want to say "thank you" to everybody who replied. > I understand that vectorized operations instead of the loop > are faster. > I also made sure not to use factors. > > Since the loop runs 100times in my example, the loop should > only take the > time of the vectorized operation mutliplied by 100. > But the loop takes about 10 minutes, the vectorized...
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 ----- > > From: "Hal Finkel" <hfinkel at anl.gov> > > > To: "Chandler Carruth" <chandlerc at google.com> > > > Cc: llvmdev at cs.uiuc.edu > > &g...
2005 Apr 27
1
RE: [R] when can we expect Prof Tierney's compiled R?
...; r-help@stat.math.ethz.ch > >> Subject: Re: [R] when can we expect Prof Tierney's compiled R? > >> > >> On Wed, 20 Apr 2005, Peter Dalgaard wrote: > >> > >>> Luke Tierney <luke@stat.uiowa.edu> writes: > >>> > >>>> Vectorized operations in R are also as fast as compiled > C (because > >>>> that is what they are :-)). A compiler such as the one > >> I'm working > >>>> on will be able to make most difference for > >> non-vectorizable or not > >>>>...