Displaying 20 results from an estimated 10000 matches similar to: "About Clang llvm PGO"
2015 May 28
3
[LLVMdev] RFC - Improvements to PGO profile support
Hi Diego,
thanks for clarifying the difference between the two formats. I have
noticed the new note in the "Sample Profile Format" section of the Clang
guide clarifying that it is different from the coverage format.
So, my further question is... Am I right in understanding that both formats
can be used for PGO purposes then?
I have tried the following, as in the Clang user guide:
$
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-instr-use=default.profraw test.c -o a.out
2015 May 22
0
[LLVMdev] RFC - Improvements to PGO profile support
On Fri, May 22, 2015 at 11:16 AM, Dario Domizioli
<dario.domizioli at gmail.com> wrote:
> Hi all,
>
> I am a bit confused about the documentation of the format of the profile
> data file.
>
> The Clang user guide here describes it as an ASCII text file:
> http://clang.llvm.org/docs/UsersManual.html#sample-profile-format
>
> Whereas the posts above and the
2015 Jul 17
2
[LLVMdev] LLVM instrumentation
The PGO was my first guess but I can get a lot of information.
At first, I follow the explanation at http://clang.llvm.org/docs/UsersManual.html#profiling-with-instrumentation but instead of llvm-profdata merge, I used llvm-profdata show *.profraw.
Sadly, the information I get is the total number of function, the maximum function count and the maximum internal block count.
Do you know if you
2016 May 25
0
The state of IRPGO (3 remaining work items)
On Tue, May 24, 2016 at 3:41 PM, Vedant Kumar <vsk at apple.com> wrote:
>
> > On May 23, 2016, at 8:56 PM, Xinliang David Li <davidxl at google.com>
> wrote:
> >
> > On Mon, May 23, 2016 at 8:23 PM, Sean Silva <chisophugis at gmail.com>
> wrote:
> > Jake and I have been integrating IRPGO on PS4, and we've identified 3
> remaining work
2016 Mar 12
4
Building with LLVM_PARALLEL_XXX_JOBS
On Fri, Mar 4, 2016 at 11:28 AM, Tilmann Scheller
<tilmann at osg.samsung.com> wrote:
> Hi Sedat,
>
> On 03/03/2016 08:09 AM, Sedat Dilek via llvm-dev wrote:
>>
>> It might be that a CLANG generated with LTO/PGO speeds up the build.
>> Can you confirm this?
>
> Yes, a Clang host compiler built with LTO or PGO is generally faster than an
> -O3 build.
>
2016 May 24
6
The state of IRPGO (3 remaining work items)
> On May 23, 2016, at 8:56 PM, Xinliang David Li <davidxl at google.com> wrote:
>
> On Mon, May 23, 2016 at 8:23 PM, Sean Silva <chisophugis at gmail.com> wrote:
> Jake and I have been integrating IRPGO on PS4, and we've identified 3 remaining work items.
>
> Sean, thanks for the write up. It matches very well with what we think as well.
+ 1
> - Driver
2016 Jun 01
4
The state of IRPGO (3 remaining work items)
> On May 24, 2016, at 5:21 PM, Sean Silva <chisophugis at gmail.com> wrote:
>
>
>
> On Tue, May 24, 2016 at 3:41 PM, Vedant Kumar <vsk at apple.com <mailto:vsk at apple.com>> wrote:
>
> > On May 23, 2016, at 8:56 PM, Xinliang David Li <davidxl at google.com <mailto:davidxl at google.com>> wrote:
> >
> > On Mon, May 23, 2016 at
2016 May 25
2
The state of IRPGO (3 remaining work items)
It sounds to me we are likely to converge on the following:
1) Making IR/llvm based PGO the default;
2) Enhance -fcoverage-mapping such that it automatically turns on FE based
instrumentation
3) if -fcoverage-mapping is used together with -fprofile-instr-generate,
-fcoverage-mapping serves as a switch to turn on FE based instrumetnation
All the above are transparent to users.
The following are
2015 May 22
2
[LLVMdev] RFC - Improvements to PGO profile support
Hi all,
I am a bit confused about the documentation of the format of the profile
data file.
The Clang user guide here describes it as an ASCII text file:
http://clang.llvm.org/docs/UsersManual.html#sample-profile-format
Whereas the posts above and the referenced link describe it as a stream of
bytes containing LEB128s:
http://www.llvm.org/docs/CoverageMappingFormat.html
>From experimenting
2020 Oct 01
3
How to get the loop hotness data in a suite ?
Hi everybody,
I'm trying to get loop hotness data across a suite (e.g. the llvm
test-suite). Ideally,
this would be a list that for each loop would list how many times it was
entered and what
was its iteration count (at least the latter). The closest thing I could
come up with is:
- clang -fprofile-instr-generate (without opts) to get a .profraw
- Get the .profdata
- Give that back to clang
2019 Jan 13
2
Problem using BlockFrequencyInfo's getBlockProfileCount
Hey,
I am trying to use the BlockFrequencyInfoWrapperPass to obtain hotness
information in my LLVM pass. Attached is a minimal example of code which
creates a SIGSEGV. The pass calls
AU.addRequired<BlockFrequencyInfoWrapperPass>(); in
getAnalysisUsage(..). The problem exists with changed and unchanged IR.
The binary is instrumented like this: clang input.bc -fprofile-generate
-o
2016 May 24
0
The state of IRPGO (3 remaining work items)
On Mon, May 23, 2016 at 8:23 PM, Sean Silva <chisophugis at gmail.com> wrote:
> Jake and I have been integrating IRPGO on PS4, and we've identified 3
> remaining work items.
>
Sean, thanks for the write up. It matches very well with what we think as
well.
>
>
> - Driver changes
>
> We'd like to make IRPGO the default on PS4. We also think that it would be
2018 Mar 09
2
llvm-cov: Combined report for multiple executables
Hi! I am trying to get a combined coverage report from multiple
executables. Looking at earlier discussions [1, 2], it looks like this
is supposed to work. I am having some difficulty getting this to work
as I would expect it to work, however. Following is a simple case to
explain:
////////// shared.h
#include <string>
void Print1(const std::string& msg);
void Print2(const
2016 May 24
5
The state of IRPGO (3 remaining work items)
Jake and I have been integrating IRPGO on PS4, and we've identified 3
remaining work items.
- Driver changes
We'd like to make IRPGO the default on PS4. We also think that it would be
beneficial to make IRPGO the default PGO on all platforms (coverage would
continue to use FE instr as it does currently, of course). In previous
conversations (e.g. http://reviews.llvm.org/D15829) it has
2018 Feb 06
2
Current PGO status
Hello David, thanks for detailed response!
Do you have any tests that you use to measure the PGO effectiveness? I
have tested clang version 6.0 with the same sample that Jie Chen used in
2016 and actually both frontend-based PGO and IR-based make code run
slower, see the average time:
clang++ -O3: 3.15 secĀ
clang++ -O3 and -fprofile-instr-use: 3.160 sec
clang++ -O3 and -fprofile-use: 3.180 sec
2015 Feb 10
3
[LLVMdev] Coverage mapping issue: Malformed profile data
Hi all!
It seems I came across on issue with coverage mapping
(http://www.llvm.org/docs/CoverageMappingFormat.html)
check on:
llvm revision: r228136
clang Last Changed Rev: 228121
build: Debug+Asserts
OS: ubuntu 14.04
Here is simple snippets
test1.c: NOT OK
==================
#include <stdio.h>
static int foo() { return 42; }
int main() {
return 0;
}
==================
cp src/test1.c
2016 Mar 09
3
PGO question
Hi,
I have a question regarding PGO.
I collected profile data with the instrumentation build
(-fprofile-instr-generate) and provided for PGO optimization in the second
build (with -fprofile-instr-use=xxx.profdata). This works fine.
Then I tried to provide the profile data to opt using the option
-pgo-instr-use, but this causes an error with the message: "Not an IR level
instrumentation
2018 Feb 07
2
Current PGO status
David, could you please clarify on which code did you gain 10%
improvement? I have run numerous tests with and w/o this option and it
looks like it has no effect on performance (I am talking of the old 2016
sample to be concrete). Maybe we could investigate it together? Just
tell me where to start?
On 02/07/2018 02:11 AM, Xinliang David Li wrote:
> Victor, thanks for the experiment.
>
>
2016 Jan 15
3
[PGO] Thoughts on adding a key-value store to profile data formats
Hi all,
I'd liked to get your thoughts on possibly adding a generic key-value store
to the profile data formats for 'metadata'. Some potential uses cases:
*I. Profile Features*
The most basic use could be as a central repository for internal bits of
housekeeping information about the profile data. For example, to
differentiate between FE and IR instrumentation: