Displaying 18 results from an estimated 18 matches for "loopsize".
2012 Apr 03
1
[LLVMdev] Possible typo in LoopUnrollPass.cpp
...uced count, which is not I expected.
Am i correct or i missed something? If i am correct, i am going to fix this.
best regards
ether
ps: the code contains typo
if (TripCount) {
// Reduce unroll count to be modulo of TripCount for partial unrolling
Count = CurrentThreshold / LoopSize;
<--------------------------should use Threshold
while (Count != 0 && TripCount%Count != 0)
Count--;
}
else if (UnrollRuntime) {
// Reduce unroll count to be a lower power-of-two value
while (Count != 0 && Size > CurrentThreshold)...
2009 Dec 06
2
Error in eval(expr, envir, enclos) : object 'N' not found
...Kc=6E-1, Kn=6E-1, p=2E-11, a1=1.2E4, a2=7.5E8, Vm=0 )
tout <- seq(0, num_days, by=interval_size)
state <- c(T = pars$Tini, N = pars$Nini, C = pars$Cini, M = pars$Mini)
out <- lsoda(state, tout, model, pars)
## Finding position at which OF function is reached
final_matrix = out;
loopsize = (num_days / interval_size) + 1
OF_tumor_size = iniT + (OF_prcnt * iniT)
## Sentinel Value to find at which row in the matrix reaches OF_tumor_size
OF_row=-1;
for(i in 1:loopsize) {
if( out[i,2] >= OF_tumor_size) {
OF_row=i;
break;
}
}
if(OF_row != -1) {
##Params setup
OF_in...
2014 Jan 16
3
[LLVMdev] Loop unrolling opportunity in SPEC's libquantum with profile info
...Calculating max register usage:
LV(REG): At #0 Interval # 0
LV(REG): At #1 Interval # 1
LV(REG): At #2 Interval # 2
LV(REG): At #3 Interval # 3
LV(REG): At #5 Interval # 2
LV(REG): At #6 Interval # 2
LV(REG): At #7 Interval # 2
LV(REG): Found max usage: 3
LV(REG): Found invariant usage: 3
LV(REG): LoopSize: 9
LV: Found a vectorizable loop (1) in gates.ll
LV: Unroll Factor is 1
LV: Vectorization is possible but not beneficial.
I poked briefly at the vectorizer code to see if there is anything
that the profile data could've told it, but this loop did not meet the
requirements for unrolling. And e...
2015 Oct 16
2
question about llvm partial unrolling/runtime unrolling
Hi Hal,
I did
opt.exe -S -debug -loop-unroll -unroll-runtime=true -unroll-count=4
csShader.ll
and it prints out:
Args: opt.exe -S -debug -loop-unroll -unroll-runtime=true -unroll-count=4
csShader.ll
Loop Unroll: F[build_cs_5_0] Loop %loop_entry
Loop Size = 82
partially unrolling with count: 1
Thanks,
Frances
On Thu, Oct 15, 2015 at 9:35 PM, Hal Finkel <hfinkel at anl.gov>
2018 Jan 11
0
question about unrolling loops with convergent instructions
...is
// 2nd priority is unroll count set by pragma.
unsigned PragmaCount = UnrollCountPragmaValue(L);
if (PragmaCount > 0) {
UP.Count = PragmaCount;
UP.Runtime = true;
UP.AllowExpensiveTripCount = true;
UP.Force = true;
if (UP.AllowRemainder &&
getUnrolledLoopSize(LoopSize, UP) < PragmaUnrollThreshold)
return true;
}
Because UP.AllowRemainder is false, the unroll count specified by pragma is ignored. Later on, computeUnrollCount calculates an unroll count of 512.
Is this a bug? Essentially, this disables unroll count specified by pragma for any...
2013 Oct 26
2
[LLVMdev] Why is the loop vectorizer not working on my function?
...# 0
LV(REG): At #1 Interval # 1
LV(REG): At #2 Interval # 2
LV(REG): At #3 Interval # 2
LV(REG): At #4 Interval # 3
LV(REG): At #5 Interval # 3
LV(REG): At #6 Interval # 2
LV(REG): At #8 Interval # 1
LV(REG): At #9 Interval # 1
LV(REG): Found max usage: 3
LV(REG): Found invariant usage: 5
LV(REG): LoopSize: 11
LV: Vectorization is possible but not beneficial.
LV: Found a vectorizable loop (1) in saxpy_real.gvn.mod.ll
LV: Unroll Factor is 1
It's not beneficial? I didn't expect that. Do you have a descriptive
explanation why it's not beneficial?
Frank
On 26/10/13 13:03, Arnold wrote:...
2015 Feb 04
2
[LLVMdev] Is this a bug with loop unrolling and TargetTransformInfo ?
Hi,
I ran into this issue recently and wanted to know if it was a bug or expected behavior.
In the R600 backend's TargetTransformInfo implementation, we were setting
UnrollingPreferences::Count = UINT_MAX. This was a mistake as we should have been
setting UnrollingPreferences::MaxCount instead. However, as a result of setting
Count to UINT_MAX, this loop would be unrolled 15 times:
if (b
2013 Oct 26
0
[LLVMdev] Why is the loop vectorizer not working on my function?
...#2 Interval # 2
> LV(REG): At #3 Interval # 2
> LV(REG): At #4 Interval # 3
> LV(REG): At #5 Interval # 3
> LV(REG): At #6 Interval # 2
> LV(REG): At #8 Interval # 1
> LV(REG): At #9 Interval # 1
> LV(REG): Found max usage: 3
> LV(REG): Found invariant usage: 5
> LV(REG): LoopSize: 11
> LV: Vectorization is possible but not beneficial.
> LV: Found a vectorizable loop (1) in saxpy_real.gvn.mod.ll
> LV: Unroll Factor is 1
>
> It's not beneficial? I didn't expect that. Do you have a descriptive
> explanation why it's not beneficial?
It looks like...
2013 Oct 26
2
[LLVMdev] Why is the loop vectorizer not working on my function?
...#3 Interval # 2
>> LV(REG): At #4 Interval # 3
>> LV(REG): At #5 Interval # 3
>> LV(REG): At #6 Interval # 2
>> LV(REG): At #8 Interval # 1
>> LV(REG): At #9 Interval # 1
>> LV(REG): Found max usage: 3
>> LV(REG): Found invariant usage: 5
>> LV(REG): LoopSize: 11
>> LV: Vectorization is possible but not beneficial.
>> LV: Found a vectorizable loop (1) in saxpy_real.gvn.mod.ll
>> LV: Unroll Factor is 1
>>
>> It's not beneficial? I didn't expect that. Do you have a descriptive
>> explanation why it's not ben...
2013 Oct 26
3
[LLVMdev] Why is the loop vectorizer not working on my function?
...>> LV(REG): At #5 Interval # 3
> >>> LV(REG): At #6 Interval # 2
> >>> LV(REG): At #8 Interval # 1
> >>> LV(REG): At #9 Interval # 1
> >>> LV(REG): Found max usage: 3
> >>> LV(REG): Found invariant usage: 5
> >>> LV(REG): LoopSize: 11
> >>> LV: Vectorization is possible but not beneficial.
> >>> LV: Found a vectorizable loop (1) in saxpy_real.gvn.mod.ll
> >>> LV: Unroll Factor is 1
> >>>
> >>> It's not beneficial? I didn't expect that. Do you have a
> &g...
2013 Oct 26
0
[LLVMdev] Why is the loop vectorizer not working on my function?
...(REG): At #4 Interval # 3
>>> LV(REG): At #5 Interval # 3
>>> LV(REG): At #6 Interval # 2
>>> LV(REG): At #8 Interval # 1
>>> LV(REG): At #9 Interval # 1
>>> LV(REG): Found max usage: 3
>>> LV(REG): Found invariant usage: 5
>>> LV(REG): LoopSize: 11
>>> LV: Vectorization is possible but not beneficial.
>>> LV: Found a vectorizable loop (1) in saxpy_real.gvn.mod.ll
>>> LV: Unroll Factor is 1
>>>
>>> It's not beneficial? I didn't expect that. Do you have a descriptive
>>> explana...
2013 Oct 26
0
[LLVMdev] Why is the loop vectorizer not working on my function?
...At #5 Interval # 3
>>>>> LV(REG): At #6 Interval # 2
>>>>> LV(REG): At #8 Interval # 1
>>>>> LV(REG): At #9 Interval # 1
>>>>> LV(REG): Found max usage: 3
>>>>> LV(REG): Found invariant usage: 5
>>>>> LV(REG): LoopSize: 11
>>>>> LV: Vectorization is possible but not beneficial.
>>>>> LV: Found a vectorizable loop (1) in saxpy_real.gvn.mod.ll
>>>>> LV: Unroll Factor is 1
>>>>>
>>>>> It's not beneficial? I didn't expect that. Do you...
2013 Oct 27
3
[LLVMdev] Why is the loop vectorizer not working on my function?
...gt;>>>> LV(REG): At #6 Interval # 2
>>>>>> LV(REG): At #8 Interval # 1
>>>>>> LV(REG): At #9 Interval # 1
>>>>>> LV(REG): Found max usage: 3
>>>>>> LV(REG): Found invariant usage: 5
>>>>>> LV(REG): LoopSize: 11
>>>>>> LV: Vectorization is possible but not beneficial.
>>>>>> LV: Found a vectorizable loop (1) in saxpy_real.gvn.mod.ll
>>>>>> LV: Unroll Factor is 1
>>>>>>
>>>>>> It's not beneficial? I didn't...
2013 Oct 26
0
[LLVMdev] Why is the loop vectorizer not working on my function?
Hi Frank,
Sent from my iPhone
> On Oct 26, 2013, at 10:03 AM, Frank Winter <fwinter at jlab.org> wrote:
>
> My function implements a simple loop:
>
> void bar( int start, int end, float* A, float* B, float* C)
> {
> for (int i=start; i<end;++i)
> A[i] = B[i] * C[i];
> }
>
> This looks pretty much like the standard example. However, I built
2013 Oct 27
0
[LLVMdev] Why is the loop vectorizer not working on my function?
...LV(REG): At #6 Interval # 2
>>>>>>> LV(REG): At #8 Interval # 1
>>>>>>> LV(REG): At #9 Interval # 1
>>>>>>> LV(REG): Found max usage: 3
>>>>>>> LV(REG): Found invariant usage: 5
>>>>>>> LV(REG): LoopSize: 11
>>>>>>> LV: Vectorization is possible but not beneficial.
>>>>>>> LV: Found a vectorizable loop (1) in saxpy_real.gvn.mod.ll
>>>>>>> LV: Unroll Factor is 1
>>>>>>>
>>>>>>> It's not benef...
2013 Oct 26
2
[LLVMdev] Why is the loop vectorizer not working on my function?
My function implements a simple loop:
void bar( int start, int end, float* A, float* B, float* C)
{
for (int i=start; i<end;++i)
A[i] = B[i] * C[i];
}
This looks pretty much like the standard example. However, I built the
function
with the IRBuilder, thus not coming from C and clang. Also I changed
slightly
the function's signature:
define void @bar([8 x i8]* %arg_ptr) {
2016 Oct 06
2
LoopVectorizer -- generating bad and unhandled shufflevector sequence
...erval # 8
LV(REG): At #26 Interval # 7
LV(REG): At #27 Interval # 7
LV(REG): At #28 Interval # 7
LV(REG): At #29 Interval # 7
LV(REG): At #30 Interval # 7
LV(REG): At #31 Interval # 6
LV(REG): At #33 Interval # 5
LV(REG): VF = 2
LV(REG): Found max usage: 2
LV(REG): Found invariant usage: 4
LV(REG): LoopSize: 35
LV: Loop cost is 18
LV: Interleaving to reduce branch cost.
LV: Interleaving is not beneficial.
LV: Found a vectorizable loop (2) in do_vop.bc
LV: Interleaving disabled by the pass manager
LV: Scalarizing: %dec = add nsw i32 %len.0288, -1
LV: Scalarizing: %incdec.ptr = getelementptr inbounds...
2014 Jan 16
11
[LLVMdev] Loop unrolling opportunity in SPEC's libquantum with profile info
I am starting to use the sample profiler to analyze new performance
opportunities. The loop unroller has popped up in several of the
benchmarks I'm running. In particular, libquantum. There is a ~12%
opportunity when the runtime unroller is triggered.
This helps functions like quantum_sigma_x
(http://sourcecodebrowser.com/libquantum/0.2.4/gates_8c_source.html#l00149).
The function accounts