Skip to content

Commit d90a75c

Browse files
Merge pull request #3426 from anupras-mohapatra-arm/fixes
Tweaks to skills + refactored Arm Performance Studio LP
2 parents 966d0a6 + a94e6af commit d90a75c

14 files changed

Lines changed: 337 additions & 215 deletions

File tree

.github/skills/frontmatter-audit/SKILL.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,14 @@ For a Learning Path directory:
2525
- Public pages should have unique `weight` values within the directory.
2626
- Every page except for `_next-steps.md` must include a description.
2727
- `_index.md` must include `description`.
28-
- Required `_index.md` fields include `title`, `description`, `weight`, `layout`, `minutes_to_complete`, `prerequisites`, `author`, `subjects`, `armips`, `tools_software_languages`, `skilllevels`, and `operatingsystems`.
28+
- Required `_index.md` fields include `title`, `description`, `weight`, `layout`, `minutes_to_complete`, `prerequisites`, `author`, `generate_summary_faq`, `rerun_summary`, `rerun_faqs`, `subjects`, `armips`, `tools_software_languages`, `skilllevels`, and `operatingsystems`.
2929
- `layout` is usually `learningpathall`.
3030
- `title` should be task-led and use an imperative structure: verb + technology/tool + outcome.
3131
- `skilllevels` values are only `Introductory` or `Advanced`.
3232
- `subjects` and `operatingsystems` must match the closed lists in `content/learning-paths/cross-platform/_example-learning-path/write-2-metadata/`.
3333
- `armips` should use Arm IP families such as Neoverse, Cortex-A, or Cortex-M, not specific CPU models or Arm architecture versions.
3434
- `author` can list multiple authors with YAML list syntax.
35+
- `generate_summary_faq`, `rerun_summary`, and `rerun_faqs` values are only `true` and `false`.
3536
- Skip `_next-steps.md` for description updates unless the user explicitly asks how to handle it.
3637

3738
## Install guide checks

.github/skills/writing-style-review/SKILL.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ Use this skill for granular prose, voice, readability, terminology, and style re
1818

1919
## Voice and tone
2020

21-
- Use second person: `you` and `your`.
22-
- Avoid first person: `I` and `we`.
21+
- Use second person: `you` and `your` for Learning Path summaries, Learning Path content, install guide content, answers to FAQs, and metadata descriptions. Avoid first person for these content types.
22+
- Use first person: `I` and `we` for FAQs.
2323
- Use active voice.
2424
- Use present tense for descriptions.
2525
- Use imperative mood for commands.
@@ -40,6 +40,7 @@ Use this skill for granular prose, voice, readability, terminology, and style re
4040
- Use plain English and avoid jargon overload.
4141
- Define acronyms on first use.
4242
- Use parallel structure in lists.
43+
- Avoid starting sentences with "In this Learning Path"/ "In this section"/"On this page" / "In this step".
4344
- Flag sections over 700 words and suggest natural split points.
4445
- Identify paragraphs with sentences averaging over 20 words.
4546
- Note sections that introduce more than two new concepts.
@@ -74,7 +75,7 @@ Use this skill for granular prose, voice, readability, terminology, and style re
7475
- Use `set up` as a verb and `setup` as a noun.
7576
- Use `avoid` instead of `try not to`.
7677
- Use `such as` instead of `like`.
77-
- Use `after` instead of `once`.
78+
- Use `after` or `when` instead of `once`.
7879

7980
## Tone cleanup
8081

@@ -111,7 +112,7 @@ Use this skill for granular prose, voice, readability, terminology, and style re
111112
- Use `arm64` or `aarch64` for CPU architecture based on tool, package, or OS convention.
112113
- Use `ARM64` only when referring to Windows on Arm or Microsoft documentation.
113114
- Capitalize `Learning Path`.
114-
- Use `Azure Cobalt`, `Google Axion`, and `AWS Graviton` as processor names, not VM names.
115+
- Use `Azure Cobalt`, `Google Axion`, and `AWS Graviton` as processor names, not VM names. `Graviton-based instances`, not `Graviton instances`, for example.
115116
- Do not use bold or italics for product names such as LiteRT, XNNPACK, KleidiAI, and SME2 unless they are headings or UI labels.
116117

117118
## Avoid AI-sounding prose

content/learning-paths/mobile-graphics-and-gaming/ams/_index.md

Lines changed: 58 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,77 @@
11
---
2-
title: Get started with Arm Performance Studio
2+
title: Profile an Android application with Arm Performance Studio
33

4-
description: Learn how to use each of the tools supplied with Arm Performance Studio (formerly known as Arm Mobile Studio).
4+
description: Profile a debuggable Android graphics application with Arm Performance Studio and analyze performance with Streamline, Performance Advisor, Frame Advisor, RenderDoc for Arm GPUs, and Mali Offline Compiler.
55

