Go to main content

man pages section 1: User Commands

Exit Print View

Updated: Thursday, June 13, 2019
 
 

llvm-profdata (1)

Name

llvm-profdata - Profile data tool

Synopsis

llvm-profdata command [args...]

Description

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.1/llvm-6.0.1.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)