| .. | .. |
|---|
| 90 | 90 | |
|---|
| 91 | 91 | -c:: |
|---|
| 92 | 92 | --compute:: |
|---|
| 93 | | - Differential computation selection - delta, ratio, wdiff, delta-abs |
|---|
| 94 | | - (default is delta-abs). Default can be changed using diff.compute |
|---|
| 95 | | - config option. See COMPARISON METHODS section for more info. |
|---|
| 93 | + Differential computation selection - delta, ratio, wdiff, cycles, |
|---|
| 94 | + delta-abs (default is delta-abs). Default can be changed using |
|---|
| 95 | + diff.compute config option. See COMPARISON METHODS section for |
|---|
| 96 | + more info. |
|---|
| 97 | + |
|---|
| 98 | +--cycles-hist:: |
|---|
| 99 | + Report a histogram and the standard deviation for cycles data. |
|---|
| 100 | + It can help us to judge if the reported cycles data is noisy or |
|---|
| 101 | + not. This option should be used with '-c cycles'. |
|---|
| 96 | 102 | |
|---|
| 97 | 103 | -p:: |
|---|
| 98 | 104 | --period:: |
|---|
| .. | .. |
|---|
| 117 | 123 | "relative" means it's relative to filtered entries only so that the |
|---|
| 118 | 124 | sum of shown entries will be always 100%. "absolute" means it retains |
|---|
| 119 | 125 | the original value before and after the filter is applied. |
|---|
| 126 | + |
|---|
| 127 | +--time:: |
|---|
| 128 | + Analyze samples within given time window. It supports time |
|---|
| 129 | + percent with multiple time ranges. Time string is 'a%/n,b%/m,...' |
|---|
| 130 | + or 'a%-b%,c%-%d,...'. |
|---|
| 131 | + |
|---|
| 132 | + For example: |
|---|
| 133 | + |
|---|
| 134 | + Select the second 10% time slice to diff: |
|---|
| 135 | + |
|---|
| 136 | + perf diff --time 10%/2 |
|---|
| 137 | + |
|---|
| 138 | + Select from 0% to 10% time slice to diff: |
|---|
| 139 | + |
|---|
| 140 | + perf diff --time 0%-10% |
|---|
| 141 | + |
|---|
| 142 | + Select the first and the second 10% time slices to diff: |
|---|
| 143 | + |
|---|
| 144 | + perf diff --time 10%/1,10%/2 |
|---|
| 145 | + |
|---|
| 146 | + Select from 0% to 10% and 30% to 40% slices to diff: |
|---|
| 147 | + |
|---|
| 148 | + perf diff --time 0%-10%,30%-40% |
|---|
| 149 | + |
|---|
| 150 | + It also supports analyzing samples within a given time window |
|---|
| 151 | + <start>,<stop>. Times have the format seconds.nanoseconds. If 'start' |
|---|
| 152 | + is not given (i.e. time string is ',x.y') then analysis starts at |
|---|
| 153 | + the beginning of the file. If stop time is not given (i.e. time |
|---|
| 154 | + string is 'x.y,') then analysis goes to the end of the file. |
|---|
| 155 | + Multiple ranges can be separated by spaces, which requires the argument |
|---|
| 156 | + to be quoted e.g. --time "1234.567,1234.789 1235," |
|---|
| 157 | + Time string is'a1.b1,c1.d1:a2.b2,c2.d2'. Use ':' to separate timestamps |
|---|
| 158 | + for different perf.data files. |
|---|
| 159 | + |
|---|
| 160 | + For example, we get the timestamp information from 'perf script'. |
|---|
| 161 | + |
|---|
| 162 | + perf script -i perf.data.old |
|---|
| 163 | + mgen 13940 [000] 3946.361400: ... |
|---|
| 164 | + |
|---|
| 165 | + perf script -i perf.data |
|---|
| 166 | + mgen 13940 [000] 3971.150589 ... |
|---|
| 167 | + |
|---|
| 168 | + perf diff --time 3946.361400,:3971.150589, |
|---|
| 169 | + |
|---|
| 170 | + It analyzes the perf.data.old from the timestamp 3946.361400 to |
|---|
| 171 | + the end of perf.data.old and analyzes the perf.data from the |
|---|
| 172 | + timestamp 3971.150589 to the end of perf.data. |
|---|
| 173 | + |
|---|
| 174 | +--cpu:: Only diff samples for the list of CPUs provided. Multiple CPUs can |
|---|
| 175 | + be provided as a comma-separated list with no space: 0,1. Ranges of |
|---|
| 176 | + CPUs are specified with -: 0-2. Default is to report samples on all |
|---|
| 177 | + CPUs. |
|---|
| 178 | + |
|---|
| 179 | +--pid=:: |
|---|
| 180 | + Only diff samples for given process ID (comma separated list). |
|---|
| 181 | + |
|---|
| 182 | +--tid=:: |
|---|
| 183 | + Only diff samples for given thread ID (comma separated list). |
|---|
| 184 | + |
|---|
| 185 | +--stream:: |
|---|
| 186 | + Enable hot streams comparison. Stream can be a callchain which is |
|---|
| 187 | + aggregated by the branch records from samples. |
|---|
| 120 | 188 | |
|---|
| 121 | 189 | COMPARISON |
|---|
| 122 | 190 | ---------- |
|---|
| .. | .. |
|---|
| 222 | 290 | - WEIGHT-A being the weight of the data file |
|---|
| 223 | 291 | - WEIGHT-B being the weight of the baseline data file |
|---|
| 224 | 292 | |
|---|
| 293 | +cycles |
|---|
| 294 | +~~~~~~ |
|---|
| 295 | +If specified the '[Program Block Range] Cycles Diff' column is displayed. |
|---|
| 296 | +It displays the cycles difference of same program basic block amongst |
|---|
| 297 | +two perf.data. The program basic block is the code between two branches. |
|---|
| 298 | + |
|---|
| 299 | +'[Program Block Range]' indicates the range of a program basic block. |
|---|
| 300 | +Source line is reported if it can be found otherwise uses symbol+offset |
|---|
| 301 | +instead. |
|---|
| 302 | + |
|---|
| 225 | 303 | SEE ALSO |
|---|
| 226 | 304 | -------- |
|---|
| 227 | 305 | linkperf:perf-record[1], linkperf:perf-report[1] |
|---|