From b7b74aac51b99ae9781973442af80719cdcc18de Mon Sep 17 00:00:00 2001 From: anupras-mohapatra-arm Date: Fri, 24 Jul 2026 16:47:40 -0500 Subject: [PATCH 1/8] first pass for performix codex insights --- .../_index.md | 8 +- .../configure_mcp_codex.md | 86 ++++++++++++-- .../create_a_code_hotspots_run.md | 44 ++++++-- .../generate_ai_insights.md | 24 +++- .../open-in-performix.md | 6 +- .../overview.md | 20 ++-- .../troubleshooting.md | 106 ------------------ 7 files changed, 155 insertions(+), 139 deletions(-) delete mode 100644 content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/troubleshooting.md diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md index 273bc2dcac..adeed0bf79 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md @@ -1,9 +1,5 @@ --- -title: Generate Arm Performix AI Insights in VS Code with Codex - -draft: true -cascade: - draft: true +title: Generate Arm Performix AI insights in Visual Studio Code with Codex description: Configure the Arm Performix MCP server for Codex in Visual Studio Code and use profile evidence to generate and validate AI Insights. @@ -18,7 +14,7 @@ learning_objectives: - Generate an AI Insight and validate its recommendations against profile evidence. prerequisites: - - Arm Performix version 2026.2.5 or later installed. See the [Arm Performix install guide](/install-guides/performix/) for installation and target setup instructions. + - Arm Performix version 2026.2.5 or later installed. For installation and target setup instructions, see the [Arm Performix install guide](/install-guides/performix/). - Visual Studio Code with the Codex extension installed. - Access to Codex through ChatGPT sign-in, or an organization-approved OpenAI API key provided through the `OPENAI_API_KEY` environment variable. - Permission from your organization to share profile data, symbols, source excerpts, disassembly excerpts, and performance metrics with Codex. diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md index 47a84514fc..a9a77ea588 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md @@ -9,21 +9,21 @@ layout: learningpathall --- ## Choose a configuration method -Codex CLI and the Codex extension share MCP configuration on the same host. Choose one of these methods: +Codex CLI and the Codex extension share MCP configuration on the same host. Choose one of the following methods: - Use the Codex extension settings. - Run `codex mcp add` in a terminal. - Edit `~/.codex/config.toml`. -You only need to complete one method. The MCP server is a local standard input/output (STDIO) process started by the `apx` executable. +You need to complete only one method. The MCP server is a local standard input and output (STDIO) process started by the `apx` executable. {{% notice Note %}} -Configure the server on the host where Codex runs. In a local VS Code session, this is your development computer. In a remote development session, confirm which host runs the Codex extension and which Arm Performix data directory it uses. +Configure the server on the host where Codex runs. In a local Visual Studio Code (VS Code) session, this is your development computer. In a remote development session, confirm which host runs the Codex extension and which Arm Performix data directory it uses. {{% /notice %}} ## Configure the server in the Codex extension -To add the server in Visual Studio Code: +To add the server in VS Code: 1. Open the Codex sidebar and select the gear icon. 2. Select **MCP servers**, then select **Add server**. @@ -80,9 +80,9 @@ codex mcp add arm-performix -- "/Applications/Arm Performix.app/Contents/assets/ Restart the Codex extension after the command completes. -## Configure the server in `config.toml` +## Configure the server in the Codex config file -For direct configuration, open `~/.codex/config.toml` and add: +For direct configuration, open `~/.codex/config.toml` and add the following: ```toml [mcp_servers.arm-performix] @@ -92,6 +92,7 @@ args = ["mcp", "start"] Replace `command` with the full path to `apx` on your host. Save the file and restart the Codex extension. +{{% notice Note %}} On Windows, use a TOML literal string so backslashes in the path aren't treated as escape characters: ```toml @@ -99,6 +100,7 @@ On Windows, use a TOML literal string so backslashes in the path aren't treated command = 'C:\Program Files\Arm Performix\assets\apx\apx.exe' args = ["mcp", "start"] ``` +{{% /notice %}} ## Check that the MCP server is connected @@ -126,4 +128,74 @@ List the Arm Performix Code Hotspots runs that can be used to generate an AI Ins Record the run ID you want to analyze. A run name can be changed and might not be unique, so use the run ID in later prompts. -You have now configured and tested the MCP connection. If no supported run is available, create a Code Hotspots run in the next section. +## Troubleshoot the MCP connection + +Use the following checks to troubleshoot issues with MCP connection: + +### The Arm Performix MCP server isn't listed + +Check whether Codex loaded the server configuration: + +```bash +codex mcp list +``` + +Find `arm-performix` in the output. Then confirm: + +- The command is the full path to the `apx` executable, including `apx.exe` on Windows. +- The arguments are `mcp` and `start`. +- The server is enabled. +- You restarted the extension after changing the configuration. +- You edited the configuration for the same user account and Codex host that runs the extension. + +### The MCP server fails to start + +Run the executable's built-in help from a terminal to separate an `apx` problem from a Codex configuration problem. Replace `` with the configured path: + +```bash +"" mcp --help +``` + +If the help text doesn't appear, check the executable path, file permissions, and installed Arm Performix version. If it does appear, reopen **MCP servers** in the Codex extension and check the server status. + +In a remote development session, make sure `apx` is installed on the Codex host and that this installation uses the expected Performix configuration and run data. + +### Codex doesn't use Arm Performix + +Name the server and task explicitly: + +```text +Use the Arm Performix MCP server to list the available Arm Performix runs. +``` + +For a specific run: + +```text +Use Arm Performix to generate an AI Insight for run ID "". +``` + +If you have several MCP servers, an ambiguous prompt such as `give me insights` might not select Arm Performix. + +### Code Hotspots runs are missing + +Check: + +- You created at least one completed Code Hotspots run. +- The MCP server runs as the same user who created or imported the run. +- The GUI, CLI, and MCP server use the same Arm Performix data location. +- The selected run contains enough samples and profile data for analysis. +- A remote Visual Studio Code environment isn't using a different home directory or Performix configuration. + +Compare the MCP result with the CLI: + +```bash +apx run list +``` + +If the CLI also returns no run, create or import a run. If the CLI returns the run but Codex doesn't, recheck which host, user, and configuration start the MCP server. + +## What you've accomplished and what's next + +You've now configured and tested the MCP connection. + +Next, you'll create a Code Hotspots run if no supported run is available. If you have an available supported run, skip to [Generate Arm Performix AI insights for a Code Hotspots run](/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights/). diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md index b22503180d..edae451677 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md @@ -1,5 +1,5 @@ --- -title: Create a Code Hotspots run +title: Create an Arm Performix Code Hotspots run weight: 4 @@ -9,16 +9,16 @@ layout: learningpathall --- ## Prepare a representative workload -You can skip this section if you already selected a supported Code Hotspots run. +If you already have a supported Code Hotspots run, skip to [Generate Arm Performix AI insights for a Code Hotspots run](/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights/). For a new run, choose a workload that represents the behavior you want to optimize. Specify the executable with an absolute path because Performix doesn't support relative workload paths. Build it with debug symbols when possible so Performix can attribute samples to functions and source lines. Aim for at least 20 seconds of representative activity; a very short run might not collect enough samples for useful analysis. Before profiling, make sure you know: -- The Performix target name. -- The executable path and arguments on the target. -- The workload's working directory and required environment variables. -- Whether running the workload has side effects. +- the Performix target name +- the executable path and arguments on the target +- the workload's working directory and required environment variables +- whether running the workload has side effects ## Create a run with Codex @@ -36,8 +36,8 @@ Use Arm Performix to run the Code Hotspots recipe on target "" with Replace: -- `` with the Performix target name returned by Codex. -- `` with the command that starts your workload on the target. +- `` with the Performix target name returned by Codex +- `` with the command that starts your workload on the target For example: @@ -66,7 +66,9 @@ apx recipe run code_hotspots \ --timeout 30 ``` -The `--timeout 30` option limits profiling to 30 seconds; it doesn't make a short workload run longer. Use a duration that captures representative behavior. Add `--working-dir`, `--env`, or `--source` when your workload needs a specific working directory, environment variables, or host-based source mapping. For an already-running process, replace `--workload` with `--pid `. +The `--timeout 30` option limits profiling to 30 seconds and doesn't make a short workload run longer. Use a duration that captures representative behavior. + +Add `--working-dir`, `--env`, or `--source` when your workload needs a specific working directory, environment variables, or host-based source mapping. For an already-running process, replace `--workload` with `--pid `. When collection finishes, list the saved runs: @@ -74,4 +76,26 @@ When collection finishes, list the saved runs: apx run list ``` -Confirm that the new run completed successfully and record its run ID. You now have the stable identifier Codex needs to analyze the intended profile. +Confirm that the new run completed successfully and record its run ID. + +## Troubleshoot remote target authentication + +If remote target authentication fails, check that: + +- SSH key-based authentication works without an interactive password prompt. +- The private key doesn't require an interactive passphrase. +- Passwordless `sudo` is configured for the target user. +- Strict host-key checking succeeds. +- `~/.ssh/known_hosts` contains the target key and each jump-node key. + +Use the Arm Performix target test to check the configured connection independently of Codex: + +```bash +apx target test --target +``` + +## What you've accomplished and what's next + +You've now got the stable identifier Codex needs to analyze the intended profile. + +Next, you'll generate AI insights from a Code Hotspots run. diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights.md index 6e6231e668..98889ee37b 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights.md @@ -1,5 +1,5 @@ --- -title: Generate AI Insights +title: Generate Arm Performix AI insights for a Code Hotspots run weight: 5 @@ -51,6 +51,22 @@ Which additional Performix recipe or view would distinguish between those explan What is the first optimization I should try, and why? ``` +## Improve a generic AI Insight + +Ask for one finding and its evidence: + +```text +Focus on the highest-impact finding in run ID "". Cite the measured evidence, distinguish hypotheses from observations, and identify the next Performix view or recipe to inspect. +``` + +For a known hotspot: + +```text +For function "" in run ID "", summarize what Code Hotspots proves, what it doesn't prove, and which additional evidence is needed to identify the root cause. +``` + +If the response remains generic, confirm that the run has enough samples, symbols, source mapping, and disassembly. Code Hotspots locates sampled CPU time; use a more specific Performix recipe when you need evidence about microarchitecture, instruction mix, or memory access. + ## Iterate and measure After you review the evidence, use a controlled optimization loop: @@ -64,4 +80,8 @@ After you review the evidence, use a controlled optimization loop: Codex can help with more of this loop if your environment exposes build, deployment, remote-execution, or source-control tools. Review proposed code changes and command approvals before Codex applies or runs them. -You have now generated an evidence-based hypothesis. Next, open the same run in Arm Performix to inspect the underlying profile views. +## What you've accomplished and what's next + +You've now generated an evidence-based hypothesis. + +Next, you'll open the same run in Arm Performix to inspect the underlying profile views. diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md index 0f421afd47..98f8ce62aa 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md @@ -22,4 +22,8 @@ Use the AI Insight to focus your investigation, not replace it. For example, if For a before-and-after comparison, keep the workload, target, input, thread count, CPU affinity, and collection settings consistent. A lower sample percentage doesn't prove that a function became faster if total runtime or the surrounding workload changed. -You have configured the Performix MCP server, selected or created a Code Hotspots run, generated an AI Insight, and checked its recommendation against the profile. Continue with the [Arm Performix getting-started video](https://youtu.be/_eX8ZpNT0kc) to explore the graphical workflow. +## What you've accomplished + +You've now configured the Performix MCP server, selected or created a Code Hotspots run, generated an AI Insight, and checked its recommendation against the profile. + +You can continue with the [Arm Performix getting-started video](https://youtu.be/_eX8ZpNT0kc) to explore the graphical workflow. diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/overview.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/overview.md index bc9d363cfd..a72b7e0a96 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/overview.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/overview.md @@ -1,5 +1,5 @@ --- -title: Overview +title: Understand the AI-assisted Arm Performix insight workflow weight: 2 @@ -7,21 +7,23 @@ description: Learn how Codex uses the Arm Performix MCP server to turn profiling layout: learningpathall --- -## Understand the AI-assisted profiling workflow +## Arm Performix local MCP server [Arm Performix](https://developer.arm.com/servers-and-cloud-computing/arm-performix) is a performance toolkit designed to help developers identify bottlenecks and validate improvements on Arm-based systems. It simplifies the process of turning low-level performance data into actionable insights through guided analysis paths called recipes. These recipes help you answer common performance questions and move quickly from observation to root cause. Arm Performix includes a local Model Context Protocol (MCP) server. MCP is a standard way for an AI assistant to discover and call tools. The server lets Codex query Performix recipes, targets, and runs from Visual Studio Code instead of relying on source-code analysis alone. -You will connect the server to Codex, select or create a Code Hotspots run, and ask for an AI Insight. The response should connect each recommendation to evidence from the selected run. +You'll connect the server to Codex, select or create a Code Hotspots run, and ask for an AI Insight. The response should connect each recommendation to evidence from the selected run. -The MCP server runs on the same host as Codex. It can make profile data, symbols, source excerpts, disassembly excerpts, and performance metrics available to the assistant. Confirm that this use complies with your organization's data-handling policy before you continue. +{{% notice Important %}} +The MCP server runs on the same host as Codex. It can make profile data, symbols, source excerpts, disassembly excerpts, and performance metrics available to the assistant. Before you continue, confirm that this use complies with your organization's data-handling policy. +{{% /notice %}} Use AI-generated responses to support performance investigation. Validate important findings by reviewing the relevant data in Arm Performix and by rerunning the workload after making changes. -## How it works +## Arm Performix insights workflow -Arm Performix stores profiling runs, target information, and rendered analysis data. Its MCP server exposes select Performix capabilities as tools that an MCP-compatible assistant can call. +Arm Performix stores profiling runs, target information, and rendered analysis data. The local MCP server exposes select Performix capabilities as tools that an MCP-compatible assistant can call. When you ask for insights, the flow is: @@ -32,4 +34,8 @@ When you ask for insights, the flow is: The available evidence depends on how the run was collected. Debug symbols and source mappings improve function and source-line attribution, while a representative profiling duration improves sampling quality. - Next, configure the local MCP server and verify that Codex can use its tools. +## What you've learned and what's next + +You've learned about Arm Performix's local MCP server and the workflow that's executed when you ask for insights using Codex. + +Next, you'll configure the local MCP server and verify that Codex can use its tools. diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/troubleshooting.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/troubleshooting.md deleted file mode 100644 index ee3e470a90..0000000000 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/troubleshooting.md +++ /dev/null @@ -1,106 +0,0 @@ ---- -title: Troubleshooting - -weight: 7 - -description: Diagnose Arm Performix MCP startup, Codex tool selection, run discovery, remote authentication, and low-quality insight problems. - -layout: learningpathall ---- -## Diagnose the MCP workflow - -Use these checks to isolate configuration, process startup, data discovery, and profile-quality problems. - -## The Codex extension does not show the Arm Performix MCP server - -Check whether Codex loaded the server configuration: - -```bash -codex mcp list -``` - -Find `arm-performix` in the output. Then confirm: - -- The command is the full path to the `apx` executable, including `apx.exe` on Windows. -- The only argument is `mcp`. -- The server is enabled. -- You restarted the extension after changing the configuration. -- You edited the configuration for the same user account and Codex host that runs the extension. - -## The MCP server fails to start - -Run the executable's built-in help from a terminal to separate an `apx` problem from a Codex configuration problem. Replace `` with the configured path: - -```bash -"" mcp --help -``` - -If the help text doesn't appear, check the executable path, file permissions, and installed Arm Performix version. If it does appear, reopen **MCP servers** in the Codex extension and check the server status. - -In a remote development session, make sure `apx` is installed on the Codex host and that this installation uses the expected Performix configuration and run data. - -## Codex does not use Arm Performix - -Name the server and task explicitly: - -```text -Use the Arm Performix MCP server to list the available Arm Performix runs. -``` - -For a specific run: - -```text -Use Arm Performix to generate an AI Insight for run ID "". -``` - -If you have several MCP servers, an ambiguous prompt such as `give me insights` might not select Arm Performix. - -## No supported runs are found - -Check: - -- You created at least one completed Code Hotspots run. -- The MCP server runs as the same user who created or imported the run. -- The GUI, CLI, and MCP server use the same Arm Performix data location. -- The selected run contains enough samples and profile data for analysis. -- A remote VS Code environment isn't using a different home directory or Performix configuration. - -Compare the MCP result with the CLI: - -```bash -apx run list -``` - -If the CLI also returns no run, create or import a run. If the CLI returns the run but Codex doesn't, recheck which host, user, and configuration start the MCP server. - -## Remote target authentication fails - -Check: - -- SSH key-based authentication works without an interactive password prompt. -- The private key doesn't require an interactive passphrase. -- Passwordless `sudo` is configured for the target user. -- Strict host-key checking succeeds. -- `~/.ssh/known_hosts` contains the target key and each jump-node key. - -Use the Arm Performix target test to check the configured connection independently of Codex: - -```bash -apx target test --target -``` - -## The insight is too generic - -Ask for one finding and its evidence: - -```text -Focus on the highest-impact finding in run ID "". Cite the measured evidence, distinguish hypotheses from observations, and identify the next Performix view or recipe to inspect. -``` - -For a known hotspot: - -```text -For function "" in run ID "", summarize what Code Hotspots proves, what it doesn't prove, and which additional evidence is needed to identify the root cause. -``` - -If the response remains generic, confirm that the run has enough samples, symbols, source mapping, and disassembly. Code Hotspots locates sampled CPU time; use a more specific Performix recipe when you need evidence about microarchitecture, instruction mix, or memory access. From 5e3f7258278e4149a8ba14a915e4cbe30224241b Mon Sep 17 00:00:00 2001 From: anupras-mohapatra-arm Date: Fri, 24 Jul 2026 16:48:52 -0500 Subject: [PATCH 2/8] nits --- .../open-in-performix.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md index 98f8ce62aa..7c3e23ad71 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md @@ -18,12 +18,12 @@ A chat response helps you triage a performance problem, but the underlying profi - **Disassembly** to inspect generated instructions and confirm claims about the compiled code. - **Compare** to evaluate equivalent before-and-after runs. -Use the AI Insight to focus your investigation, not replace it. For example, if the insight says a loop appears scalar, inspect its disassembly and compiler flags before changing the implementation. If Code Hotspots only shows that the loop is hot, run Instruction Mix or another appropriate recipe before concluding that scalar execution is the cause. +Use the AI insight to focus your investigation, not replace it. For example, if the insight says a loop appears scalar, inspect its disassembly and compiler flags before changing the implementation. If Code Hotspots only shows that the loop is hot, run Instruction Mix or another appropriate recipe before concluding that scalar execution is the cause. For a before-and-after comparison, keep the workload, target, input, thread count, CPU affinity, and collection settings consistent. A lower sample percentage doesn't prove that a function became faster if total runtime or the surrounding workload changed. ## What you've accomplished -You've now configured the Performix MCP server, selected or created a Code Hotspots run, generated an AI Insight, and checked its recommendation against the profile. +You've now configured the Arm Performix MCP server, selected or created a Code Hotspots run, generated an AI Insight, and checked its recommendation against the profile. You can continue with the [Arm Performix getting-started video](https://youtu.be/_eX8ZpNT0kc) to explore the graphical workflow. From 1c9e5e8fa35f34758b9fbca714510a831409dfd0 Mon Sep 17 00:00:00 2001 From: anupras-mohapatra-arm Date: Fri, 24 Jul 2026 17:35:35 -0500 Subject: [PATCH 3/8] style updates and merging some troubleshooting guidance --- .../configure_mcp_codex.md | 16 ++++---- .../create_a_code_hotspots_run.md | 8 ++-- .../generate_ai_insights.md | 38 +++++++++---------- .../open-in-performix.md | 2 +- .../overview.md | 12 +++--- 5 files changed, 36 insertions(+), 40 deletions(-) diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md index a9a77ea588..8177277d73 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md @@ -21,15 +21,15 @@ You need to complete only one method. The MCP server is a local standard input a Configure the server on the host where Codex runs. In a local Visual Studio Code (VS Code) session, this is your development computer. In a remote development session, confirm which host runs the Codex extension and which Arm Performix data directory it uses. {{% /notice %}} -## Configure the server in the Codex extension +## Configure the MCP server in the Codex extension -To add the server in VS Code: +To add the MCP server in VS Code: -1. Open the Codex sidebar and select the gear icon. +1. Open the Codex sidebar and select the **gear icon**. 2. Select **MCP servers**, then select **Add server**. -3. Enter `arm-performix` for the server name. +3. For **Server name**, enter `arm-performix`. 4. Select **STDIO** as the transport. -5. Enter the full path to the Arm Performix `apx` executable in the command field. +5. For **Command**, enter the full path to the Arm Performix `apx` executable. On macOS: @@ -55,7 +55,7 @@ To add the server in VS Code: C:\Users\\AppData\Local\Programs\Arm Performix\assets\apx\apx.exe ``` -6. Add one argument: +6. Add the following arguments: ```text mcp @@ -130,7 +130,7 @@ Record the run ID you want to analyze. A run name can be changed and might not b ## Troubleshoot the MCP connection -Use the following checks to troubleshoot issues with MCP connection: +Use the following checks to diagnore MCP connection issues: ### The Arm Performix MCP server isn't listed @@ -198,4 +198,4 @@ If the CLI also returns no run, create or import a run. If the CLI returns the r You've now configured and tested the MCP connection. -Next, you'll create a Code Hotspots run if no supported run is available. If you have an available supported run, skip to [Generate Arm Performix AI insights for a Code Hotspots run](/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights/). +Next, you'll create a Code Hotspots run if no supported run is available. If you already. have a supported run, skip to [Generate Arm Performix AI insights for a Code Hotspots run](/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights/). diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md index edae451677..ef6f8d23b6 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md @@ -34,7 +34,7 @@ Choose the correct target, then ask Codex to run Code Hotspots. Keep collection Use Arm Performix to run the Code Hotspots recipe on target "" with workload "". Before starting, repeat the target and workload and ask me to confirm them. When the run completes, return its run ID and collection status. ``` -Replace: +Replace the following placeholders: - `` with the Performix target name returned by Codex - `` with the command that starts your workload on the target @@ -45,9 +45,9 @@ For example: Use Arm Performix to run the Code Hotspots recipe on target "graviton-dev" with workload "/opt/myapp/bin/my_app --input /data/input.dat". Before starting, repeat the target and workload and ask me to confirm them. When the run completes, return its run ID and collection status. ``` -After you confirm, Codex uses the MCP server to start the recipe. Review any permission request before allowing the assistant to run a command on the target. +After you confirm the target, Codex uses the MCP server to start the recipe. Review any permission request before allowing the assistant to run a command on the target. -## Create a run with the Performix CLI +## Create a run with the Arm Performix CLI If you prefer to control collection from a terminal, first check that the recipe dependencies and workload are ready: @@ -96,6 +96,6 @@ apx target test --target ## What you've accomplished and what's next -You've now got the stable identifier Codex needs to analyze the intended profile. +You now have the stable identifier Codex needs to analyze the intended profile. Next, you'll generate AI insights from a Code Hotspots run. diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights.md index 98889ee37b..807fce6e9c 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights.md @@ -3,13 +3,13 @@ title: Generate Arm Performix AI insights for a Code Hotspots run weight: 5 -description: Ask Codex for an Arm Performix AI Insight tied to a specific run and assess whether the response is supported by profile evidence. +description: Ask Codex for an Arm Performix AI insight tied to a specific run and assess whether the response is supported by profile evidence. layout: learningpathall --- ## Select the exact run -Use a run ID whenever possible. It prevents Codex from selecting a similarly named run or a more recent run from a different workload. +Use a run ID whenever possible. A run ID prevents Codex from selecting a similarly named run or a more recent run from a different workload. If you don't have the ID, ask Codex to list supported runs: @@ -35,11 +35,21 @@ Use Arm Performix to explain why function "" is hot in run ID "". Cite the measured evidence, distinguish hypotheses from observations, and identify the next Performix view or recipe to inspect. +``` +You can ask a similar question for a known hotspot: + +```text +For function "" in run ID "", summarize what Code Hotspots proves, what it doesn't prove, and which additional evidence is needed to identify the root cause. +``` +The following are some other questions that you can ask: ```text Which measured evidence in this Performix run supports that recommendation? @@ -51,21 +61,7 @@ Which additional Performix recipe or view would distinguish between those explan What is the first optimization I should try, and why? ``` -## Improve a generic AI Insight - -Ask for one finding and its evidence: - -```text -Focus on the highest-impact finding in run ID "". Cite the measured evidence, distinguish hypotheses from observations, and identify the next Performix view or recipe to inspect. -``` - -For a known hotspot: - -```text -For function "" in run ID "", summarize what Code Hotspots proves, what it doesn't prove, and which additional evidence is needed to identify the root cause. -``` - -If the response remains generic, confirm that the run has enough samples, symbols, source mapping, and disassembly. Code Hotspots locates sampled CPU time; use a more specific Performix recipe when you need evidence about microarchitecture, instruction mix, or memory access. +Code Hotspots locates sampled CPU time. If you need evidence about microarchitecture, instruction mix, or memory access, use a more specific Performix recipe. ## Iterate and measure @@ -82,6 +78,6 @@ Codex can help with more of this loop if your environment exposes build, deploym ## What you've accomplished and what's next -You've now generated an evidence-based hypothesis. +You've now generated an AI insight and reviewed its supporting evidence. Next, you'll open the same run in Arm Performix to inspect the underlying profile views. diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md index 7c3e23ad71..adc5f2d67c 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md @@ -3,7 +3,7 @@ title: Open the run in Arm Performix for deeper inspection weight: 6 -description: Validate an AI Insight by inspecting flame graphs, functions, call paths, source, and disassembly from the same Arm Performix run. +description: Validate an AI insight by inspecting flame graphs, functions, call paths, source, and disassembly from the same Arm Performix run. layout: learningpathall --- diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/overview.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/overview.md index a72b7e0a96..510e0f3d28 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/overview.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/overview.md @@ -9,11 +9,11 @@ layout: learningpathall --- ## Arm Performix local MCP server -[Arm Performix](https://developer.arm.com/servers-and-cloud-computing/arm-performix) is a performance toolkit designed to help developers identify bottlenecks and validate improvements on Arm-based systems. It simplifies the process of turning low-level performance data into actionable insights through guided analysis paths called recipes. These recipes help you answer common performance questions and move quickly from observation to root cause. +[Arm Performix](https://developer.arm.com/servers-and-cloud-computing/arm-performix) is a performance toolkit designed to help developers identify bottlenecks and validate improvements on Arm-based systems. The toolkit turns low-level performance data into actionable insights through guided analysis paths called recipes. You can use these recipes to answer common performance questions and move quickly from observation to root cause. Arm Performix includes a local Model Context Protocol (MCP) server. MCP is a standard way for an AI assistant to discover and call tools. The server lets Codex query Performix recipes, targets, and runs from Visual Studio Code instead of relying on source-code analysis alone. -You'll connect the server to Codex, select or create a Code Hotspots run, and ask for an AI Insight. The response should connect each recommendation to evidence from the selected run. +You'll connect the server to Codex, select or create a Code Hotspots run, and ask for an AI insight. The response should connect each recommendation to evidence from the selected run. {{% notice Important %}} The MCP server runs on the same host as Codex. It can make profile data, symbols, source excerpts, disassembly excerpts, and performance metrics available to the assistant. Before you continue, confirm that this use complies with your organization's data-handling policy. @@ -21,13 +21,13 @@ The MCP server runs on the same host as Codex. It can make profile data, symbols Use AI-generated responses to support performance investigation. Validate important findings by reviewing the relevant data in Arm Performix and by rerunning the workload after making changes. -## Arm Performix insights workflow +## How AI-assisted Arm Performix insights are generated -Arm Performix stores profiling runs, target information, and rendered analysis data. The local MCP server exposes select Performix capabilities as tools that an MCP-compatible assistant can call. +Arm Performix stores profiling runs, target information, and rendered analysis data. The local MCP server exposes specific Performix capabilities as tools that an MCP-compatible assistant can call. When you ask for insights, the flow is: -1. You ask an AI Assisant, in this case, Codex in VS Code for an Arm Performix insight. +1. You ask an AI assistant — in this case, Codex in VS Code — for an Arm Performix insight. 2. Codex calls the Arm Performix MCP server. 3. Arm Performix gathers relevant run data and profile evidence. 4. Codex uses that evidence to identify likely bottlenecks, explain why they matter, and suggest the next investigation step. @@ -36,6 +36,6 @@ The available evidence depends on how the run was collected. Debug symbols and s ## What you've learned and what's next -You've learned about Arm Performix's local MCP server and the workflow that's executed when you ask for insights using Codex. +You've learned about Arm Performix's local MCP server and how AI-assisted insights are generated. Next, you'll configure the local MCP server and verify that Codex can use its tools. From 40f11086079ab0f21b84bf630f8437b545d5200f Mon Sep 17 00:00:00 2001 From: anupras-mohapatra-arm Date: Mon, 27 Jul 2026 09:44:34 -0500 Subject: [PATCH 4/8] added per-page descriptions --- .../performix-agentic-dynamic-insights-codex/overview.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/overview.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/overview.md index 510e0f3d28..21d93ab599 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/overview.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/overview.md @@ -7,11 +7,11 @@ description: Learn how Codex uses the Arm Performix MCP server to turn profiling layout: learningpathall --- -## Arm Performix local MCP server +## Arm Performix MCP server [Arm Performix](https://developer.arm.com/servers-and-cloud-computing/arm-performix) is a performance toolkit designed to help developers identify bottlenecks and validate improvements on Arm-based systems. The toolkit turns low-level performance data into actionable insights through guided analysis paths called recipes. You can use these recipes to answer common performance questions and move quickly from observation to root cause. -Arm Performix includes a local Model Context Protocol (MCP) server. MCP is a standard way for an AI assistant to discover and call tools. The server lets Codex query Performix recipes, targets, and runs from Visual Studio Code instead of relying on source-code analysis alone. +Arm Performix includes a local Model Context Protocol (MCP) server. MCP is a standard way for an AI assistant to discover and call tools. AI assistants such as Codex can use the server to query Performix recipes, targets, and runs from Visual Studio Code (VS Code) instead of relying on source-code analysis alone. You'll connect the server to Codex, select or create a Code Hotspots run, and ask for an AI insight. The response should connect each recommendation to evidence from the selected run. From 7305a1b7d4ceb74bbc9d3f28418aa648b85e2595 Mon Sep 17 00:00:00 2001 From: anupras-mohapatra-arm Date: Mon, 27 Jul 2026 10:45:01 -0500 Subject: [PATCH 5/8] adding summary and faqs --- .../_index.md | 52 ++++++++++++++++++- .../configure_mcp_codex.md | 6 +-- .../create_a_code_hotspots_run.md | 2 +- .../open-in-performix.md | 12 ++--- 4 files changed, 61 insertions(+), 11 deletions(-) diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md index adeed0bf79..149509fb32 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md @@ -1,7 +1,7 @@ --- title: Generate Arm Performix AI insights in Visual Studio Code with Codex -description: Configure the Arm Performix MCP server for Codex in Visual Studio Code and use profile evidence to generate and validate AI Insights. +description: Configure the Arm Performix MCP server for Codex in Visual Studio Code and use profile evidence to generate and validate AI insights. minutes_to_complete: 20 @@ -19,9 +19,59 @@ prerequisites: - Access to Codex through ChatGPT sign-in, or an organization-approved OpenAI API key provided through the `OPENAI_API_KEY` environment variable. - Permission from your organization to share profile data, symbols, source excerpts, disassembly excerpts, and performance metrics with Codex. +# START generated_summary_faq +generated_summary_faq: + template_version: summary-faq-v3 + generated_at: '2026-07-27T15:24:59Z' + generator: ai + ai_assisted: true + ai_review_required: true + model: gpt-5 + prompt_template: summary-faq-v3 + source_hash: 3e21e94826b1e02673c240ad88dc503354a1920397903348316d696cf4e2aa2c + summary_generated_at: '2026-07-27T15:24:59Z' + summary_source_hash: 3e21e94826b1e02673c240ad88dc503354a1920397903348316d696cf4e2aa2c + faq_generated_at: '2026-07-27T15:24:59Z' + faq_source_hash: 3e21e94826b1e02673c240ad88dc503354a1920397903348316d696cf4e2aa2c + summary: >- + You'll learn how to connect Codex in Visual Studio Code to the Arm Performix Model + Context Protocol (MCP) server, generate an AI insight for a specific Code Hotspots run, and + validate the result with profile evidence. After configuring the MCP server on your local machine, you’ll select or create a representative Code Hotspots run, request an AI insight by run ID, and evaluate its supporting evidence. + Then, you'll open the same run in Arm Performix to inspect flame graphs, functions, call + stacks, source, and disassembly to confirm the recommendation. + faqs: + - question: How do I confirm Codex is connected to Arm Performix through MCP? + answer: >- + Ask Codex to list Arm Performix recipes, targets, or supported Code Hotspots runs. A successful + listing confirms the MCP server is configured and reachable. + - question: Which MCP configuration method should I use, and where should I configure it? + answer: >- + You can update Codex extension settings, run the `codex mcp add` command, or + edit `~/.codex/config.toml`. Configure the MCP on the host where Codex runs; in remote development, + verify which machine hosts Codex. + - question: What should I prepare before creating a new Code Hotspots run? + answer: >- + Choose a representative workload and specify the executable with an absolute path. Build the workload with debug symbols when possible and aim for at least 20 seconds of activity to collect + enough samples. + - question: How do I make sure Codex uses the exact profile I want? + answer: >- + Request the AI Insight using the run ID. If you don’t know it, ask Codex to list supported + Code Hotspots runs with IDs, targets, workloads, and creation times. Then, select the correct + ID. + - question: What should I check to validate an AI Insight against the profile? + answer: >- + Open the same run in Arm Performix and inspect the **Flame graph**, **Functions**, **Call Stack**, + **Source**, and **Disassembly** views. Confirm that the cited functions, call paths, and sample percentages + match the evidence referenced by the insight. +# END generated_summary_faq + author: - Julie Gaskin +generate_summary_faq: false +rerun_summary: false +rerun_faqs: false + ### Tags skilllevels: Introductory subjects: Performance and Architecture diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md index 8177277d73..0983980e68 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md @@ -130,7 +130,7 @@ Record the run ID you want to analyze. A run name can be changed and might not b ## Troubleshoot the MCP connection -Use the following checks to diagnore MCP connection issues: +Use the following checks to diagnose MCP connection issues: ### The Arm Performix MCP server isn't listed @@ -178,7 +178,7 @@ If you have several MCP servers, an ambiguous prompt such as `give me insights` ### Code Hotspots runs are missing -Check: +Check for the following: - You created at least one completed Code Hotspots run. - The MCP server runs as the same user who created or imported the run. @@ -198,4 +198,4 @@ If the CLI also returns no run, create or import a run. If the CLI returns the r You've now configured and tested the MCP connection. -Next, you'll create a Code Hotspots run if no supported run is available. If you already. have a supported run, skip to [Generate Arm Performix AI insights for a Code Hotspots run](/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights/). +Next, you'll create a Code Hotspots run if no supported run is available. If you already have a supported run, skip to [Generate Arm Performix AI insights for a Code Hotspots run](/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights/). diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md index ef6f8d23b6..cb1c817b2a 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md @@ -45,7 +45,7 @@ For example: Use Arm Performix to run the Code Hotspots recipe on target "graviton-dev" with workload "/opt/myapp/bin/my_app --input /data/input.dat". Before starting, repeat the target and workload and ask me to confirm them. When the run completes, return its run ID and collection status. ``` -After you confirm the target, Codex uses the MCP server to start the recipe. Review any permission request before allowing the assistant to run a command on the target. +After you confirm the target and workload, Codex uses the MCP server to start the recipe. Review any permission request before allowing the assistant to run a command on the target. ## Create a run with the Arm Performix CLI diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md index adc5f2d67c..a21e60e9ad 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md @@ -11,12 +11,12 @@ layout: learningpathall A chat response helps you triage a performance problem, but the underlying profile is the source of evidence. Open the same run ID in Arm Performix and inspect the views relevant to the claim: -- **Flame graph** to see where sampled CPU time accumulates across call paths. -- **Functions** to confirm which functions account for the largest sample percentages. -- **Call Stack** to distinguish a function's own cost from the cost of its callees. -- **Source** to correlate samples with source lines when source mapping is available. -- **Disassembly** to inspect generated instructions and confirm claims about the compiled code. -- **Compare** to evaluate equivalent before-and-after runs. +- **Flame graph** to see where sampled CPU time accumulates across call paths +- **Functions** to confirm which functions account for the largest sample percentages +- **Call Stack** to distinguish a function's own cost from the cost of its callees +- **Source** to correlate samples with source lines when source mapping is available +- **Disassembly** to inspect generated instructions and confirm claims about the compiled code +- **Compare** to evaluate equivalent before-and-after runs Use the AI insight to focus your investigation, not replace it. For example, if the insight says a loop appears scalar, inspect its disassembly and compiler flags before changing the implementation. If Code Hotspots only shows that the loop is hot, run Instruction Mix or another appropriate recipe before concluding that scalar execution is the cause. From 7c81b6654d926d69277c5a734faedee80e9a7f1e Mon Sep 17 00:00:00 2001 From: anupras-mohapatra-arm Date: Mon, 27 Jul 2026 11:03:52 -0500 Subject: [PATCH 6/8] making AI insight lowercase --- .../performix-agentic-dynamic-insights-codex/_index.md | 6 +++--- .../configure_mcp_codex.md | 4 ++-- .../generate_ai_insights.md | 2 +- .../open-in-performix.md | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md index 149509fb32..a6ba45e959 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md @@ -11,7 +11,7 @@ learning_objectives: - Configure the Arm Performix MCP server for the Codex extension in VS Code. - Verify that Codex can access Arm Performix recipes, targets, and runs. - Create or select a supported Code Hotspots run. - - Generate an AI Insight and validate its recommendations against profile evidence. + - Generate an AI insight and validate its recommendations against profile evidence. prerequisites: - Arm Performix version 2026.2.5 or later installed. For installation and target setup instructions, see the [Arm Performix install guide](/install-guides/performix/). @@ -55,10 +55,10 @@ generated_summary_faq: enough samples. - question: How do I make sure Codex uses the exact profile I want? answer: >- - Request the AI Insight using the run ID. If you don’t know it, ask Codex to list supported + Request the AI insight using the run ID. If you don’t know it, ask Codex to list supported Code Hotspots runs with IDs, targets, workloads, and creation times. Then, select the correct ID. - - question: What should I check to validate an AI Insight against the profile? + - question: What should I check to validate an AI insight against the profile? answer: >- Open the same run in Arm Performix and inspect the **Flame graph**, **Functions**, **Call Stack**, **Source**, and **Disassembly** views. Confirm that the cited functions, call paths, and sample percentages diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md index 0983980e68..3ea3d1518c 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md @@ -123,7 +123,7 @@ If Codex returns Performix recipes or runs, the end-to-end connection works. An Next, ask Codex to identify runs that support the insight workflow: ```text -List the Arm Performix Code Hotspots runs that can be used to generate an AI Insight. Include the run ID and enough workload and target details for me to choose the correct run. +List the Arm Performix Code Hotspots runs that can be used to generate an AI insight. Include the run ID and enough workload and target details for me to choose the correct run. ``` Record the run ID you want to analyze. A run name can be changed and might not be unique, so use the run ID in later prompts. @@ -171,7 +171,7 @@ Use the Arm Performix MCP server to list the available Arm Performix runs. For a specific run: ```text -Use Arm Performix to generate an AI Insight for run ID "". +Use Arm Performix to generate an AI insight for run ID "". ``` If you have several MCP servers, an ambiguous prompt such as `give me insights` might not select Arm Performix. diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights.md index 807fce6e9c..916d67cac6 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/generate_ai_insights.md @@ -22,7 +22,7 @@ Use Arm Performix to list supported Code Hotspots runs. Include the run ID, targ Request an insight for the selected run: ```text -Use Arm Performix to generate an AI Insight for run ID "". Identify the highest-impact finding, cite the profile evidence that supports it, and suggest the first investigation or optimization step. State any missing evidence or uncertainty. +Use Arm Performix to generate an AI insight for run ID "". Identify the highest-impact finding, cite the profile evidence that supports it, and suggest the first investigation or optimization step. State any missing evidence or uncertainty. ``` Replace `` with the ID returned by Arm Performix. diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md index a21e60e9ad..c1e028399e 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/open-in-performix.md @@ -24,6 +24,6 @@ For a before-and-after comparison, keep the workload, target, input, thread coun ## What you've accomplished -You've now configured the Arm Performix MCP server, selected or created a Code Hotspots run, generated an AI Insight, and checked its recommendation against the profile. +You've now configured the Arm Performix MCP server, selected or created a Code Hotspots run, generated an AI insight, and checked its recommendation against the profile. You can continue with the [Arm Performix getting-started video](https://youtu.be/_eX8ZpNT0kc) to explore the graphical workflow. From 7bdae2f11fecf9b4491e363dc1c9212216f1aae1 Mon Sep 17 00:00:00 2001 From: anupras-mohapatra-arm Date: Mon, 27 Jul 2026 11:12:02 -0500 Subject: [PATCH 7/8] updating style skill to handle lists based on arm style + tweaking LP bullet lists to conform --- .github/skills/writing-style-review/SKILL.md | 1 + .../performix-agentic-dynamic-insights-codex/_index.md | 6 +++--- .../configure_mcp_codex.md | 6 +++--- .../create_a_code_hotspots_run.md | 8 ++++---- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/.github/skills/writing-style-review/SKILL.md b/.github/skills/writing-style-review/SKILL.md index a82ec42dcf..d15e64ddab 100644 --- a/.github/skills/writing-style-review/SKILL.md +++ b/.github/skills/writing-style-review/SKILL.md @@ -47,6 +47,7 @@ Use this skill for granular prose, voice, readability, terminology, and style re - Flag pages over 3500 words total when prose density hurts review or learning. - Use visual breaks to prevent walls of text. Code blocks count as visual breaks. - If a section explains three or more things, suggest splitting it. +- Ensure lists have a lead-in sentence or phrase ending with a colon. Start each item with a capitalized word unless the word is supposed to be styled differently. Don't use periods to end list items unless the item is one or more complete sentences. ## Arm framing and technical depth diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md index a6ba45e959..a09ee18a69 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/_index.md @@ -15,9 +15,9 @@ learning_objectives: prerequisites: - Arm Performix version 2026.2.5 or later installed. For installation and target setup instructions, see the [Arm Performix install guide](/install-guides/performix/). - - Visual Studio Code with the Codex extension installed. - - Access to Codex through ChatGPT sign-in, or an organization-approved OpenAI API key provided through the `OPENAI_API_KEY` environment variable. - - Permission from your organization to share profile data, symbols, source excerpts, disassembly excerpts, and performance metrics with Codex. + - Visual Studio Code with the Codex extension installed + - Access to Codex through ChatGPT sign-in, or an organization-approved OpenAI API key provided through the `OPENAI_API_KEY` environment variable + - Permission from your organization to share profile data, symbols, source excerpts, disassembly excerpts, and performance metrics with Codex # START generated_summary_faq generated_summary_faq: diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md index 3ea3d1518c..1ea68d1214 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/configure_mcp_codex.md @@ -11,9 +11,9 @@ layout: learningpathall Codex CLI and the Codex extension share MCP configuration on the same host. Choose one of the following methods: -- Use the Codex extension settings. -- Run `codex mcp add` in a terminal. -- Edit `~/.codex/config.toml`. +- Use the Codex extension settings +- Run `codex mcp add` in a terminal +- Edit `~/.codex/config.toml` You need to complete only one method. The MCP server is a local standard input and output (STDIO) process started by the `apx` executable. diff --git a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md index cb1c817b2a..e9b07923cd 100644 --- a/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md +++ b/content/learning-paths/servers-and-cloud-computing/performix-agentic-dynamic-insights-codex/create_a_code_hotspots_run.md @@ -15,10 +15,10 @@ For a new run, choose a workload that represents the behavior you want to optimi Before profiling, make sure you know: -- the Performix target name -- the executable path and arguments on the target -- the workload's working directory and required environment variables -- whether running the workload has side effects +- The Performix target name +- The executable path and arguments on the target +- The workload's working directory and required environment variables +- Whether running the workload has side effects ## Create a run with Codex From 88593e3aaca5f0e7f8f9ea1587552f867134cb7d Mon Sep 17 00:00:00 2001 From: anupras-mohapatra-arm Date: Mon, 27 Jul 2026 11:16:12 -0500 Subject: [PATCH 8/8] skill nit --- .github/skills/writing-style-review/SKILL.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/skills/writing-style-review/SKILL.md b/.github/skills/writing-style-review/SKILL.md index d15e64ddab..3263d0228b 100644 --- a/.github/skills/writing-style-review/SKILL.md +++ b/.github/skills/writing-style-review/SKILL.md @@ -47,7 +47,7 @@ Use this skill for granular prose, voice, readability, terminology, and style re - Flag pages over 3500 words total when prose density hurts review or learning. - Use visual breaks to prevent walls of text. Code blocks count as visual breaks. - If a section explains three or more things, suggest splitting it. -- Ensure lists have a lead-in sentence or phrase ending with a colon. Start each item with a capitalized word unless the word is supposed to be styled differently. Don't use periods to end list items unless the item is one or more complete sentences. +- Ensure lists have a lead-in sentence or phrase ending with a colon. Ensure each item starts with a capitalized word unless the word is supposed to be styled differently. Ensure list items don't end with periods unless the item is one or more complete sentences. ## Arm framing and technical depth