similar to: [LLVMdev] Indirect call site profiling

Displaying 20 results from an estimated 20000 matches similar to: "[LLVMdev] Indirect call site profiling"

2014 Nov 03
2
[LLVMdev] Indirect call site profiling
> On 10/24/2014 05:26 PM, betulb at codeaurora.org wrote: >> Hi All, >> >> We've been working on enhancing LLVM's instrumentation based profiling >> by >> adding indirect call target profiling support. Our goal is to add >> instrumentation around indirect call sites, so that we may track the >> frequently taken target addresses and their call
2014 Oct 26
2
[LLVMdev] Indirect call site profiling
> On 10/24/14, 8:26 PM, betulb at codeaurora.org wrote: >> Hi All, >> >> We've been working on enhancing LLVM's instrumentation based profiling >> by >> adding indirect call target profiling support. Our goal is to add >> instrumentation around indirect call sites, so that we may track the >> frequently taken target addresses and their call
2015 May 13
2
[LLVMdev] IC profiling infrastructure
> Xinliang David Li <davidxl at google.com> writes: >>> From: <betulb at codeaurora.org> >>> Date: Tue, Apr 7, 2015 at 12:44 PM >>> Subject: [LLVMdev] IC profiling infrastructure >>> To: llvmdev at cs.uiuc.edu >>> >>> >>> >>> Hi All, >>> >>> We had sent out an RFC in October on indirect call
2015 May 21
5
[LLVMdev] IC profiling infrastructure
Hi Betul, I've finally gotten around to going over this in detail - sorry for the delay, and thanks for working on this. I think that the general approach is a good one, and that this will end up working well. I have a couple of points on a high level, and I'll also send some review for the patches you've sent out. - The raw profile format does not need to be backwards compatible,
2015 Apr 29
4
[LLVMdev] IC profiling infrastructure
> From: <betulb at codeaurora.org> > Date: Tue, Apr 7, 2015 at 12:44 PM > Subject: [LLVMdev] IC profiling infrastructure > To: llvmdev at cs.uiuc.edu > > > > Hi All, > > We had sent out an RFC in October on indirect call target profiling. The > proposal was about profiling target addresses seen at indirect call sites. > Using the profile data we're
2015 Jun 16
2
[LLVMdev] IC profiling infrastructure
"Betul Buyukkurt" <betulb at codeaurora.org> writes: >> - We don't need to store the value profiling kind in the data at all. >> The frontend knows which invocations of the intrinsic are for each kind >> implicitly, much like it knows the difference between a counter for an >> "if" and a "for" apart implicitly. Just store one
2015 Jul 03
3
[LLVMdev] IC profiling infrastructure
My suggestion: 1. Keep the value kind enum, but remove the reserved kinds 2. In compiler-rt code, assert the kind to be icalltarget and remove the loop 3. Keep the indexed format (as is now) 4. Add assertion in profile use that icalltarget is the only expected kind. Justin, does this sound reasonable? David On Jul 2, 2015 1:10 PM, "Betul Buyukkurt" <betulb at codeaurora.org>
2015 Jun 30
3
[LLVMdev] IC profiling infrastructure
> Xinliang David Li <davidxl at google.com> writes: >> Justin, thanks for the reply. >> I would like to point out that value_kind is actually not really stored in the raw profile data (nor do we intend to do so), other than the minimal information about per value kind NumOfSites info in per-function profile header. Basically the data is organized per value kind instead of
2015 Jun 16
3
[LLVMdev] IC profiling infrastructure
Xinliang David Li <davidxl at google.com> writes: > On Mon, Jun 15, 2015 at 5:35 PM, Justin Bogner <mail at justinbogner.com> wrote: >> "Betul Buyukkurt" <betulb at codeaurora.org> writes: >>>> - We don't need to store the value profiling kind in the data at all. >>>> The frontend knows which invocations of the intrinsic are for
2015 Jun 22
4
[LLVMdev] IC profiling infrastructure
Justin, do you have more concerns on keeping value_kind? If there is still disagreement, can we agree to move on with it for now ? After the initial version of the patches checked in, we can do more serious testings with large apps and revisit this if there are problems discovered. thanks, David On Mon, Jun 15, 2015 at 10:47 PM, Xinliang David Li <davidxl at google.com> wrote:
2015 Apr 17
3
[LLVMdev] RFC: Indirect Call Promotion LLVM Pass
Hi, we've implemented an indirect call promotion llvm pass. The design notes including examples are shown below. This pass complements the indirect call profile infrastructure http://lists.cs.uiuc.edu/pipermail/llvmdev/2015-April/084271.html Your feedback and comments will be highly appreciated. Thanks, Ivan ============================================================================RFC:
2017 Oct 26
2
Profiling data structure
On Wed, Oct 25, 2017 at 09:13:54AM -0700, Xinliang David Li wrote: > On Wed, Oct 25, 2017 at 12:26 AM, Roger Pau Monné via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > > > Hello, > > > > I've been working on implementing some basic functionality in order to > > use the llvm profiling functionality inside of a kernel (the Xen > > hypervisor).
2020 Jan 13
2
Incorrect code generation when using -fprofile-generate on code which contains exception handling (Windows target)
I think this is the same underlying issue as https://bugs.llvm.org/show_bug.cgi?id=40320. CCing Reid, who's had a bunch of thoughts on this in the past. On 1/11/20, 10:25 AM, "llvm-dev on behalf of Chrulski, Christopher M via llvm-dev" <llvm-dev-bounces at lists.llvm.org on behalf of llvm-dev at lists.llvm.org> wrote: Hi, I've run into a bug with the LLVM
2020 Jan 14
2
Incorrect code generation when using -fprofile-generate on code which contains exception handling (Windows target)
I think the simplest, most complete, short term fix, would be to call llvm::colorEHFunclets, and to have the relevant instrumentation passes apply the appropriate funclet bundle when inserting function calls. It's not elegant because it means every simple instrumentation pass that inserts regular function calls (ASan, TSan, MSan, instrprof, etc) needs to be funclet-aware. But, it will work,
2014 Jun 09
2
[LLVMdev] Instrumentation based Profiling
Hello all, I'm wondering as to the status of control flow profiling in llvm. From what I can gather there was an old system (using opt -insert-edge-profiling and the like) which was removed in this commit llvm.org/viewvc/llvm-project?view=revision&revision=191835 . The commit message mentions "modern PGO efforts", but I can't find anything in the source tree or
2019 Mar 30
2
Minimal PGO for ORC JIT
Hi David, Thanks for your reply. I find that I need to add some new types of profile data that are specific to JIT environment like Function Ordering. Function Ordering is similar to dynamic call graph which records the execution of functions at runtime along with the order in which they are called. Eg: Suppose they are 5 functions (F1..F5). F1 calls other functions in the order described
2015 Jun 29
3
[LLVMdev] IC profiling infrastructure
Justin, thanks for the reply. I would like to point out that value_kind is actually not really stored in the raw profile data (nor do we intend to do so), other than the minimal information about per value kind NumOfSites info in per-function profile header. Basically the data is organized per value kind instead of stored intermixed. That is about it. More replies below. On Mon, Jun 29, 2015
2019 Sep 24
3
PGO is ineffective for Rust - but why?
To give a little update here: - I've been further investigating and found an issue [1] with the Cargo build tool that most Rust projects use. This issue prevents all projects using Cargo from properly using PGO because it causes symbol names to be different between the generate and the use phase. With this issue fixed the number of "No profile data available for function" warnings
2019 Sep 12
6
PGO is ineffective for Rust - but why?
Hi everyone, As part of my work for Mozilla's Low Level Tools team I've implemented PGO in the Rust compiler. The feature is available since Rust 1.37 [1]. However, so far we have not seen any actual performance gains from enabling PGO for Rust code. Performance even seems to drop 1-3% with PGO enabled. I wonder why that is and I'm hoping that someone here might have experience
2015 Aug 08
3
RFC: PGO Late instrumentation for LLVM
Instrumentation based Profile Guided Optimization (PGO) is a compiler technique that leverages important program runtime information, such as precise edge counts and frequent value information, to make frequently executed code run faster. It's proven to be one of the most effective ways to improve program performance. An important design point of PGO is to decide where to place the