Displaying 20 results from an estimated 1000 matches similar to: "[LLVMdev] Introduction to the Profiling Infrastructure"
2009 Jun 29
7
[LLVMdev] Profiling in LLVM Patch
Hi all,
as proposed in
http://lists.cs.uiuc.edu/pipermail/llvmdev/2009-February/020396.html
I implemented the algorithm presented in [Ball94]. It only instruments
the minimal number of edges necessary for edge profiling.
The main changes introduced by this patch are:
*) a interface compatible rewrite of ProfileInfo
*) a cleanup of ProfileInfoLoader
(some functionality in ProfileInfoLoader
2009 Jul 10
3
[LLVMdev] Path profiling interface proposal
Hello,
I am planning on contributing path profiling to LLVM by the end of
August. I have written a document of what the interface to the path
profiles would look like at that time. If someone has any amendments, I
can incorporate them.
http://www.cs.ualberta.ca/~pejic/PathProfiling.html
Slobodan Pejic
2009 Aug 24
3
[LLVMdev] Request Permission for approve-after-commit for Profiling Infrastructure.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi,
since I'm planing on a whole bunch of changes in the area of the
Profiling Infrastructure I would like to ask humbly if it is possible to
have approve-after-commit permission for the following files:
include/llvm/Analysis/ProfileInfo.h
include/llvm/Analysis/ProfileInfoLoader.h
include/llvm/Analysis/ProfileInfoTypes.h
2009 Jul 01
0
[LLVMdev] Profiling in LLVM Patch
Hi Andreas,
First, thanks again for undertaking this work and submitting it back. There is a
lot of good stuff here and it would be great to see it get back into the tree.
I have a few major high-level comments on the patch. First off, the patch is
quite large and should be broken down into separate incremental changes which
are easier to review and apply. I think the patches should more or less
2009 Jul 10
0
[LLVMdev] Path profiling interface proposal
On Friday 10 July 2009 18:06, Slobodan Pejic wrote:
> Hello,
>
> I am planning on contributing path profiling to LLVM by the end of
> August. I have written a document of what the interface to the path
> profiles would look like at that time. If someone has any amendments, I
> can incorporate them.
>
> http://www.cs.ualberta.ca/~pejic/PathProfiling.html
Slobodan,
This
2009 Aug 08
6
[LLVMdev] Profiling in LLVM Patch Followup 1
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Daniel Dunbar wrote:
> Thanks, applied as r78247. Next? :)
Oh my, first he is lagging and now it's all a hurry :-)
Okay, here comes the next one.
I'm taking a short vacation next week so I will try to prepare 1 or 2 of
the next patches so that you can work on them as you have time.
Greetings, Andi
- --
2009 Jun 18
3
[LLVMdev] Initialising global Array
Hi,
I try to create a array that has a nonzero initialiser:
What i do is, first create the array type.
> const ArrayType *ATy = ArrayType::get(Type::Int32Ty, NumEdges);
Then create some constant values for the initializer.
> std::vector<Constant*> Initializer; Initializer.reserve(NumEdges);
> APInt zero(32,0); Constant* zeroc = ConstantInt::get(zero);
> APInt
2009 Jun 18
0
[LLVMdev] Initialising global Array
Andreas Neustifter wrote:
> Hi,
>
> I try to create a array that has a nonzero initialiser:
>
> What i do is, first create the array type.
>
> > const ArrayType *ATy = ArrayType::get(Type::Int32Ty, NumEdges);
>
> Then create some constant values for the initializer.
>
> > std::vector<Constant*> Initializer; Initializer.reserve(NumEdges);
>
>
2009 Aug 08
0
[LLVMdev] Profiling in LLVM Patch Followup 1
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi!
Andreas Neustifter wrote:
> Daniel Dunbar wrote:
>> Thanks, applied as r78247. Next? :)
>
> Oh my, first he is lagging and now it's all a hurry :-)
>
> Okay, here comes the next one.
>
> I'm taking a short vacation next week so I will try to prepare 1 or 2 of
> the next patches so that you can work on them
2009 Nov 17
4
[LLVMdev] PassManager again...
Hi,
Devang Patel wrote:
> On Tue, Nov 17, 2009 at 9:03 AM, Andreas Neustifter
> <astifter-llvm at gmx.at> wrote:
>
>> Okay, so the ProfileInfoLoader is working, but when I examine the executions more closely I see that the ProfileInfo generated by the ProfileInfoLoader is immediately discarded, when the SelectionDAGISel kicks in the "No Profile Info"-Implementation
2009 Aug 18
3
[LLVMdev] Profiling in LLVM Patch Followup 1
Hi!
Daniel Dunbar wrote:
> Applied as r78477.
>
> I do have a few comments on the patch, below, but I'll wait to see
> where things are going before acting on them. :)
>
> --
>
>> Index: include/llvm/Analysis/ProfileInfo.h
>> ===================================================================
>
>> + // MissingValue - The value that is returned
2009 Aug 08
0
[LLVMdev] Profiling in LLVM Patch Followup 1
Applied as r78477.
I do have a few comments on the patch, below, but I'll wait to see
where things are going before acting on them. :)
--
> Index: include/llvm/Analysis/ProfileInfo.h
> ===================================================================
> + // MissingValue - The value that is returned for execution counts in case
> + // no value is available.
> +
2009 Jul 01
12
[LLVMdev] Profiling in LLVM Patch
Hi Daniel,
Daniel Dunbar wrote:
> Hi Andreas,
>
> First, thanks again for undertaking this work and submitting it back. There is a
> lot of good stuff here and it would be great to see it get back into the tree.
Thanks for taking the time to review this, I know its a huge patch. I still have a few questions on how you would like this patch to be re-factored and split up.
> [...]
2009 May 13
3
[LLVMdev] ModulePass using BreakCriticalEdges
Hi,
I'm writing a ModulePass that needs critical edges split up. I have the
statement
AU.addRequiredID(BreakCriticalEdgesID);
in my getAnalysisUsage() but the pass never gets executed.
I guess I have to request pass execution for each function, but I can't
get behind how to do that, since there is no analysis group for that
kind of transformation.
Thanks, Andi
2009 Nov 20
2
[LLVMdev] PassManager again...
On Fri, Nov 20, 2009 at 6:54 AM, Andreas Neustifter
<astifter-llvm at gmx.at> wrote:
>
> If I use AU.addRequired<ProfileInfo>() in SelectionDAGISel.cpp the
> wrong ProfileInfo is used. It uses the "No ProfileInfo" implementation
> if ProfileInfo but not the one from ProfileInfoLoaderPass. (Which is
> immediately discarded after creation.)
>
You need to
2009 Jul 02
1
[LLVMdev] Profiling in LLVM Patch Followup 1
Hi,
this is the first in a series of patches to cleanup and improve the LLVM Profiling Infrastructure.
First and foremost this patch removes duplicate functionality from ProfileInfoLoader and ProfileInfo:
The ProfileInfoLoader performed not only the loading of the profile information but also some synthesis of block and function execution counts from edge profiling information. Since the
2009 Nov 20
0
[LLVMdev] PassManager again...
Hi.
On 11/17/2009 08:16 PM, Andreas Neustifter wrote:
> Hi,
>
> Devang Patel wrote:
>> On Tue, Nov 17, 2009 at 9:03 AM, Andreas Neustifter
>> <astifter-llvm at gmx.at> wrote:
>>
>>> Okay, so the ProfileInfoLoader is working, but when I examine the executions more closely I see that the ProfileInfo generated by the ProfileInfoLoader is immediately
2009 Jul 11
1
[LLVMdev] Path profiling interface proposal
David Greene wrote:
> On Friday 10 July 2009 18:06, Slobodan Pejic wrote:
>> Hello,
>>
>> I am planning on contributing path profiling to LLVM by the end of
>> August. I have written a document of what the interface to the path
>> profiles would look like at that time. If someone has any amendments, I
>> can incorporate them.
>>
>>
2009 Jul 06
0
[LLVMdev] Profiling in LLVM Patch Followup 4
Hi,
this is the fourth in a series of patches to cleanup and improve the
LLVM Profiling Infrastructure. It depends on the previous patches from
http://lists.cs.uiuc.edu/pipermail/llvmdev/2009-July/023569.html
http://lists.cs.uiuc.edu/pipermail/llvmdev/2009-July/023602.html
http://lists.cs.uiuc.edu/pipermail/llvmdev/2009-July/023642.html
This patch introduces an implementation of the ProfileInfo
2009 Jun 04
1
[LLVMdev] Get Analysis from PassManager
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi,
I try to write a tool that uses the PassManager to load profiling
information for a module like this:
...
ModulePass *LoaderPass = createProfileLoaderPass();
PassMgr.add(LoaderPass);
PassMgr.run(*M);
...
I can verify that the pass was run, but how to I get to the ProfileInfo
implemented by that pass?
I tried
...
ProfileInfo PI =