Visible to Intel only — GUID: GUID-ACF254E2-60FA-44FC-A2EF-C8692684B778
Visible to Intel only — GUID: GUID-ACF254E2-60FA-44FC-A2EF-C8692684B778
Timeline Report
Like the Timeline window in the Intel® VTune™ Profiler user interface, the Timeline report provides information about a metric which changed over time. This is a tabular report where each row displays the average metric value in each time interval.
For example, this command generates a timeline report that captures the CPU Utilization section highlighted in the Timeline pane below:
vtune -result-dir <result_path> -report timeline -report-knob column-by=CPUTime -report-knob bin-count=5
When you run the command, you see the following information:
vtune: Using result path `C:\VTune\Projects\sample (matrix)\r005hs' vtune: Executing actions 75 % Generating a report timeBin Bin Start Time Bin End Time CPU Time:Self ------- -------------- ------------ ------------- 0 0.000 7.440 621.445s 1 7.440 14.879 620.543s 2 14.879 22.319 675.243s 3 22.319 29.758 573.878s 4 29.758 37.198 404.154s vtune: Executing actions 100 % done
Generate a Timeline Report from an Existing Result
Run this command:
vtune -result-dir <result_path> -report timeline -report-knob column-by=<metric name> [ -report-knob sort-column-by=<metric name> ] [ -report-knob group-by=<grouper name> ] [ -report-knob bin-count=<30 by default> ] [ -report-knob start=<0 by default> ] [ -report-knob end=<end of collection by default> ] [ -report-knob time-format=<seconds|milliseconds|events> ] [ -report-knob object-names=True|False by default ] [ -report-knob query-type=interval|... ]
where:
<metric name> is the metric information you want. For example, CPUTime, OvertimeBandwidth, ContextSwitches, Task, PMUEventCount/PMUEventType etc.
<grouper name> is an optional name given to a grouper. During data collection, every metric on the timeline gets detected within a context. The metric is then attributed to the context. You use this context as the <grouper name> to group metric actions. Some examples of <grouper name> are Thread, UncorePackage, Task etc. Each instance of the <grouper name> generates an output table for that collection of metric actions. For example, if a parallel application runs on eight threads, setting group-by=Thread generates eight timeline reports. To see the overall behavior of the metric over time, do not set <grouper name>.
Example: Timeline Report for CPU Time
This example generates a timeline report for the r000hs result of a Hotspots analysis. The timeline report shows CPU Time utilization over 30 intervals:
vtune.exe -r r000hs -report timeline -report-knob column-by=CPUTime
timeBin Bin Start Time Bin End Time CPU Time:Self ------- -------------- ------------ ------------- 0 0.000 1.240 5.456s 1 1.240 2.480 6.318s 2 2.480 3.720 6.462s 3 3.720 4.960 6.502s 4 4.960 6.200 6.638s 5 6.200 7.440 5.908s 6 7.440 8.679 6.659s 7 8.679 9.919 6.018s 8 9.919 11.159 5.555s 9 11.159 12.399 5.599s 10 12.399 13.639 6.404s 11 13.639 14.879 6.994s 12 14.879 16.119 6.997s 13 16.119 17.359 6.290s 14 17.359 18.599 6.986s 15 18.599 19.839 6.859s 16 19.839 21.079 6.496s 17 21.079 22.319 6.883s 18 22.319 23.558 7.044s 19 23.558 24.798 4.416s 20 24.798 26.038 5.306s 21 26.038 27.278 6.219s 22 27.278 28.518 6.140s 23 28.518 29.758 5.305s 24 29.758 30.998 5.874s 25 30.998 32.238 5.617s 26 32.238 33.478 3.909s 27 33.478 34.718 3.688s 28 34.718 35.958 3.232s 29 35.958 37.198 1.927s
Example: Timeline Report for CPU Time within Time Range
In this example, a timeline report is generated from the r006ue result of a Microarchitecture analysis. The data is collected between the second and fifth seconds. The data collected during these three seconds is presented over 50 intervals of time.
vtune -r r006ue -report timeline -report-knob column-by=CPUTime -report-knob start=20000000000 -report-knob end=50000000000 -report-knob bin-count=50
timeBin Bin Start Time Bin End Time CPU Time:Self ------- -------------- ------------ ------------- 0 2.000 2.060 583.614s 1 2.060 2.120 596.239s 2 2.120 2.180 568.513s 3 2.180 2.240 656.714s 4 2.240 2.300 593.027s 5 2.300 2.360 582.537s 6 2.360 2.420 686.536s 7 2.420 2.480 630.049s 8 2.480 2.540 683.360s 9 2.540 2.600 449.970s 10 2.600 2.660 534.815s 11 2.660 2.720 523.006s 12 2.720 2.780 563.003s 13 2.780 2.840 650.275s 14 2.840 2.900 590.479s 15 2.900 2.960 644.241s 16 2.960 3.020 646.289s 17 3.020 3.080 644.978s 18 3.080 3.140 634.378s 19 3.140 3.200 627.582s 20 3.200 3.260 588.956s 21 3.260 3.320 621.873s 22 3.320 3.380 158.051s 23 3.380 3.440 170.440s 24 3.440 3.500 216.458s 25 3.500 3.560 121.819s 26 3.560 3.620 351.148s 27 3.620 3.680 256.142s 28 3.680 3.740 385.892s 29 3.740 3.800 507.566s 30 3.800 3.860 459.971s 31 3.860 3.920 495.019s 32 3.920 3.980 503.530s 33 3.980 4.040 565.219s 34 4.040 4.100 526.778s 35 4.100 4.160 541.870s 36 4.160 4.220 569.609s 37 4.220 4.280 474.287s 38 4.280 4.340 585.829s 39 4.340 4.400 625.578s 40 4.400 4.460 656.474s 41 4.460 4.520 438.410s 42 4.520 4.580 519.766s 43 4.580 4.640 414.919s 44 4.640 4.700 577.235s 45 4.700 4.760 596.569s 46 4.760 4.820 570.871s 47 4.820 4.880 586.414s 48 4.880 4.940 532.267s 49 4.940 5.000 564.387s
Example: Timeline Report as a CSV File
When you collect a significantly large volume of data, consider exporting the timeline report to a CSV file for easier data management.
In this example, a timeline report generated from the r008hs result (of a Hotspots analysis) is saved as a CSV file (r008hs_timeline.csv). The collected data is split into 1000 intervals of time.
vtune -r r008hs -report timeline -report-knob column-by=CPUTime -report-knob bin-count=1000 -format=csv -csv-delimiter=semicolon -report-output r008hs_timeline.csv
The contents of r008hs_timeline.csv contain:
timeBin;Bin Start Time;Bin End Time;CPU Time:Self 0;2.000;2.060;583.614 1;2.060;2.120;596.239 ...
Example: Timeline Report of PMU Core Events Grouped by Threads
Run this command to generate a timeline report that groups PMU core events by threads and sorts the groups by event counts.
vtune -r <result dir> -report timeline -report-knob group-by=Thread -report-knob sort-column-by=PMUEventCount -report-knob column-by=PMUEventCount/PMUEventType
Example: Timeline Report of PMU Uncore Events Grouped by Packages
Run this command to generate a timeline report that groups PMU uncore events by packages and sorts the groups by uncore event counts.
vtune -r <result dir> -report timeline -report-knob group-by=UncorePackage -report-knob sort-column-by=UncoreEventCount -report-knob column-by=UncoreEventCount/UncoreEventType
Example: Timeline Report of Context Switches per Thread
Run this command to generate a timeline report of context switches per thread, using a time format of millisecond
vtune -r <result dir> -report timeline -report-knob query-type=interval -report-knob group-by=Thread -report-knob sort-column-by=ContextSwitchCount -report-knob column-by=ContextSwitches -report-knob bin-count=1000000000 -report-knob time-format=millisecond
Example: Timeline Report of Tasks per Thread
Run this command to generate a timeline report of tasks per thread and also displays the names of the tasks.
vtune -r <result dir> -report timeline -report-knob query-type=interval -report-knob group-by=Thread -report-knob sort-column-by=TaskTime -report-knob column-by=Task -report-knob object-names=True -report-knob bin-count=1000000000