Stay organized with collections
Save and categorize content based on your preferences.
Figure 1. Performance pane
The Performance pane displays GPU performance for different rendering events.
There are three components in this pane:
Toolbar: contains functional buttons for customizing the Performance Table
or kicking off an experiment.
Performance Table: Performance tab's main tabular view. Each row
represents a rendering event, and each column represents a GPU metric (GPU
time or GPU counter). In this way, a specific numerical cell represents the
specific GPU metric's performance at the specific rendering event.
GPU Counter Detail Graph: displays in detail how a GPU metric fluctuates
during the time when a rendering event happens. The graph only refreshes for
GPU counter metrics but not for GPU time metrics, since the time metric is
self-explaining and doesn't fluctuate with time.
Toolbar
Estimate / Confidence Range button: toggles how the performance number
is shown. Since GPU counter samples are polled at their own pace, its
timeframe may not align perfectly with a rendering event's timeframe. When
they are partially overlapped, there may be multiple interpretations of how
much the counter sample contributes to the rendering event, ranging from
zero contribution to full contribution. Based on the edge cases, we
calculated the Confidence Range; and based on overlapped time's weight,
we calculated the Estimate.
Experiment: opens a dialog for choosing the experiment you'd like to
run. AGI give you options to try out some common optimization practices with
no need of re-compiling your application. When you kick off an experiment,
AGI replays the frame based with the new setting, and update the GPU
performance table accordingly.
Filter Counters: opens a dialog for choosing which metric columns you'd
like to show in the Performance Table.
Presets Bar: composed by an Add New Preset button with following
customized preset buttons. A preset is a pre-defined combination of GPU
metrics. When you click a preset button, the Performance Table shows a
filtered list of the pre-defined metrics. You can also manage presets in the
Add New Preset dialog.
Performance Table
This table links with Profile pane and Command pane. A rendering event has three representation formats in a trace: a row in Performance pane, a slice in Profile pane, and a node in Command pane. To make it easier for browsing, when you select either one of the formats, the other two are highlighted as well. For example, if you are interested in the longest slice in Profile pane, you could select it, and navigate to the highlighted Performance row to look at detailed GPU counter performances for this event.
GPU counter detail graph
The x-axis shows counter samples' timestamps. Note that the time is based on the start time of the very first rendering event, so sometimes you may see negative timestamp in the counter detail graph for the first counter sample, which partially overlaps with the first rendering event.
The y-axis shows counter samples' metric performance value.
The parenthesized number above each bar shows the counter sample's weight, or how much contribution we consider the sample provides towards the rendering event, in the estimated scenario.
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2023-02-01 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2023-02-01 UTC."],[],[],null,["# Performance pane\n\n**Figure 1.**Performance pane\n\nThe **Performance** pane displays GPU performance for different rendering events.\n\nThere are three components in this pane:\n\n- Toolbar: contains functional buttons for customizing the **Performance Table** or kicking off an experiment.\n- **Performance Table** : **Performance** tab's main tabular view. Each row represents a rendering event, and each column represents a GPU metric (GPU time or GPU counter). In this way, a specific numerical cell represents the specific GPU metric's performance at the specific rendering event.\n- **GPU Counter Detail Graph**: displays in detail how a GPU metric fluctuates during the time when a rendering event happens. The graph only refreshes for GPU counter metrics but not for GPU time metrics, since the time metric is self-explaining and doesn't fluctuate with time.\n\nToolbar\n-------\n\n- **Estimate / Confidence Range** button: toggles how the performance number is shown. Since GPU counter samples are polled at their own pace, its timeframe may not align perfectly with a rendering event's timeframe. When they are partially overlapped, there may be multiple interpretations of how much the counter sample contributes to the rendering event, ranging from zero contribution to full contribution. Based on the edge cases, we calculated the **Confidence Range** ; and based on overlapped time's weight, we calculated the **Estimate**.\n- **Experiment**: opens a dialog for choosing the experiment you'd like to run. AGI give you options to try out some common optimization practices with no need of re-compiling your application. When you kick off an experiment, AGI replays the frame based with the new setting, and update the GPU performance table accordingly.\n- **Filter Counters** : opens a dialog for choosing which metric columns you'd like to show in the **Performance Table**.\n- **Presets Bar** : composed by an **Add New Preset** button with following customized preset buttons. A preset is a pre-defined combination of GPU metrics. When you click a preset button, the **Performance Table** shows a filtered list of the pre-defined metrics. You can also manage presets in the **Add New Preset** dialog.\n\nPerformance Table\n-----------------\n\nThis table links with **Profile** pane and **Command** pane. A rendering event has three representation formats in a trace: a row in **Performance** pane, a slice in **Profile** pane, and a node in **Command** pane. To make it easier for browsing, when you select either one of the formats, the other two are highlighted as well. For example, if you are interested in the longest slice in **Profile** pane, you could select it, and navigate to the highlighted **Performance** row to look at detailed GPU counter performances for this event.\n\nGPU counter detail graph\n------------------------\n\n- The x-axis shows counter samples' timestamps. Note that the time is based on the start time of the very first rendering event, so sometimes you may see negative timestamp in the counter detail graph for the first counter sample, which partially overlaps with the first rendering event.\n- The y-axis shows counter samples' metric performance value.\n- The parenthesized number above each bar shows the counter sample's weight, or how much contribution we consider the sample provides towards the rendering event, in the estimated scenario."]]