Explore examples of the performance data gathered with an external collector and imported into an Intel® VTune™ Amplifier project in the CSV format.
Examples for importing interval data:
Examples for importing discrete data:
Examples for Importing Interval Data
Example 1: CSV File with the Performance Counter Timestamp
name,start_tsc.QPC,end_tsc,pid,tid frame1,2,30,, frame1,33,59,, taskType1,3,43,1,1 taskType2,5,33,1,1 taskType1,46,59,1,1 taskType2,45,54,1,1
VTune Amplifier will process data with missing PID and TID as frames. Data with the PID and TID specified will be processed as tasks.
Example 2: CSV File with the System Counter Timestamp
name,start_tsc.UTC,end_tsc,pid,tid Frame1,2013-08-28 01:02:03.0004,2013-08-28 01:02:03.0005,, Task,2013-08-28 01:02:03.0004,2013-08-28 01:02:03.0005,1234,1235
Example 3: CSV File with Interval Data Bound to a Process
name,start_tsc.QPC,end_tsc,pid,tid poll,587837823903,587837823903,6062 read,961264123487437,961264123489641,6062,6062 read,961264123494333,961264123494942,6062,6062 read,961264123517261,961264123518420,6062,6062 poll,961264123522190,961264761068013,6062,6062 read,961264761075744,961264761078562,6062,6062 read,961264761083972,961264761084888,6062,6062 poll,961264761113162,961264761115356,6062,6062
VTune Amplifier processes this data as tasks (TID and PID values are specified) and displays the result in the Tasks and Frames window as follows:
Image may be NSFW.
Clik here to view.
When you analyze a thread activity and performance per hardware event metrics in this sample, you see that most of the application threads were idle during these tasks execution.
Example 4: Command Line Report for Imported Interval Data Bound to a Process
In this example, the hotspots
report shows counters bound to a specific process/thread grouped by tasks:
amplxe-cl -R hotspots -group-by=task -r <path> amplxe: Using result path '<path>' amplxe: Executing actions 50 % Generating a report Task Type CPU Time:Self Task Time:Self Overhead Time:Self Spin Time:Self Thread Counter:victim_counter:Self Thread Counter:victim_counter_x2:Self ------------------ ------------- -------------- ------------------ -------------- --------------------------- --------------------------------- [Outside any task] 0 0 0 0 0 2 ITT Task 0 0.009 0 0 2 6 victim_task 0 0.000 0 0 0 0 amplxe: Executing actions 100 % done
Example 5: Interval Data Not Bound to a Particular Process
name,start_tsc.QPC,end_tsc,pid,tid one,3264639089043,3264641632738,, one,3264635198786,3264712364569,, two,3265157481653,3265244163253,,
VTune Amplifier processes this data as frames (there are no TID and PID values specified) and displays the result as follows:
Image may be NSFW.
Clik here to view.
With the VTune Amplifier, you can easily correlate the frame data in the Timeline pane and grid view. You see that frame 4 took longer time to process than subsequent frames 5 and 6 due to the poll_idle()
call.
Example 6: Command Line Report for Imported Interval Data Not Bound to a Process
In this example, the hotspots
report shows counters not bound to a specific thread/process grouped by frame domain:
amplxe-cl -R hotspots -group-by=frame-domain -r <path> amplxe: Using result path `<path>' amplxe: Executing actions 50 % Generating a report Frame Domain Frame Time:Self Counter:global_counter:Self Counter:global_counter_x2:Self ------------ --------------- --------------------------- ----------------------------- cuscol_frame 0.126 4 8 cuscol_utc_frame 0.126 4 8 amplxe: Executing actions 100 % done
Example 1: CSV File with the Performance Counter Timestamp
tsc.QPC,MyCounter1.COUNT,MyCounter2.INST,pid,tid 2,1,3,1,1 5,2,5,1,1 10,3,3,1,1 23,10,7,1,1
Example 2: CSV File with the System Counter Timestamp
tsc.UTC,MyCounter1.COUNT,MyCounter2.COUNT,pid,tid 2013-08-28 01:02:03.0004,1234,,1234,1235 2013-08-28 01:02:03.0005,1234,,1234,1235 2013-08-28 01:02:03.0006,,1000234,,
Example 3: CSV File with Discrete Data Not Bound to a Particular Process
tsc.TSC,global_inst_val1.INST,global_counterWIV.COUNT,pid,tid 78912463824135,3,6,, 78916553573577,6,9,, 78919519641325,3,12,, 78922574591880,6,18,, 78925599513489,3,21,,
VTune Amplifier processes this data and displays the result as follows:
Image may be NSFW.
Clik here to view.
Discrete cumulative counter values, both thread-specific and global (not thread-specific), are provided in the grid view and in the Timeline pane in yellow. Instantaneous counter values, thread-specific and global, are displayed in blue in the Timeline pane only.
Note
To view global counter values in the grid, make sure to select a generic (not thread specific) grouping level like Frame Domain/Frame/Function/Call Stack.
Example 4: Command Line Report for Imported Discrete Data
This example provides the hw-events
report with external discrete data (counters) integrated into a VTune Amplifier hardware event-based sampling analysis result cl_result.amplxe
:
amplxe-cl -R hw-events -group-by=process -r <path> amplxe: Using result path '<path>' amplxe: Executing actions 50 % Generating a report Process Counter:victim_counter:Self Counter:victim_counter_x2:Self --------------- --------------------------- ------------------------------ itt_and_csv.exe 2 4 amplxe: Executing actions 100 % done