66
minutes_to_complete: 60
77

8-
who_is_this_for: Android application and games developers new to Arm Performance Studio.
8+
who_is_this_for: This is an introductory topic for Android application and games developers new to Arm Performance Studio.
99

1010
learning_objectives:
11-
- Learn the basic features of each component of Arm Performance Studio.
12-
- Get started profiling and optimizing your application.
11+
- Capture a Streamline profile from a debuggable Android application
12+
- Generate and inspect a Performance Advisor report
13+
- Capture and analyze a frame with Frame Advisor and RenderDoc for Arm GPUs
14+
- Use Mali Offline Compiler to estimate shader cost
1315

1416
prerequisites:
1517
- An Android device.
16-
- Arm Performance Studio supports applications built with OpenGL ES versions 2.0 to 3.2, or Vulkan versions 1.0 to 1.2.
18+
- An debuggable build of your application built with OpenGL ES versions 2.0 to 3.2, or Vulkan versions 1.0 to 1.2.
1719
- For OpenGL ES applications, your device must be running Android 10 or later.
1820
- For Vulkan applications, your device must be running Android 9 or later.
19-
- A debuggable build of your application.
2021
- Arm Performance Studio installed. Follow the [Arm Performance Studio install guide](/install-guides/ams/) for instructions.
21-
- Android SDK Platform tools installed. Required for the Android Debug bridge (adb).
22+
- Android SDK Platform tools installed for the Android Debug bridge (adb).
23+
24+
# START generated_summary_faq
25+
generated_summary_faq:
26+
template_version: summary-faq-v3
27+
generated_at: '2026-06-26T16:37:19Z'
28+
generator: ai
29+
ai_assisted: true
30+
ai_review_required: true
31+
model: gpt-5
32+
prompt_template: summary-faq-v3
33+
source_hash: 80078c6f05717cbf24c3b695a82fa15bbe477bd14a290195569dda4efe6599ee
34+
summary_generated_at: '2026-06-26T16:37:19Z'
35+
summary_source_hash: 80078c6f05717cbf24c3b695a82fa15bbe477bd14a290195569dda4efe6599ee
36+
faq_generated_at: '2026-06-26T16:37:19Z'
37+
faq_source_hash: 80078c6f05717cbf24c3b695a82fa15bbe477bd14a290195569dda4efe6599ee
38+
summary: >-
39+
You'll profile an Android graphics application on Arm
40+
Mali-based GPUs using Arm Performance Studio. After preparing a debuggable build, you'll
41+
connect an Android device over adb, explore a provided Streamline sample to understand the
42+
available views, then capture a profile from your own application and generate a Performance
43+
Advisor report with the CLI. You'll also perform frame-level inspection with Frame Advisor
44+
and RenderDoc for Arm GPUs, and use Mali Offline Compiler to estimate shader
45+
cost. By the end, you'll understand how to progress from example data to capturing on-device
46+
profiles and interpreting reports that inform deeper frame and shader analysis.
47+
faqs:
48+
- question: How do I launch Streamline and select my Android device?
49+
answer: >-
50+
Open the Performance Studio Hub and launch Streamline. In the Start view, choose Android
51+
(adb) as the device type and select your device from the list.
52+
- question: What should I check in my app build before profiling with Streamline?
53+
answer: >-
54+
Build a debuggable version and include options that facilitate call stack unwinding by Streamline.
55+
For Unity, enable Development Build in Build settings.
56+
- question: What steps import the example Streamline capture?
57+
answer: >-
58+
In Streamline, select File > Import, choose Import Streamline Sample Captures, then select
59+
the Android example and finish. The sample capture is added so you can open it and explore
60+
the views.
61+
- question: How do I generate a Performance Advisor report from a capture?
62+
answer: >-
63+
Open a terminal, navigate to the capture location, and run streamline-cli with the -pa option
64+
on the .apc file (for example, "Android - GPU Bound Example.apc"). The capture is processed
65+
and a Performance Advisor report is produced.
66+
- question: Do I need Python for Performance Advisor?
67+
answer: >-
68+
Yes. Performance Advisor uses a Python script to connect to your device and requires Python
69+
3.8 or later.
70+
# END generated_summary_faq
2271

2372
author: Ronan Synnott
2473

25-
generate_summary_faq: true
74+
generate_summary_faq: false
2675
rerun_summary: false
2776
rerun_faqs: false
2877

Lines changed: 32 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,53 @@
11
---
22
# User change
3-
title: "What is Arm Performance Studio?"
3+
title: Set up Arm Performance Studio
4+
5+
description: Install and launch Arm Performance Studio, update your PATH, and confirm the profiling tools are available for the Android application workflow.
46

57
weight: 2 # 1 is first, 2 is second, etc.
68

