llvm-profdata - Profile data tool
llvm-profdata command [args...]
LLVM-PROFDATA(1) LLVM LLVM-PROFDATA(1) NAME llvm-profdata - Profile data tool SYNOPSIS llvm-profdata command [args...] DESCRIPTION The llvm-profdata tool is a small utility for working with profile data files. COMMANDS o merge o show MERGE SYNOPSIS llvm-profdata merge [options] [filename...] DESCRIPTION llvm-profdata merge takes several profile data files generated by PGO instrumentation and merges them together into a single indexed profile data file. By default profile data is merged without modification. This means that the relative importance of each input file is proportional to the num- ber of samples or counts it contains. In general, the input from a longer training run will be interpreted as relatively more important than a shorter run. Depending on the nature of the training runs it may be useful to adjust the weight given to each input file by using the -weighted-input option. OPTIONS -help Print a summary of command line options. -output=output, -o=output Specify the output file name. Output cannot be - as the result- ing indexed profile data can't be written to standard output. -weighted-input=weight,filename Specify an input file name along with a weight. The profile counts of the input file will be scaled (multiplied) by the sup- plied weight, where where weight is a decimal integer >= 1. Input files specified without using this option are assigned a default weight of 1. Examples are shown below. -instr (default) Specify that the input profile is an instrumentation-based pro- file. -sample Specify that the input profile is a sample-based profile. The format of the generated file can be generated in one of three ways: -binary (default) Emit the profile using a binary encoding. For instrumenta- tion-based profile the output format is the indexed binary for- mat. -text Emit the profile in text mode. This option can also be used with both sample-based and instrumentation-based profile. When this option is used the profile will be dumped in the text format that is parsable by the profile reader. -gcc Emit the profile using GCC's gcov format (Not yet supported). EXAMPLES Basic Usage Merge three profiles: llvm-profdata merge foo.profdata bar.profdata baz.profdata -output merged.profdata Weighted Input The input file foo.profdata is especially important, multiply its counts by 10: llvm-profdata merge -weighted-input=10,foo.profdata bar.profdata baz.profdata -output merged.profdata Exactly equivalent to the previous invocation (explicit form; useful for programmatic invocation): llvm-profdata merge -weighted-input=10,foo.profdata -weighted-input=1,bar.profdata -weighted-input=1,baz.profdata -output merged.profdata SHOW SYNOPSIS llvm-profdata show [options] [filename] DESCRIPTION llvm-profdata show takes a profile data file and displays the informa- tion about the profile counters for this file and for any of the speci- fied function(s). If filename is omitted or is -, then llvm-profdata show reads its input from standard input. OPTIONS -all-functions Print details for every function. -counts Print the counter values for the displayed functions. -function=string Print details for a function if the function's name contains the given string. -help Print a summary of command line options. -output=output, -o=output Specify the output file name. If output is - or it isn't speci- fied, then the output is sent to standard output. -instr (default) Specify that the input profile is an instrumentation-based pro- file. -text Instruct the profile dumper to show profile counts in the text format of the instrumentation-based profile data representation. By default, the profile information is dumped in a more human readable form (also in text) with annotations. -sample Specify that the input profile is a sample-based profile. EXIT STATUS llvm-profdata returns 1 if the command is omitted or is invalid, if it cannot read input files, or if there is a mismatch between their data. AUTHOR Maintained by The LLVM Team (http://llvm.org/). COPYRIGHT 2003-2016, LLVM Project ATTRIBUTES See attributes(7) for descriptions of the following attributes: +---------------+---------------------+ |ATTRIBUTE TYPE | ATTRIBUTE VALUE | +---------------+---------------------+ |Availability | developer/llvm/llvm | +---------------+---------------------+ |Stability | Uncommitted | +---------------+---------------------+ NOTES This software was built from source available at https://github.com/oracle/solaris-userland. The original community source was downloaded from https://llvm.org//releases/6.0.0/llvm-6.0.0.src.tar.xz Further information about this software can be found on the open source community website at https://llvm.org/. 3.8 2016-07-10 LLVM-PROFDATA(1)