search for: autofdo

Displaying 20 results from an estimated 39 matches for "autofdo".

2015 Oct 09
3
LLVM AutoFDO status
With recent bug fixes and performance tunings, AutoFDO at llvm has reached a usable state. To evaluate performance, we used O3/-fprofile-use/-fprofile-sample-use respectively to optimize clang itself, and measure its speed. clang built with -fprofile-use is ~20% faster than clang built with O3 clang built with -fprofile-sample-use is ~10% faster than...
2020 Aug 07
4
[RFC] Context-sensitive Sample PGO with Pseudo-Instrumentation
Hi All, Our team at Facebook is building a new context-sensitive Sample PGO as an alternative to the existing AutoFDO. We’d like to share our motivation, propose a new design, and reveal preliminary results on benchmarks. We will refer to the proposed design as CSSPGO in this RFC. The new CSSPGO leverages simultaneous LBR and stack sampling to construct a full context-sensitive profile. It doesn’t rely on previou...
2020 Aug 07
2
[RFC] Context-sensitive Sample PGO with Pseudo-Instrumentation
...n Wenlei, Thanks for the interesting proposal! please see my replies inline below. On Fri, Aug 7, 2020 at 11:28 AM Wenlei He <wenlei at fb.com<mailto:wenlei at fb.com>> wrote: Hi All, Our team at Facebook is building a new context-sensitive Sample PGO as an alternative to the existing AutoFDO. We’d like to share our motivation, propose a new design, and reveal preliminary results on benchmarks. We will refer to the proposed design as CSSPGO in this RFC. The new CSSPGO leverages simultaneous LBR and stack sampling to construct a full context-sensitive profile. Can you share more detai...
2014 May 12
3
[LLVMdev] Questions about LLVM PGO and autoFDO
Hi, all Recently I'm trying to use LLVM PGO and autoFDO. However I have some problems in the process. LLVM source code is updated on April 9th. Operating system is SUSE x86_64 1. Problems in instrumentation based PGO: clang -O2 -fprofile-instr-generate test.c -o a.out ./a.out (then default.profraw is generated) clang -O2 -fprofile-inst...
2020 Aug 08
5
[RFC] Context-sensitive Sample PGO with Pseudo-Instrumentation
...n Wenlei, Thanks for the interesting proposal! please see my replies inline below. On Fri, Aug 7, 2020 at 11:28 AM Wenlei He <wenlei at fb.com<mailto:wenlei at fb.com>> wrote: Hi All, Our team at Facebook is building a new context-sensitive Sample PGO as an alternative to the existing AutoFDO. We’d like to share our motivation, propose a new design, and reveal preliminary results on benchmarks. We will refer to the proposed design as CSSPGO in this RFC. The new CSSPGO leverages simultaneous LBR and stack sampling to construct a full context-sensitive profile. Can you share more detai...
2016 Aug 12
3
AutoFDO sample profiles v. SelectInst,
I am looking for advice on a problem observed with -fprofile-sample-use for samples built with the AutoFDO tool I took the "hmmer" benchmark out of SPEC2006 It is initially compiled clnag++ -o hmmer -O3 -std=gnu89 -DSPEC_CPU -DNDEBUG -fno-strict-aliasing -w -g *.c This baseline binary runs in about 164.2 seconds as reported by "perf stat" We build a sample file from this progr...
2020 Nov 19
0
[RFC] Control Flow Sensitive AutoFDO (FS-AFDO)
...ing proposal. We've also observed profile quality degradation from CFG destructive pass like loop rotate, and I can see how this proposal would help improve quality of profile that drives later optimization passes in the pipeline. I have a few questions. * How does this affect today's AutoFDO? Specifically, can users upgrade compiler with FS-AutoFDO support but without refreshing their profile? I think it's important to make new improvement like this as opt-in, so other users of AutoFDO can choose if and when they want to make the switch from AutoFDO to FS-AutoFDO. With the proposed...
2020 Aug 08
3
[RFC] Context-sensitive Sample PGO with Pseudo-Instrumentation
...n Wenlei, Thanks for the interesting proposal! please see my replies inline below. On Fri, Aug 7, 2020 at 11:28 AM Wenlei He <wenlei at fb.com<mailto:wenlei at fb.com>> wrote: Hi All, Our team at Facebook is building a new context-sensitive Sample PGO as an alternative to the existing AutoFDO. We’d like to share our motivation, propose a new design, and reveal preliminary results on benchmarks. We will refer to the proposed design as CSSPGO in this RFC. The new CSSPGO leverages simultaneous LBR and stack sampling to construct a full context-sensitive profile. Can you share more detai...
2020 Aug 08
2
[RFC] Context-sensitive Sample PGO with Pseudo-Instrumentation
...for the interesting proposal! please see my replies inline > below. > > > > On Fri, Aug 7, 2020 at 11:28 AM Wenlei He <wenlei at fb.com> wrote: > > Hi All, > > Our team at Facebook is building a new context-sensitive Sample PGO as an > alternative to the existing AutoFDO. We’d like to share our motivation, > propose a new design, and reveal preliminary results on benchmarks. We will > refer to the proposed design as CSSPGO in this RFC. > > > > The new CSSPGO leverages simultaneous LBR and stack sampling to construct > a full context-sensitive p...
2020 Aug 08
2
[RFC] Context-sensitive Sample PGO with Pseudo-Instrumentation
...n Wenlei, Thanks for the interesting proposal! please see my replies inline below. On Fri, Aug 7, 2020 at 11:28 AM Wenlei He <wenlei at fb.com<mailto:wenlei at fb.com>> wrote: Hi All, Our team at Facebook is building a new context-sensitive Sample PGO as an alternative to the existing AutoFDO. We’d like to share our motivation, propose a new design, and reveal preliminary results on benchmarks. We will refer to the proposed design as CSSPGO in this RFC. The new CSSPGO leverages simultaneous LBR and stack sampling to construct a full context-sensitive profile. Can you share more detai...
2020 Aug 08
2
[RFC] Context-sensitive Sample PGO with Pseudo-Instrumentation
...n Wenlei, Thanks for the interesting proposal! please see my replies inline below. On Fri, Aug 7, 2020 at 11:28 AM Wenlei He <wenlei at fb.com<mailto:wenlei at fb.com>> wrote: Hi All, Our team at Facebook is building a new context-sensitive Sample PGO as an alternative to the existing AutoFDO. We’d like to share our motivation, propose a new design, and reveal preliminary results on benchmarks. We will refer to the proposed design as CSSPGO in this RFC. The new CSSPGO leverages simultaneous LBR and stack sampling to construct a full context-sensitive profile. Can you share more detai...
2016 Aug 17
5
AutoFDO sample profiles v. SelectInst,
On Fri, Aug 12, 2016 at 12:15 PM, Xinliang David Li via llvm-dev < llvm-dev at lists.llvm.org> wrote: > +dehao. > > There are two potential problems: > > 1) the branch gets eliminated in the binary that is being profiled, so > there is no profile data > This seems like a fundamental problem for PGO. Maybe it is also responsible for this bug:
2020 Nov 17
3
[RFC] Control Flow Sensitive AutoFDO (FS-AFDO)
Hi all, Here I include an RFC for control flow sensitive AutoFDO (FS-AFDO). This is a joint work with David Li. Questions and feedback are welcome. Thanks, Rong ============= [RFC] Control Flow Sensitive AutoFDO (FS-AFDO) 1. Motivation AFDO profile is derived from PMU samples from running an earlier build binary. PMU samples are indexed by the IP addresses...
2016 Mar 23
3
Using LLVM from Autoconf
I'm writing a C++ program that uses LLVM, and trying to build it with autotools. Thanks to Diego Novillo, there is an M4 macro that detects llvm-config: https://github.com/google/autofdo/blob/master/m4/ax_llvm.m4 How do I use it? Given that I've written a basic configure.ac that can compile a basic C++ program, how do I modify it to make use of the macro? And should the macro be copied into the project directory as a separate file or pasted into configure.ac? I tried a Google...
2017 Jun 09
3
Showing hotness in LLVM optimization remarks using AutoFDO sampling profile data?
Hello! (+cc Adam Nemet, since he presented on optimization remarks at LLVM Dev Mtg 2016) I have a large C++ program, which I am compiling using a sampling profile generated via perf and AutoFDO. I'd like to use this profile in order to show the hotness of each code path that is displayed in the new optimization remarks viewer tool ( https://www.youtube.com/watch?v=qq0q1hfzidg). It seems, however, that the '-fdiagnostics-show-hotness' option emits a warning when used with '...
2016 Mar 23
0
Using LLVM from Autoconf
Jack's correct about moving this to autoconf at gnu.org. However, you can start by cutting and pasting the configure.ac bits from the same github repo I pointed you to earlier today. The actual commit that brought those changes may be easier to use as a template. https://github.com/google/autofdo/pull/30/commits/0029f4be825f851b9d99bcd19dcb34fd59f1775e On Wed, Mar 23, 2016 at 4:35 PM, Russell Wallace via llvm-dev <llvm-dev at lists.llvm.org> wrote: > I'm writing a C++ program that uses LLVM, and trying to build it with > autotools. Thanks to Diego Novillo, there is an M4 ma...
2014 Oct 27
2
[LLVMdev] Recent changes in -gmlt break sample profiling
...relay my memory of that discussion, but you might need to track it down or involve some of the other people who participated in it. Honestly, this thread is probably not the best place to rehash the entire design of this feature... > 1) what is -gmlt option designed for? debugging, profiling, autofdo. Do we > expect more use cases for -gmlt? > It was designed for all users of debug information that merely need location information rather than variable, type, or other debug information. We expect these to at least include any and everything that is primarily symbolizing backtraces and ana...
2014 Jul 16
5
[LLVMdev] RFC - A tool to convert profiles from external profilers
A few weeks ago, I announced the availability of a conversion tool that converts Linux Perf sample profiles to LLVM's sample profiler ( https://github.com/google/autofdo). I have now ported this tool to the LLVM tree, so it can be made available as part of LLVM. I've got a working version, but I still need to massage the code to use LLVM's own libraries (logging, flags, etc) and adapt it to LLVM's coding guidelines. I expect to have an initial patch r...
2016 Mar 23
0
Building a program with LLVM on Unix
There are several m4 macros that let you write autoconf detection for llvm. I recently needed to implement one. Have a look here: https://github.com/google/autofdo/blob/master/m4/ax_llvm.m4 Diego. On Wed, Mar 23, 2016 at 12:48 PM, Russell Wallace via llvm-dev <llvm-dev at lists.llvm.org> wrote: > Building LLVM itself involves Cmake, but what's the best way to build a C++ > program that needs to link with the LLVM libraries? > > If you...
2013 Jun 12
2
[LLVMdev] RFC - Profile Guided Optimization in LLVM
> > After the basic profile-based transformations are working, I would like to > add new sources of profile. Mainly, I am thinking of implementing Auto > FDO. > For those who are not familiar with what autoFDO is -- Auto FDO is originally called Sample Based FDO. Its main author is Dehao Chen @google, and Robert Hundt is the one of the main pushers of technology in Google. The latest incarnation of this technology uses LBR events available on Nehalem and above. http://www.computer.org/csdl/trans/tc/2013/...