A View is a set of sampled event data and computed performance metrics either displayed in the GUI or in the text report generated by the CLI. Each predefined sampling configuration has a list of associated predefined views.
Following is the list of predefined view configurations for Assess Performance:
| View Configuration | Abbreviation | Description |
|---|---|---|
| Overall Assessment | triage_assess | This view gives the overall picture of performance, including the instructions per clock cycle (IPC), data cache accesses/misses, mis-predicted branches, and misaligned data access. You can use it to find the possible issues for a deeper investigation. |
| IPC assessment | ipc_assess | Find hot spots with low instruction level parallelism, it provides performance indicators – IPC and CPI. |
| Branch assessment | br_assess | You can use this view to find code with a high branch density and poorly predicted branches. |
| Data access assessment | dc_assess | Provides information about data cache (DC) access including DC miss rate and DC miss ratio. |
| Misaligned access assessment | misalign_assess | You can use this to identify regions of code that access misaligned data. |
Following table lists the threading configuration.
| View Configuration | Abbreviation | Description |
|---|---|---|
| IPC assessment | ipc_assess |
Find hot spots with low instruction level parallelism, it provides performance indicators – IPC and CPI. Note: This configuration is available only on
Linux. It is supported only on AMD “Zen3” and AMD “Zen4”
processors.
|
| Time based hotspots | timer | Use this view to find hot spots where the program is spending most of its time. |
| All events | all | Use this view to report all collected events and possible computed metrics. |
The following table lists the predefined view configurations for Investigate Data Access.
| View Configuration | Abbreviation | Description |
|---|---|---|
| IPC assessment | ipc_assess | Find hotspots with low instruction level parallelism. Provides performance indicators – IPC and CPI. |
| Data access assessment | dc_assess | Provides information about data cache (DC) access including DC miss rate and DC miss ratio. |
| Data access report | dc_focus | You can use this view to analyze L1 Data Cache (DC) behavior and compare misses versus refills. |
| Misaligned access assessment | misalign_assess | Identify regions of code that access misaligned data. |
| DTLB report | dtlb_focus | Provides information about L1 DTLB access and miss rates. |
The following table lists the predefined view configurations for Investigate Branch.
| View Configuration | Abbreviation | Description |
|---|---|---|
| Investigate Branching | Branch | You can use this view to find code with a high branch density and poorly predicted branches. |
| IPC assessment | ipc_assess | Find hotspots with low instruction level parallelism, provides performance indicators – IPC and CPI. |
| Branch assessment | br_assess | You can use this view to find code with a high branch density and poorly predicted branches. |
| Taken branch report | taken_focus | You can use this view to find the code with a high number of taken branches. |
| Near return report | return_focus | You can use this view to find code with poorly predicted near returns. |
The following table lists the predefined view configurations for Assess Performance (Extended)
| View Configuration | Abbreviation | Description |
|---|---|---|
| Assess Performance (Extended) | triage_assess_ext | This view gives an overall picture of performance. You can use it to find possible issues for deeper investigation. |
| IPC assessment | ipc_assess | Find hotspots with low instruction level parallelism, provides performance indicators – IPC and CPI. |
| Branch assessment | br_assess | Use this view to find code with a high branch density and poorly predicted branches. |
| Data access assessment | dc_assess | Provides information about data cache (DC) access including DC miss rate and DC miss ratio. |
| Misaligned access assessment | misalign_assess | Identify regions of code that access misaligned data. |
The following table lists the predefined view configurations for Investigate Instruction Access.
| View Configuration | Abbreviation | Description |
|---|---|---|
| IPC assessment | ipc_assess | Find hotspots with low instruction level parallelism. Provides performance indicators – IPC and CPI. |
| Instruction cache report | ic_focus | You can use this view to identify regions of code that miss in the Instruction Cache (IC). |
| ITLB report | itlb_focus | You can use this view to analyze and break out ITLB miss rates by levels L1 and L2. |
The following table lists the predefined view configurations for Investigate CPI.
| View Configuration | Abbreviation | Description |
|---|---|---|
| IPC assessment | ipc_assess | Find hotspots with low instruction level parallelism. Provides performance indicators – IPC and CPI. |
The following table lists the predefined view configurations for Instruction Based Sampling.
| View Configuration | Abbreviation | Description |
|---|---|---|
| IBS fetch overall | ibs_fetch_overall | You can use this view to display an overall summary of the IBS fetch sample data. |
| IBS fetch instruction cache | ibs_fetch_ic | You can use this view to display a summary of IBS attempted fetch Instruction Cache (IC) miss data. |
| IBS fetch instruction TLB | ibs_fetch_itlb | You can use this view to display a summary of IBS attempted fetch ITLB misses. |
| IBS fetch page translations | ibs_fetch_page | You can use this view to display a summary of the IBS L1 ITLB page translations for attempted fetches. |
| IBS All ops | ibs_op_overall | You can use this view to display a summary of all IBS Op samples. |
| IBS MEM all load/ store | ibs_op_ls | You can use this view to display a summary of IBS Op load/store data. |
| IBS MEM data cache | ibs_op_ls_dc | You can use this view to display a summary of DC behavior derived from IBS Op load/store samples. |
| IBS MEM data TLB | ibs_op_ls_dtlb | You can use this view to display a summary of DTLB behavior derived from IBS Op load/store data. |
| IBS MEM locked ops and access by type | ibs_op_ls_memacc | You can use this view to display the uncacheable (UC) memory access, write combining (WC) memory access, and locked load/store operations. |
| IBS MEM translations by page size | ibs_op_ls_page | You can use this view to display a summary of DTLB address translations broken out by page size. |
| IBS MEM forwarding and bank conflicts | ibs_op_ls_expert | You can use this view to display the memory access bank conflicts, data forwarding, and Missed Address Buffer (MAB) hits. |
| IBS BR branch | ibs_op_branch | You can use this view to display the IBS retired branch op measurements including mis-predicted and taken branches. |
| IBS BR return | ibs_op_return | You can use this view to display the IBS return op measurements including the return mis-prediction ratio. |
| IBS NB local/remote access | ibs_op_nb_access | You can use this view to display the number and latency of local and remote accesses. |
| IBS NB cache state | ibs_op_nb_cache | You can use this view to display the cache owned (O) and modified (M) state for NB cache service requests. |
| IBS NB request breakdown | ibs_op_nb_service | You can use this view to display the breakdown of NB access requests. |
| Views in AMD “Zen3” and later processors | ||
| IBS fetch overall | ibs_fetch_overall | You can use this view to display an overall summary of the IBS fetch sample data. |
| IBS fetch instruction cache | ibs_fetch_ic | You can use this view to display a summary of IBS attempted fetch Instruction Cache (IC) miss data (Not supported in Zen3 processors). |
| IBS fetch instruction TLB | ibs_fetch_itlb | You can use this view to display a summary of IBS attempted fetch ITLB misses. |
| IBS fetch page translations | ibs_fetch_page | You can use this view to display a summary of the IBS L1 ITLB page translations for attempted fetches. |
| IBS Branch Analysis | ibs_op_branch | You can use this view to display the IBS retired branch op measurements including mis-predicted and taken branches. |
| IBS Load Op Analysis | ibs_op_ld | You can use this view to analyze the memory load performance issues of an application. |
| IBS Load Op Analysis (ext) | ibs_op_ld_ext | You can use this view to analyze the memory load performance issues of an application. |
| IBS Branch Overview | mibs_op_br_overvie w | You can use this view to analyze the branch metrics. |
| IBS Load Latency Analysis | ibs_op_ld_lat | You can use this view to analyze the memory load latency performance issues of an application. |
| IBS Memory Overview | ibs_op_ls_overview | You can use this view to understand the memory access pattern of an application. |
| IBS Perf Overview | ibs_op_overview | You can use this view to understand the performance characteristics of an application. |
| New Views added in “Zen4” and “Zen5” Processors | ||
| Front End Bottlenecks | ibs_fetch_front_bottle | You can use this view to show the front end bottlenecks. |
| Backend Bound Bottlenecks | ibs_op_backend_bottle | You can use this view to show the backend bound bottlenecks. |
| Bad Speculations | ibs_op_bad_speculation | You can use this to view bad speculations. |
- The AMDuProf GUI uses the ‘View configuration’ name of the predefined configuration mentioned in the above table.
- The abbreviation is used in the CLI generated report file.
- The supported predefined configurations and the sampling events used in them is based on the processor family and model.