Familiarize yourself on how to use System Analyzer, a tool in Intel® Graphics Performance Analyzer (Intel® GPA). This central interface records trace logs for Graphics Multiframe Analyzer.
Graphics Multiframe Analyzer provides offline performance analysis† of the task timelines among real hardware engines, software queues for the GPU scheduler, and background thread activities. With this utility, developers can quickly review which GPU engines (rendering, video enhancing, video processing, or video codec) are involved in the target test application. For example, the trace result can reveal whether the graphics from an Intel® hardware codec acceleration are used. Graphics Multiframe Analyzer can also provide a rough idea of performance issues through this timeline review.
This image shows an example of Platform Analyzer data. The top pane shows when graphics-related tasks occur on hardware engines, GPU software queues, and thread timelines. The bottom pane contains the overall time cost for each type task and HW engines usage.
†Platform analyzer is part of Intel GPA, which focuses more on graphics application optimization usage, mainly on Microsoft* DirectX, and Android and Linux OpenGL apps. Check the Intel GPA product page to get the quick overview.
A quick start to capture the trace logs
Follow the normal steps to start analyzing the target application. Windows allows using a hotkey combination to capture the platform analyzer trace logs directly:
- Right-click the GPA monitors system icon, and then select Analyze Application” to lunch the target application.
- Press Shift + Ctrl + T to capture the trace logs
- Once you see a message that indicates the capture is complete (as shown in the figure below), the trace logs have been successfully captured.
Find the pattern: what symptom will the performance issues show in Platform Analyzer?
First of all, you might want to understand a little bit about the VSync and present function calls in Platform Analyzer. VSync indicates a hardware signal right after that system outputs one frame to a display device. The interval between two VSync signals implies the refresh rate of display device. As for the present API, it indicates the operation to copy one frame to another memory destination.
With this background knowledge, you may watch and investigate these symptoms indicated by Platform Analyzer:
- Irregular VSync pattern. (VSync intervals should be consistent otherwise the screen will blink or flash during the test.)
- Long delay (big packet) in GPU engine. (This packet could be the present call. If the packet's size or length in the timeline crosses multiple VSyncs, it can cause display frames to stick.)
- Overloading, which is multiple heavily-stacked packets in software queue, as shown the figure below. (Stacked packets means several tasks are scheduled in the same time. The packet will be dropped or delayed for processing if the GPU cannot handle several tasks in a timely manner. They also cause display frames to stick.)
Intel System Studio includes three components from Intel GPA: System Analyzer, Platform Analyzer, and Graphics Frame Analyzer. System Analyzer provides an interface to record the logs, which is what Platform Analyzer and Frame Analyzer need for offline analysis.
Provides real-time system and app analysis. Includes a central interface to record logs for other Intel GPA analyzers. For more information, see the System Analyzer Controls.
Provides GPU engines and threads with an analysis of activity interactions. It presents the captured log by showing all graphics hardware engine workloads (including decoding, video processing, rendering, and computing) and thread activities in a timeline view. For more information, see Platform Analyzer Controls.
Graphics Frame Analyzer
Provides an offline analysis of single-frame rendering. Reconstruct the frame by replaying APIs for Microsoft DirectX* or OpenGL* that are logged by System Analyzer. For more information, see Graphics Frame Analyzer Controls.