dcpidiff - compare two sets of profiles for a procedure
dcpidiff [global options] procedure-name -set [set options] image-name -set [set options] image-name
- -help
- Print out usage information.
- -version
- Print out the version number.
- -verbose
- Verbose. Print out additional information.
- -source_line
- Print out statistics by source line number. If the image-name of the two sets are the same, then the default is to print out the statistics by basic block. If the image-name is different, then the statistics can only be printed by source line number.
- -compare type
- Specify the kind of information compared. The type is a comma-separated list of the following keywords: cpi, frequency, stalls, static_stalls, dynamic_stalls or all. The default is to compare CPI only.
- -set
- Denote the start of a set of sample files. All samples within a set are combined, and samples across different sets are compared.
- -conf_low
- Compare low, medium, and high-confidence data.
- -conf_high
- Compare only high-confidence data. (Default is to compare medium and high-confidence data).
- -cross_procedure [optimistic | pessimistic | selective]
- Choose what assumption to make when encountering a procedure call boundary while looking for reasons to explain dynamic stalls. A procedure call boundary is either a call made by the procedure being analyzed or the beginning or end of that procedure. With pessimistic, we assume that whatever happens outside the analyzed procedure can cause a dynamic stall inside it. With optimistic, we assume that it cannot. With selective, the assumption is based on standard procedure call convention. (The default is optimistic.)
By default, this command automatically finds all of the relevant profile files. The following options can be used to guide the search for the profile files.
- -db <directory name>
- Search for profile files in the specified profile database directory. The directory name should be the same name as the one specified when dcpid was started. I.e., the named directory should contain a set of epochs. If this option is not specified, the directory name is obtained from the DCPIDB environment variable. If neither this option, nor the DCPIDB environment variable are set, the name of the directory used by the last invocation of dcpid on this machine is used. If none of these methods succeed in finding the appropriate directory, and no explicit set of profile files is provided via the -profiles option, then the command fails.
- -epoch latest
- Search for profile files in the latest epoch. This is the default.
- -epoch latest-k
- Search for profile files in the "k+1"th oldest epoch. For example, search in the third last epoch if "-epoch latest-2" is specified.
- -epoch all
- Search for profile files in all epochs.
- -epoch <name>
- Search for profile files in the named epoch. The epoch name should be the name of a subdirectory corresponding to a single epoch within the profile database directory. Epoch subdirectory names usually take the form YYMMDDHHMM (year-month-day-hours-minutes). For example, an epoch started on December 4, 1996 at 23:34 is named 9612042334. If an epoch is given a symbolic name by creating a symbol link to the actual epoch directory, then the symbolic name can also be used as an argument to the -epoch option.
- -events all
- Search for profile files corresponding to all event types such as cycles, icache misses, branch mispredictions, etc. This is the default.
- -events type(+type)*
- Search for profiles files for the specified event types. For example, search for cycles, icache misses, and data cache misses when the option -events cycles+imiss+dmiss is specified.
- -events all(-type)*
- Search for profile files for all event types except for the specified types. For example, search for all event types except for branch mispredictions when the option -events all-branchmp is specified.
- -label <label>
- Search for profile files with the specified label (see dcpilabel). If no labels are specified on the command line, profile file labels are ignored entirely. If any labels are specified on the command line (this option can be repeated several times), only profile files that have one of the specified labels are used.
- -profiles <file names...> --
- Use just the profile files named by the specified file names. The list of profile file names can be terminated either via --, or by the end of the option list. The command prints an error message and fails if the -profiles option is used in conjunction with any of the earlier automatic profile finding options. (Use either the automatic profile lookup mechanism, or explicitly name the profile file with the -profile option, but not both.)
Dcpidiff compares two sets of profiles for a procedure and prints out various statistics. It can compare the CPI, frequency, and static and dynamic stall cycles. If the images for the two sets of profiles are the same, then it compares them by basic block. If the images differ, then it compares by source line number.For each basic block (or source line) it prints the normalized range (i.e. the difference between the values over the sum of the values, expressed as a percentage), the two values and the ratio of the values. All entries are sorted by the normalized range so that the focus is on the entries that differ the most. The available options for each of the two sets is similar to the options for dcpicalc(1).
- dcpidiff the_proc -set <image-name> -epoch latest -set <image-name> -epoch latest-1
- Use dcpidiff to compare the CPI of procedure the_proc in two different sets of sample files.
- dcpidiff -compare frequency the_proc -set <image-name> -epoch latest -set -xct the_program.xct -tab the_program.tab <image-name> -epoch latest-1
- Use dcpidiff to compare the basic block frequencies in procedure the_proc as estimated by the dcpi tools, against the frequencies computed by the dcpix(1).
dcpi(1), dcpiflow(1), dcpiprof(1), dcpilist(1), dcpidis(1), dcpiscan(1), dcpiepoch(1), dcpiflush(1), dcpicalc(1), dcpilabel(1), dcpi2ps(1), dcpicat(1), dcpiquit(1), dcpitopstalls(1), dcpiwhatcg(1), dcpictl(1), dcpisource(1), dcpicc(1), dcpiversion(1), dcpiuninstall(1), dcpi2pix(1), dcpikdiff(1), dcpix(1), dcpisumxct(1), dcpistats(1), dcpid(1), dcpiformat(4), dcpiloader(5)
For more information, see the DIGITAL Continuous Profiling Infrastructure project home page (http://www.research.digital.com/SRC/dcpi/ from outside DIGITAL).
Jennifer AndersonThis page was generated automatically by mtex software.