Displaying 20 results from an estimated 734 matches for "interchanging".
2020 Oct 01
3
A 4x slower initialization loop in LLVM vs GCC and MSVC
...ugs.llvm.org/show_bug.cgi?id=47705 <https://bugs.llvm.org/show_bug.cgi?id=47705> to keep track of the issue.
>
> While the code for the initialization is not ideal, it appears the main issue causing the slowdown is the fact that GCC interchanges the main loops, but LLVM does not. After interchanging, the memory access patterns are completely different (and it also probably slightly defeats the purpose of the benchmark).
>
> There’s also an issue with SROA which splits a nice single consecutive llvm.memcpy into 3 separate ones. With SROA disabled there’s another ~2x speedup (on top of ma...
2013 May 20
2
[LLVMdev] Polly issue
Hi,
When I test "matmul" in the polly directory, I get the following
performance data:
//===============================
--> 12. Compare the runtime of the executables
time ./matmul.normalopt.exe
0:23.53 real, 23.48 user, 0.00 sys
time ./matmul.polly.interchanged.exe
0:22.86 real, 22.82 user, 0.01 sys
time ./matmul.polly.interchanged+tiled.exe
0:22.87 real, 22.83 user, 0.00 sys
2017 Nov 18
2
Is llvm capable of doing loop interchange optimization?
Hello,
I've been playing around with the really simple example of not cache
friendly loop like this:
#define N 100
void foo(int** __restrict__ a,
int** __restrict__ b)
{
for (int i = 0; i < N; ++i)
for (int j = 0; j < N; ++j)
a[j][i] += b[j][i];
}
link to compiler explorer:
2004 Nov 23
4
Quick Questions - IVR=Auto Attendant?
Are IVR and "Auto Attendant" interchangeable terms? They both do the "Press
1 for" thing. Sales is asking me how to word it and I've always used both
terms interchangeably.
2017 Jan 13
2
unsigned int and FLAC__uint32 are used interchangeably
unsigned int and FLAC__uint32 are used interchangeably, leading to
warnings with platforms (e.g. djgpp) where int32_t is long:
bitreader.c: In function `FLAC__bitreader_read_rice_signed':
bitreader.c:721: warning: passing arg 2 of
`FLAC__bitreader_read_unary_unsigned' from incompatible pointer type
bitreader.c: In function `FLAC__bitreader_read_rice_signed_block':
bitreader.c:850:
2017 Jan 14
2
unsigned int and FLAC__uint32 are used interchangeably
On 1/14/17, Erik de Castro Lopo <mle+la at mega-nerd.com> wrote:
> Ozkan Sezer wrote:
>
>> unsigned int and FLAC__uint32 are used interchangeably, leading to
>> warnings with platforms (e.g. djgpp) where int32_t is long:
>
> Is `sizeof int == 4` though?
Yes, obviously it is
> I couldn't image FLAC working correctly
> if it wasn't.
>
> Erik
2016 May 31
2
[GSoC 2016] [Polly] Implementation of tiling, interchanging and unrolling of specific loops based on the algorithm for the analytical modeling
Hi Tobias,
I think that we could split a patch that contains an implementation of
tiling, interchanging and unrolling of specific loops into three
separate patches:
1. The first one adds a class that describes a processor model. It
also adds a new command line parameter that contains all necessary
parameters of a target architecture, which are used to construct
objects of the class.
2. The second o...
2016 Jun 09
2
[Proposal][RFC] Cache aware Loop Cost Analysis
On Wed, Jun 8, 2016 at 10:20 PM, Hal Finkel <hfinkel at anl.gov> wrote:
>
> ------------------------------
>
> *From: *"Vikram TV via llvm-dev" <llvm-dev at lists.llvm.org>
> *To: *"DEV" <llvm-dev at lists.llvm.org>
> *Sent: *Wednesday, June 8, 2016 2:58:17 AM
> *Subject: *[llvm-dev] [Proposal][RFC] Cache aware Loop Cost Analysis
>
2016 Jun 23
2
[Proposal][RFC] Cache aware Loop Cost Analysis
On Thu, Jun 23, 2016 at 9:54 AM, Adam Nemet <anemet at apple.com> wrote:
>
> On Jun 9, 2016, at 9:21 AM, Vikram TV via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>
>
> On Wed, Jun 8, 2016 at 10:20 PM, Hal Finkel <hfinkel at anl.gov> wrote:
>
>>
>> ------------------------------
>>
>> *From: *"Vikram TV via
2016 May 31
0
[GSoC 2016] [Polly] Implementation of tiling, interchanging and unrolling of specific loops based on the algorithm for the analytical modeling
Hi Roman,
On Tue, May 31, 2016 at 9:57 AM, Roman Gareev <gareevroman at gmail.com> wrote:
> Hi Tobias,
>
> I think that we could split a patch that contains an implementation of
> tiling, interchanging and unrolling of specific loops into three
> separate patches:
>
> 1. The first one adds a class that describes a processor model. It
> also adds a new command line parameter that contains all necessary
> parameters of a target architecture, which are used to construct
> objects o...
2016 Jun 23
3
[Proposal][RFC] Cache aware Loop Cost Analysis
...are necessary during cost
computation only.
>
> You could probably describe how you envision this analysis would be used
> with something like Loop Fusion.
>
For Loop Interchange, the cost calculated for each loop can provide a
desired ordering of the loops. Loop interchange can start interchanging the
loops to match the desired order iff interchange legality check passes.
Eg: For matrix multiplication case,
for (i = 0 to 5000)
for (j = 0 to 5000)
for (k = 0 to 5000)
C[i,j] = C[i,j] + A[i,k]* B[k,j]
Here, based on cache line size and the cache pe...
2012 Dec 30
2
[LLVMdev] Cannot interchange "literal" and "identified" structs
With primitive types, I can interchange literal usage and type aliases in
IR:
%mytype = type i32
define void @foo(%mytype* %ptr) {
%t1 = load *%mytype** %ptr
store i32 *%t1*, *i32** %ptr
ret void
}
But for structs, I cannot:
%mytype = type { i32, i32 }
define void @foo(%mytype* %ptr) {
%t1 = load *%mytype** %ptr
store* { i32, i32 }* %t1, *{ i32, i32 }** %ptr
ret void
}
2012 Dec 30
0
[LLVMdev] Cannot interchange "literal" and "identified" structs
Justin,
http://llvm.org/docs/LangRef.html#structure-type
"Identified types can be recursive, can be opaqued, and are never uniqued."
Do you think it would be less descriptive?
"Identified type, aka named llvm::StructType, is never uniqued against
other identified types nor literal types, aka unnamed StructType(s)."
?
See also;
2017 Jan 14
0
unsigned int and FLAC__uint32 are used interchangeably
Ozkan Sezer wrote:
> > Ozkan Sezer wrote:
> >
> >> unsigned int and FLAC__uint32 are used interchangeably, leading to
> >> warnings with platforms (e.g. djgpp) where int32_t is long:
> >
> > Is `sizeof int == 4` though?
>
> Yes, obviously it is
Well I've just pushed a patch that purges the code base of `unsigned`.
Please test and let us know
2008 Sep 10
4
re flecting a line
Suppose x and y are numeric vectors of the same length.
plot(x,y) #scatterplot
lmObj1 <- lm(y~x) # best fit line
abline(lmObj1) # good
lmObj2 <- lm(x~y) #get best fit but with axes interchanged
abline(lmObj2) # not what I want. I want the correct line, drawn on the same
graph, but with
# response and predictor variables interchanged
One way to proceed would be to
2017 Jan 14
4
unsigned int and FLAC__uint32 are used interchangeably
On 1/14/17, Erik de Castro Lopo <mle+la at mega-nerd.com> wrote:
> Ozkan Sezer wrote:
>
>> > Ozkan Sezer wrote:
>> >
>> >> unsigned int and FLAC__uint32 are used interchangeably, leading to
>> >> warnings with platforms (e.g. djgpp) where int32_t is long:
>> >
>> > Is `sizeof int == 4` though?
>>
>> Yes, obviously
2016 Jun 08
5
[Proposal][RFC] Cache aware Loop Cost Analysis
Hi,
This is a proposal about implementing an analysis that calculates loop cost
based on cache data. The primary motivation for implementing this is to
write profitability measures for cache related optimizations like
interchange, fusion, fission, pre-fetching and others.
I have implemented a prototypical version at http://reviews.llvm.org/D21124.
The patch basically creates groups of references
2010 Apr 19
1
What is mclust up to? Different clusters found if x and y interchanged
Hello All...
I gave a task to my students that involved using mclust to look for clusters
in some bivariate data of isotopes vs various mining locations. They
discovered something I didn?t expect; the data (called tur) is appended
below.
p <- qplot(x = dD, y = dCu65, data = tur, color = mine)
print(p) # simple bivariate plot of the data; looks fine
mod1 <- Mclust(tur[,2:3])
mod1$G
mod2
2015 Oct 07
0
Are pointers to FLAC__int32 and int interchangeable?
lvqcl wrote:
> Is it Ok to pass FLAC__int32* in a function that expects int* ?
Well FLAC__int32 is just a 32 bit integer and on all the platforms/
architecures/compilers that FLAC supports FLAC__int32 and int are
the same.
As for pointers, all pointers are the same until you try an increment
them. If you have some type, lets call it sometype_t, and a pointer to
types of sometype_t :
2015 Oct 08
1
Are pointers to FLAC__int32 and int interchangeable?
Erik de Castro Lopo wrote:
> Well FLAC__int32 is just a 32 bit integer and on all the platforms/
> architecures/compilers that FLAC supports FLAC__int32 and int are
> the same.
>
> Personally I think the FLAC__xxxx stuff should go, to be replaced with
> C standard int32_t, uint32_t, int16_t etc, at least for internal code.
> I am slowly doing that when I touch code.
>
>