|
| 1 | +--- |
| 2 | +title: Generating a render graph for your application |
| 3 | +weight: 3 |
| 4 | + |
| 5 | +### FIXED, DO NOT MODIFY |
| 6 | +layout: learningpathall |
| 7 | +--- |
| 8 | + |
| 9 | +## Finding GPU-heavy parts of your application |
| 10 | + |
| 11 | +Your first step is to identify which parts of your application are limited by GPU performance. |
| 12 | + |
| 13 | +[Arm Streamline](https://developer.arm.com/Tools%20and%20Software/Streamline%20Performance%20Analyzer) is a good place to start. This is included as another part of Arm Performance Studio. |
| 14 | + |
| 15 | +### Setting up Streamline |
| 16 | + |
| 17 | +Before starting a capture in Streamline, you'll need to ask it to gather GPU data. This is done in the Configure Capture section of the Start view. |
| 18 | + |
| 19 | +If you have an Arm GPU, basic configuration is simple: |
| 20 | +- Deselect the “Use advanced mode” checkbox. |
| 21 | +- Select the “Capture Arm GPU” checkbox. |
| 22 | + |
| 23 | +If you have some other GPU, or want more control over the data collected, you'll need to select GPU counters manually: |
| 24 | +- Select the “Use advanced mode” checkbox. |
| 25 | +- Click the “Select counters” button to open the Counters window. |
| 26 | +- Inside the Counters window, select the counters you wish to analyze. (The Arm website has [details of counters available on Arm GPUs](https://developer.arm.com/documentation#numberOfResults=48&q=Performance%20Counters&sort=relevancy&f:@navigationhierarchiesproducts=[IP%20Products,Graphics%20and%20Multimedia%20Processors,Mali%20GPUs]).) |
| 27 | +- Close the Counters window. |
| 28 | + |
| 29 | +For more details, refer to the [“Get Started with Streamline” tutorial](https://developer.arm.com/documentation/102477/0900/Overview), or [“Starting a capture”](https://developer.arm.com/documentation/101816/0905/Capture-a-Streamline-profile/Starting-a-capture) in the Arm Streamline user guide. |
| 30 | + |
| 31 | +### Capturing GPU data in Streamline |
| 32 | + |
| 33 | +Once you have chosen GPU counters, click the “Start capture” button to begin your capture. |
| 34 | + |
| 35 | +Streamline will produce a graph showing the most GPU-heavy parts of your application (see [“Timeline overview”](https://developer.arm.com/documentation/101816/0905/Analyze-your-capture/Timeline-overview?lang=en) in the Arm Streamline user guide). |
| 36 | + |
| 37 | +## Capturing a render graph |
| 38 | + |
| 39 | +Now that you have identified areas of your application that you want to optimize, you can turn from Streamline to Frame Advisor. |
| 40 | + |
| 41 | +To ask Frame Advisor to capture data relating to the problem areas you have seen: |
| 42 | + |
| 43 | +- Click “Capture new trace” in Frame Advisor's launch screen |
| 44 | +- Connect to your application |
| 45 | +- In the Capture screen, select the number of frames you wish to capture |
| 46 | +- When you've reached the GPU-heavy part of the application run, click “Capture”, then “Analyze” to advance to the Analysis screen |
| 47 | + |
| 48 | +For more details, refer to [the “Frame Advisor” section](../../ams/fa) of “Get started with Arm Performance Studio for mobile”. |
| 49 | + |
| 50 | +## Viewing the render graph |
| 51 | + |
| 52 | +Observe that part of the Frame Advisor window is labelled “Render Graph”. This contains the render graph relating to the frames you asked Frame Advisor to analyze. |
| 53 | + |
| 54 | +For the purpose of this Learning Path, we will assume that you've captured the following render graph: |
| 55 | + |
| 56 | + |
| 57 | + |
| 58 | +In the next section, we will use this graph to illustrate some common application faults. |
0 commit comments