search for: profdata

Displaying 20 results from an estimated 190 matches for "profdata".

2016 Jan 15
3
[PGO] Thoughts on adding a key-value store to profile data formats
...rentiate between FE and IR instrumentation: llvm.instrumentation_source: "IR" A key-value store would make it simple to add new bits of information and help keep everything human-readable for the text-based test formats. This could potentially also help with error checking at the llvm-profdata level if the Reader classes exposed it. *II. Profile Context* Basic (lightweight) information about the profile could be automatically gathered at profile time. The idea would be to automatically label profiles with contextual information so that the age/origin of a profile could be inspected usi...
2016 Jan 15
2
[PGO] Thoughts on adding a key-value store to profile data formats
...41 AM, Xinliang David Li <davidxl at google.com> wrote: > Tagging profile data with such information is generally useful. My > thoughts are > > 1) such information is probably not needed to be stored in raw format > profile data -- so no runtime changes are needed -- only llvm-profdata > and indexed format need to be enhanced to support this. > 2) A more general way is just add an option: > --embed_label=<customized_label>, where the label is a string can be > key/value pairs encoded in user's favorite format. The format of the > key-value pairs are not s...
2015 Dec 18
3
InstrProf backward compatibility
Hi all, I am working on adding PGO to LDC (LLVM D Compiler). The current implementation 1) uses LLVM's InstrProf pass to generate an instrumented executable 2) links to compiler-rt/lib/profile for the runtime functionality to write a raw profile data file 3) uses llvm-profdata to merge profile data and convert from profraw to profdata format 4) uses llvm::IndexedInstrProfReader to read-in the profdata file for the 2nd PGO compile pass This all works well with LLVM 3.7. While testing this with LLVM trunk, I run into a version compatibility problem between different versi...
2015 Feb 10
3
[LLVMdev] Coverage mapping issue: Malformed profile data
...: 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 src/test.c; rm -fr default.profraw test.profdata ; clang -c -o obj/test.o src/test.c -I -g -O0 -fprofile-instr-generate -fcoverage-mapping; clang -o bin/test obj/test.o -I -g -O0 -fprofile-instr-generate -fcoverage-mapping; ./bin/test ; llvm-profdata merge -o test.profdata default.profraw; llvm-cov show ./bin/test -instr-profile=test.profdata er...
2005 Aug 26
2
profiles, profdata & homes
Hello, Due the trees, I can't see the forest. I understand the concept of home directories on the file server becoming a share for the user on the smb-client computer. I have a vague idea of "profiles", but I'm lost at "profdata". How does that last one fit in? Where can I read more about it? (profdata is common keyword on the search engines) Is there a document that describes the logon proces? (less detailed that the source code of samba? ;-) Cheers Geert Stappers -------------- next part -------------- A non-te...
2017 Jul 18
3
PGO, zlib and 'default.profraw'
We are trying to get PGO working for our embedded out-of-tree target, but the utility 'llvm-profdata' does not like the data we are giving it. Because this is not a hosted environment, we have to off-chip the profiling data ourselves, and although the data looks okay, 'llvm-profdata' reports the following error: llvm-profdata show -all-functions -counts -detailed-summary -text -stat...
2017 Jul 18
4
PGO, zlib and 'default.profraw'
...check zlib::isAvailable and give an error like "profile uses zlib compression but the profile reader was built without zlib support" or so in this case. Xinliang David Li via llvm-dev <llvm-dev at lists.llvm.org> writes: > The __llvm_prf_names section is compressed but your llvm-profdata tool is > probably not built with zlib enabled. > > To disable compression, use option -mllvm -enable-name-compression=false > in your instrumentation build. > > David > > On Tue, Jul 18, 2017 at 7:05 AM, ORiordan, Martin via llvm-dev < > llvm-dev at lists.llvm.org&gt...
2015 Sep 04
2
RFC: Reducing Instr PGO size overhead
...previous format, but the changes there are isolated (also expected to be removed in the future). > > My primary concern is that if the function name are not kept at all stages, > then it becomes difficult to analyze the profile data in a standalone way. > Many times, I have used `llvm-profdata show -all-functions foo.profdata` on > the resulting profile data and then imported that data into Mathematica for > analysis. This is certainly a very valid use case. >My understanding of your proposal is that `llvm-profdata show > -all-functions foo.profdata` will not show the actua...
2015 May 28
3
[LLVMdev] RFC - Improvements to PGO profile support
...erage 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: $ clang++ -O2 -fprofile-instr-generate code.cc -o code $ LLVM_PROFILE_FILE="code-%p.profraw" ./code $ llvm-profdata merge -output=code.profdata code-*.profraw $ clang++ -O2 -fprofile-instr-use=code.profdata code.cc -o code This produces a PGOptimized executable which performs differently (in fact, better!) than a normal O2 build, so I think the "code.profdata" file produced by the commands above is va...
2014 Sep 12
2
[LLVMdev] UBSan detects misaligned memory accesses in llvm-profdata and llvm-cov
Hi! UBSan bootstrap bot fails with error report on 5 llvm-cov and llvm-profdata lit-tests: http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-bootstrap/builds/4526/steps/check-llvm%20ubsan/logs/stdio Also see http://llvm.org/bugs/show_bug.cgi?id=20815. The error reports look vaild: in general it's incorrect to load uint64_t, or even structures like "RawHeader&q...
2009 Sep 17
5
"this" variables being overridden?
...from the profiled program to the dtrace space, and set a "this-dataP" variable to point to the local copy, after a while some of the fields of the local structure are overridden with junk values. In particular, consider the following code: pid$target::foo:entry { this->dataP = (ProfData*)copyin(arg2, sizeof(ProfData)); } /* various of other foo:entry clauses with various predicates. * None of them is doing a copyin operation. */ [snip] pid$target::foo:entry /disabled[0]==0 && arg1 != 0/ { this->ablock = arg0; this->time = this->dataP->execTime;...
2014 Oct 24
3
[LLVMdev] Adding sample profile support to llvm-profdata?
...at add writing capabilities for sample profiles in both text and binary formats. Soon, I'll add a third format (to make it interoperable with GCC). I would like to add some profile maintenance utilities as well: merging, dumping and converting. It seems like the best place would be tools/llvm-profdata. But that means that I need to have a way of distinguishing sample from instrumented profiles. For the binary formats, it's easy to have the tool check the magic bits at the start, but for the text format it is not easy to tell whether we're dealing with a sample profile vs an instrumented...
2017 Jul 18
2
PGO, zlib and 'default.profraw'
set LLVM_ENABLE_ZLIB=ON with cmake invocation. zlib should be installed and zlib.h header file needs to be in the header search path. Is your llvm-profdata tool built together with clang? David On Tue, Jul 18, 2017 at 1:04 PM, Martin J. O'Riordan via llvm-dev < llvm-dev at lists.llvm.org> wrote: > How can I build the profile reader with ZLIB support enabled? I configure > and build all the tools together with 'clang', so I...
2015 Sep 05
4
RFC: Reducing Instr PGO size overhead
...e removed in the future). >> >> > >> > My primary concern is that if the function name are not kept at all >> > stages, >> > then it becomes difficult to analyze the profile data in a standalone >> > way. >> > Many times, I have used `llvm-profdata show -all-functions foo.profdata` >> > on >> > the resulting profile data and then imported that data into Mathematica >> > for >> > analysis. >> >> This is certainly a very valid use case. >> >> >My understanding of your proposal is th...
2017 Jul 25
2
PGO, zlib and 'default.profraw'
...David, When I use CMake to configure, ‘zlib’ and its header are detected - I build on CentOS 6.5 or CentOS 7. Since I run CMake from the command-line, I tried added ‘-DLLVM_ENABLE_ZLIB=0’ and ‘-DLLVM_ENABLE_ZLIB=1’ (using ‘-DLLVM_ENABLE_ZLIB=ON’ does not seem to work). Both ‘clang’ and ‘llvm-profdata’ (and all other tools and utilities) are configured and built together, in any event, they are both built with ‘zlib’ enabled or ‘zlib’ disabled. On Windows with VS2015 there is no ‘zlib’. But I think that there is something different causing the problem, possibly in the linking. When prof...
2017 Jun 30
2
llvm-profdata determinism
I haven't tested it, but it looks to me like llvm-profdata merge (well, InstrProfWriter specifically) would not have deterministic output. Certainly the textual output iterates over FunctionData which is a StringMap of SmallDenseMaps, neither of which has deterministic iteration. The binary writing looks like it'd have similar issues - looping throug...
2015 Oct 08
5
RFC: Reducing Instr PGO size overhead
...unstripped binary size > 3. maximal reduction of raw profile data size > 4. maximal reduction of indexed profile data size > > Cons: > 1. -fcoverage-mapping use case is not handled -- the size problem > still exist > 2. profile dump with llvm-profdata no longer have function names > associated -- user needs to use postprocessing tool to get the functionality > 3. function filtering with partial function name is not supported > 4. Requires incompatible format change > > > Solution-2: (http://reviews.llvm.org/D127...
2009 Jul 03
0
confused about directory permissions for profdata
...saw that something had gone in and fixed all the SIDs. Maybe I'm crazy, and maybe I am imagining things. But what I am stuck on at the moment is some sort of permissions problem with user profiles. Perhaps someone can set me straight. I have the split profile structure (profiles and profdata) as mentioned in ch 5 of "Samba By Example". The files live on a NAS box, and are exported via NFS. Root squashing is turned on. Smb.conf rexports these to client machines. I'm sure this is probably making my life harder, but we just don't have the disk space on the se...
2015 Sep 08
2
RFC: Reducing Instr PGO size overhead
...LVM's coverage testing, on the other hand, take a hybrid approach: It emits the coverage map as rodata, but does not pass it to the profile dumper. I think it is better to emit covmap as a side data not attached to target binary. > > Thus, as we require that the binary be passed to llvm-profdata, there is no > fundamental reason that the memory image of the program, or the raw data > extracted from the program, must have any size overhead besides the raw > values of the counters themselves and any text size increase for > incrementing them. If we are willing to impose this requ...
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