search for: instrumentation

Displaying 20 results from an estimated 3210 matches for "instrumentation".

2015 Aug 08
2
RFC: PGO Late instrumentation for LLVM
...; information to better understand its effects in isolation (for example, > maybe it would be good to add these passes during -O3 regardless of whether > we are doing PGO). > > -- Sean Silva > > On Fri, Aug 7, 2015 at 4:54 PM, Rong Xu <xur at google.com> wrote: > >> 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 w...
2015 Aug 10
3
RFC: PGO Late instrumentation for LLVM
...lready be "getting these right". Stuff like: class Foo { .... Foo(int bar) : m_bar(bar) {} int getBar() { return m_bar; } ... }; Are the results different for your codebases? Have you tried something like simply not instrumenting the hottest 1% or 0.5% of functions? (maybe restrict the instrumentation skipping to functions of just a single BB with less than, say, 10 instructions). Rong's approach is quite sophisticated; I'm just interested on getting a sanity check against a "naive" approach to see how much the sophisticated approach is buying us. > > >> > &gt...
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 perf...
2019 Jan 21
2
[X-ray] How to check successful instrumentation and generate call trace?
...ools, so I use Clang 7.0.0 to compile and instrument GNU binutils-2.3.1 with the following commands: cd binutils-2.31/ mkdir build cd build/ CC=$local/clang CXX=$local/clang++ CFLAGS=-fxray-instrument CXXFLAGS=-fxray-instrument ../configure --prefix=/home/zhangysh1995/local make Then I extract instrumentation map with llvm-xray extract addr2line and it returns: --- - { id: 1, address: 0x000000000041CD70, function: 0x000000000041CD70, kind: function-enter, always-instrument: false, function-name: '' } - { id: 1, address: 0x000000000041D026, function: 0x000000000041CD70, kind: function-exit, alway...
2011 Nov 14
2
[LLVMdev] Re moving the instrumented instructions at runtime
Hello, I have some questions about removing the instrumented instructions at runtime. Assume I instrument some instructions by using some transformation passes. At runtime, I just need those instrumented instructions at the beginning, and I would like to remove instrumented instructions at runtime to reduce overhead. Does anyone know how to do this by using LLVM? Thanks, Bo -- View
2013 Feb 24
2
[LLVMdev] How to measure the overhead of instrumented code
Hello all, I have developed a instrumented pass which insert some variables between the original variables, as well as insert some code into the original source code. just like: ============= original source code ============= int a[10]; void fun1 () { // some source code here } ========================================= ============= instrumented source code ============= int
2016 Jun 16
10
RFC: Comprehensive Static Instrumentation
Hey LLVM-dev, We propose to build the CSI framework to provide a comprehensive suite of compiler-inserted instrumentation hooks that dynamic-analysis tools can use to observe and investigate program runtime behavior. Traditionally, tools based on compiler instrumentation would each separately modify the compiler to insert their own instrumentation. In contrast, CSI inserts a standard collection of instrumentation ho...
2011 Nov 14
0
[LLVMdev] Re moving the instrumented instructions at runtime
> Assume I instrument some instructions by using some transformation passes. > At runtime, I just need those instrumented instructions at the beginning, > and I would like to remove instrumented instructions at runtime to reduce > overhead. At the beginning of what? You mean at the time of program starup? Then after detecting/collecting whatever you want, you would like to remove
2016 Jun 16
2
RFC: Comprehensive Static Instrumentation
...PM, Mehdi Amini <mehdi.amini at apple.com> wrote: > > On Jun 16, 2016, at 9:01 AM, TB Schardl via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > > Hey LLVM-dev, > > We propose to build the CSI framework to provide a comprehensive suite of > compiler-inserted instrumentation hooks that dynamic-analysis tools can use > to observe and investigate program runtime behavior. Traditionally, tools > based on compiler instrumentation would each separately modify the compiler > to insert their own instrumentation. In contrast, CSI inserts a standard > collection o...
2004 Apr 07
5
[LLVMdev] Automating Diagnostic Instrumentation
Dear List, I have some questions about some passes for LLVM that I'm thinking about but first I need to give a little background ... One of the things I do in my "day job" (large IT system performance analysis) is to figure out where to place diagnostic instrumentation within an application. The instrumentation I'm talking about here is the kind that is inserted into application code to capture things like wall-clock latency, cpu time, number of i/o requests, etc. For accurate diagnosis, it is often necessary to collect that kind of data about every occur...
2016 Dec 19
1
Reining in profile instrumentation
Thanks Vedant, and my apologies for the delay getting back to you - work got "busy". I wasn't aware of the '-fprofile-generate' option, so thanks for point this out. I have tried running it and I can see the instrumentation hooks that it generates - I assume that there is a library I have to implement to support this, can you let me know where the source for this library is? This approach uses the C++ ctor initialisation support which is generally fine. However, in many cases in our embedded target programmers often...
2016 Jun 17
5
RFC: Comprehensive Static Instrumentation
....com> > wrote: > >> >> On Jun 16, 2016, at 9:01 AM, TB Schardl via llvm-dev < >> llvm-dev at lists.llvm.org> wrote: >> >> Hey LLVM-dev, >> >> We propose to build the CSI framework to provide a comprehensive suite of >> compiler-inserted instrumentation hooks that dynamic-analysis tools can use >> to observe and investigate program runtime behavior. Traditionally, tools >> based on compiler instrumentation would each separately modify the compiler >> to insert their own instrumentation. In contrast, CSI inserts a standard >&...
2014 May 29
4
[LLVMdev] Unifying TSan blacklist and no_sanitize_thread
Hi, I consider reducing the usage of blacklist in sanitizer instrumentation passes and doing the necessary work in frontend (Clang) instead. Some of it is already implemented: e.g. Clang will attach an attribute "sanitize_address" to function definition only if this function is not blacklisted. In this case we won't instrument the memory accesses in this fun...
2016 Dec 13
0
Reining in profile instrumentation
...vm-dev at lists.llvm.org> wrote: > > When either ‘-pg’ or ‘-finstrument-functions’ is used, the compiler inserts the appropriate profiling hooks. This happens prior to inlining, so the hooks remain in place. Have you tried compiling with -fprofile-generate? It enables IR-based profiling instrumentation, which has supported pre-inlining since r275588. That should mitigate the issue you're seeing with excessive instrumentation. > Normally this is fine, but with C++ and the heavy use of inline functions and templates, there can be a vast number of trivial functions that are normally optimis...
2004 Apr 07
0
[LLVMdev] Automating Diagnostic Instrumentation
Reid, Adding this kind of instrumentation pass would be very valuable in LLVM. We don't have any such thing at present, and there could be multiple uses for it. Joel Stanley did an MS thesis last year that could complement this kind of pass nicely. Joel's thesis was on dynamic performance instrumentation guided by explicit q...
2016 Mar 22
3
Instrumented BB in PGO
Hello, I have a question regarding PGO instrumented BBs (I use IR-level instrumentation). It seems that instrumented BBs do not match between the two compilations for profile-gen and profile-use for some cases. Here is an example from SPECcpu 2006 lbm (a simple case consisting of just two modules). In the first compilation, we have 5 instrumentation points for the main function as fo...
2016 Jun 16
4
RFC: Comprehensive Static Instrumentation
...> CC'ing the mailing list for the CSI project. > > On Thu, Jun 16, 2016 at 12:01 PM, TB Schardl <neboat at mit.edu> wrote: > >> Hey LLVM-dev, >> >> >> We propose to build the CSI framework to provide a comprehensive suite of >> compiler-inserted instrumentation hooks that dynamic-analysis tools can use >> to observe and investigate program runtime behavior. Traditionally, tools >> based on compiler instrumentation would each separately modify the compiler >> to insert their own instrumentation. In contrast, CSI inserts a standard >&...
2013 Feb 25
0
[LLVMdev] How to measure the overhead of instrumented code
...ated overhead precisely. To > measure the pressure of > instruction cache, I want to replace the instrumented source code as > nop (with length equals the length of > instrumented source code). Is there anyway to instrument nop > explicitly in LLVM? If you know the length of your instrumentation in bytes, you could generate inline assembly code that inserts the correct number of NOP instructions. Alternatively, if your processor has the necessary performance counter registers, you could simply measure the change in cache performance between the instrumented and uninstrumented code. F...
2009 Dec 15
2
Instrumental Variables Regression
Hi there, I hope to build a model Y ~ X1 + X2 + X3 + X4 with X1 has two instrumental variable A and B, and X2 has one instrumental variable A. I have searched the R site and mailling list, and known that the tsls() from sem package and ivreg() from AER package can deal with instrumental variable regression, however, I don't know how to formula the model. Any suggestion will be really
2015 Aug 19
3
RFC: PGO Late instrumentation for LLVM
...here have good knowledge of the code base. What we measure is running time for clang to compile a large preprocessed source file (4.98M lines of .ii file), using different compilation modes. All the numbers reported here are the average running time of 5 runs in seconds. *(1) Performance b/w late instrumentation v.s. not instrumenting single BB functions* We first compare various instrumentation performance. ---------------------------------------------------------------------------- Config wall_time_for_instr ratio_vs_base profile_size (1) base O2 80.386...