Displaying 20 results from an estimated 600 matches similar to: "[LLVMdev] How to gather data dependences"
2013 Aug 09
0
[LLVMdev] How to gather data dependences
2013/8/8 Preston Briggs <preston.briggs at gmail.com>
>
> Hi,
>
> The DependenceAnalysis pass isn't reliable yet; it has several errors that
> need to be corrected. These manifest by the analysis claiming there's no
> dependence when one in fact exists.
>
> Your proposed scheme of testing every pair of instructions is
> asymptotically expensive, requiring
2013 Aug 09
2
[LLVMdev] How to gather data dependences
On Fri, Aug 9, 2013 at 1:05 PM, Valmico <valmico88 at gmail.com> wrote:
> I assume that DA is tool capable to give me an list of Dependencies in
code
> or at least a easy way to test instructions without much knowledge about
ZIV SIV,
> and other tests that has to be done find out dependencies?
DA exists to support building a dependence graph.
It checks to see if two instructions
2013 Aug 07
2
[LLVMdev] [Pass] How to gather data dependencies
Hello,
I'm currently trying to develop new LLVM Pass that will generate simple
data dependencies graph. For now I'm trying to get familiar with
DependenceAnalysis.
My general idea is to traverse each function (runOnFunction) top to
bottom Instruction by Instruction, using DA.depends( I, I2, ...) on
every Instructions combination in function to check if they are
dependent on any
2013 Aug 08
0
[LLVMdev] [Pass] How to gather data dependencies
Take a look to this page:
https://sites.google.com/site/parallelizationforllvm/
On Wed, Aug 7, 2013 at 10:52 PM, Valmico <valmico88 at gmail.com> wrote:
> Hello,
>
> I'm currently trying to develop new LLVM Pass that will generate simple
> data dependencies graph. For now I'm trying to get familiar with
> DependenceAnalysis.
> My general idea is to traverse each
2012 Nov 09
1
[LLVMdev] Loop carried dependence analysis?
Hi,
The DependenceAnalysis pass will find loop-carried dependences. However, it
is a conservative analysis and will sometimes suggest there may be more
dependences than actually exist. In your example, I expect the analysis is
confused for some reason and is returning the default confused response.
You could test it using the isConfused() method. Note that the DVEntry::ALL
direction is always
2013 Dec 27
3
[LLVMdev] Using DependenceAnalysis::depends
Hi
I want to analyse the memory dependencies which exist in a loop at an intra
iteration as well as inter iteration (loop carried dependencies). I looked
at the DependenceAnalysis implementation which returns a lot of the
information I require (based on a prior AliasAnalysis pass), however I need
to pass the Src and Dst instructions in program order.
I was wondering how I can collect all the
2015 Jul 29
1
[LLVMdev] Loop Dependence Analysis(getDistance())
Hi,
I am trying to use the DependenceAnalysis pass to get the Distance vector
for the innermost loop. I am in LLVM learing process. I have used the
following code inside my original code to get the distance vector. It is
not giving any syntax error but it is has some logical but and giving
segmentation fault.
void getAnalysisUsage(AnalysisUsage &AU) const {
AU.setPreservesAll();
2013 Dec 27
4
[LLVMdev] Using DependenceAnalysis::depends
Hi Preston,
Thank you for the prompt response.
You can use DependenceAnalysis to get the info you want by expensively
> testing all pairs of memory references.
Isn't all pairs testing incorrect in the sense that a pair may only exist
for a certain path? Consider the following example.
A[i] = 42; // S1
if( condition ) // C1
{
A[i] = 20; // S2
}
B[i] = A[i];
2020 May 22
2
Creating a copy Pass of DependenceAnalysis
Hi,
I want to create a copy of DependenceAnalysis downstream.
At first I tried the HelloWorld tutorial. But then I figured, maybe I
should move on
to create my pass by mimicking some other pass in LLVM.
So, I tried copying DependenceAnalysis itself [1]
Although after a lot of time of trying it compiled, I'm pretty sure I have
done it
completely in the wrong way. What is more, I can't
2020 Jul 06
2
How to get information about data dependencies?
Michael Kruse via llvm-dev <llvm-dev at lists.llvm.org> writes:
> LLVM has multiple dependence analyses, each with its up- and downsides:
>
> * llvm::DependenceAnalysis
> * llvm::LoopAccessAnalysis
Can someone explain the differences between these? As far as I can tell
they essentially do the same thing (though perhaps one is more
precise?). LAA seems to be used by
2019 May 13
3
Delinearization validity checks in DependenceAnalysis
Hi all,
I have been looking at the `DependenceAnalysis` pass in
`llvm/include/llvm/Analysis/DependenceAnalysis.h`.
In order for this analysis to produce accurate dependence vectors for
multi-dimensional arrays in nested loops, it needs to "delinearize" array
element accesses to recover the subscripts in each dimension of the array.
I believe that the current implementation of
2012 Nov 05
0
[LLVMdev] Adding function attributes
Hi Arnaldo,
On 05/11/12 10:02, Arnaldo wrote:
> Hi Duncan, thanks for the quick answer.
>
> Yes I'm sure the runOnModule is being called, and when I dump the functions
> before exiting the method I can see the AlwaysInline attribute.
>
> I'll check InlineAlways.cpp and will reimplement as last resource but I still
> wonder why this is not working.
if you want more
2013 Aug 23
0
[LLVMdev] How to gather data dependences
Hello, thanks to your advices now my pass is on good way (i hope), but i've
faced one problem that i cannot solve by myself:
Running all these passes (-basicaa -mem2reg -simplifycfg -loop-simplify
-loop-rotate -simplifycfg -instcombine -indvars -da) helped a lot, but now
i'm unable to find dependencies that are outside of the loop. f.eg. code
like this returns no dependencies (and no
2019 May 15
3
Delinearization validity checks in DependenceAnalysis
Hi David,
Thank you very much for your response.
I also get correct results for my example (for a 64-bit target) if the
upper bounds are changed to unsigned. The reason is simply because clang
zero-extends `m` for address calculations but sign-extends it for the loop
upper bound. This prevents SCEV from canceling out the 'm' term from the
difference expression that looks like `(-3 +
2008 Aug 20
1
[LLVMdev] Dependence Analysis [was: Flow-Sensitive AA]
On Monday 18 August 2008 17:48, David Greene wrote:
> > Normally, the conversion to SSA form is sufficient. Can you talk
> > about cases where this matters to you?
>
> Mostly it involves tying into our memory dependence analysis which
> annotates things on program points. I need a way to translate back
> to our optimizer data structures.
>
> So it's not
2012 Nov 05
2
[LLVMdev] Adding function attributes
Hi Duncan, thanks for the quick answer.
Yes I'm sure the runOnModule is being called, and when I dump the functions
before exiting the method I can see the AlwaysInline attribute.
I'll check InlineAlways.cpp and will reimplement as last resource but I
still wonder why this is not working.
On Mon, Nov 5, 2012 at 5:03 PM, Duncan Sands <baldrick at free.fr> wrote:
> Hi Arnaldo,
2015 Jan 17
3
[LLVMdev] proof of concept for a loop fusion pass
----- Original Message -----
> From: "Adam Nemet" <anemet at apple.com>
> To: "Ramshankar Ramanarayanan" <Ramshankar.Ramanarayanan at amd.com>
> Cc: llvmdev at cs.uiuc.edu
> Sent: Saturday, January 17, 2015 12:20:55 AM
> Subject: Re: [LLVMdev] proof of concept for a loop fusion pass
>
>
> On Jan 15, 2015, at 4:22 PM, Ramanarayanan,
2019 May 16
2
Delinearization validity checks in DependenceAnalysis
Hello
Under the proviso that it's been a while since I looked into any of these things...
On 05/15, Bardia Mahjour via llvm-dev wrote:
> I also get correct results for my example (for a 64-bit target) if the upper
> bounds are changed to unsigned. The reason is simply because clang zero-extends
> `m` for address calculations but sign-extends it for the loop upper bound. This
>
2020 Jul 07
3
How to get information about data dependencies?
Michael Kruse via llvm-dev <llvm-dev at lists.llvm.org> writes:
> AFAIK they are independent developments. LoopAccessAnalysis was
> extracted out of the LoopVectorizer in 2015, and first developed in
> 2013 (https://github.com/llvm/llvm-project/commit/d517976758c8674bdcd4c74457f7a83f20e432c5)
>
> DependenceAnalysis was a from-scratch implementation from 2012
>
2008 Aug 20
0
[LLVMdev] Dependence Analysis [was: Flow-Sensitive AA]
On Aug 20, 2008, at 8:56 AM, David Greene wrote:
> What I really need is a dependence analysis interface. I need to know
> about loop-carried dependencies and that sort of things, whether two
> memory
> operations reference the same data, distance information, etc.. As
> far as I
> can tell, there's no infrastructure for this in LLVM.
Right, this is something we've