79
# Do not modify these elements
810
layout: "learningpathall"
911
---
10-
[Arm Performance Studio](https://developer.arm.com/Tools%20and%20Software/Arm%20Performance%20Studio) is a performance analysis tool suite for developers to performance test their applications on devices with Mali-based GPUs. It consists of 4 easy-to-use tools that show you how well your application performs either on off-the-shelf Android devices, or Linux targets. The tools help you to identify problems that might slow down performance, overheat the device, or drain the battery.
12+
## What is Arm Performance Studio?
13+
14+
[Arm Performance Studio](https://developer.arm.com/Tools%20and%20Software/Arm%20Performance%20Studio) is a performance analysis tool suite that you can use to performance test applications on devices with Mali-based GPUs.
15+
16+
Performance Studio consists of four tools that show you how well your application performs either on off-the-shelf Android devices, or Linux targets. You can use the tools to identify problems that might slow down performance, overheat the device, or drain the battery.
1117

1218
| Component | Functionality |
1319
|----------|-------------|
14-
| [Streamline](https://developer.arm.com/Tools%20and%20Software/Streamline%20Performance%20Analyzer) with [Performance Advisor](https://developer.arm.com/Tools%20and%20Software/Performance%20Advisor) | Capture a performance profile that shows all the performance counter activity from the device. Generate an easy-to-read performance summary from an annotated Streamline capture, and get actionable advice about where you should optimize. |
20+
| [Streamline](https://developer.arm.com/Tools%20and%20Software/Streamline%20Performance%20Analyzer) with [Performance Advisor](https://developer.arm.com/Tools%20and%20Software/Performance%20Advisor) | Capture a performance profile that shows all the performance counter activity from the device. Generate a performance summary from an annotated Streamline capture, and get actionable advice about where you should optimize. |
1521
| [Frame Advisor](https://developer.arm.com/Tools%20and%20Software/Frame%20Advisor) | Capture the API calls and rendering from a problem frame and get comprehensive geometry metrics to discover what might be slowing down your application. |
1622
| [Mali Offline Compiler](https://developer.arm.com/Tools%20and%20Software/Mali%20Offline%20Compiler) | Analyze how efficiently your shader programs perform on a range of Mali GPUs. |
1723
| [RenderDoc for Arm GPUs](https://developer.arm.com/Tools%20and%20Software/RenderDoc%20for%20Arm%20GPUs) | The industry-standard tool for debugging Vulkan graphics applications, including early support for Arm GPU extensions and Android features. |
1824

19-
## Download and Install Arm Performance Studio
25+
## Download and install Arm Performance Studio
26+
27+
Arm Performance Studio is supported on Windows, Linux, and macOS hosts. To download Arm Performance Studio, see the [Arm Performance Studio downloads page](https://developer.arm.com/Tools%20and%20Software/Arm%20Performance%20Studio#Downloads).
28+
29+
For installation instructions, see the [Arm Performance Studio install guide](/install-guides/ams/).
30+
31+
## Update your PATH environment variable (Linux and macOS)
32+
33+
Edit your `PATH` environment variable to add the paths to the Streamline and Mali Offline Compiler executables. By adding the paths, you can run Streamline's `Streamline-cli -pa` command and Mali Offline Compiler's `malioc` command from any directory. This step isn't necessary on Windows, as this is done automatically when Arm Performance Studio is installed.
34+
35+
On macOS, edit your `/etc/paths` file to add the following paths:
2036

21-
Arm Performance Studio is supported on Windows, Linux, and macOS hosts. Get the [Arm Performance Studio installation package](https://developer.arm.com/Tools%20and%20Software/Arm%20Performance%20Studio#Downloads).
37+
```
38+
/<installation_directory>/streamline
39+
/<installation_directory>/mali_offline_compiler
40+
```
2241

23-
Refer to the [Arm Performance Studio install guide](/install-guides/ams/) for installation instructions.
42+
On Linux, edit your `PATH` environment variable to add the paths to the Performance Advisor executable. Add this command to the `.bashrc` file in your home directory, so that this environment variable is set whenever you initialize a shell session.
2443

25-
## Launch the tools
44+
```
45+
PATH=$PATH:/<installation_directory>/streamline
46+
PATH=$PATH:/<installation_directory>/mali_offline_compiler
47+
```
2648

27-
To open the tools, launch the Performance Studio Hub:
49+
## What you've accomplished and what's next
2850

29-
- On Windows, search for Performance Studio.
30-
- On macOS and Linux, open the Performance Studio application file from the install directory.
51+
You've set up Arm Performance Studio and updated your `PATH` so you can use the profiling tools from a terminal.
3152

32-
![Performance Studio Hub](images/ps_hub.png)
53+
Next, you'll set up the application that you'll profile in this Learning Path.

0 commit comments

Comments
 (0)