Who is this for?

This learning path is for developers who want to learn how to create cross-platform applications and leverage performance improvements on Arm64.

What will you learn?

Upon completion of this Learning Path, you will be able to:

  • Create and build a Windows UI Library (WinUI) application
  • Measure code execution performance on Arm64

Prerequisites

Before starting, you will need the following:

  • A Windows on Arm computer such as the Lenovo Thinkpad X13s running Windows 11 or a Windows on Arm virtual machine .
  • Visual Studio 2022 with .NET desktop development and Universal Windows Platform development installed.

Summary

AI-assisted

This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
You’ll create a WinUI 3 application in Visual Studio on Windows on Arm and build it in Release for x64 and Arm64. First, you’ll select each architecture, launch Arm64.WinUIApp (Package), and run its matrix multiplication workload. Then, you’ll capture the reported computation times, compare the architectures, and understand how build and launch settings affect execution.

Frequently asked questions

AI-assisted

These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
Which Visual Studio settings should I use before running the app for timing?
Set Configuration to Release. Select the architecture (x64 or ARM64) in the dropdowns, then choose Arm64.WinUIApp (Package) as the startup item.
How do I switch between x64 and ARM64 runs to compare performance?
Change the architecture in Visual Studio’s dropdown from x64 to ARM64 (or vice versa), ensure Release is selected, and run the app again. Record the computation time shown by the app for each run.
Do I need to modify the code when changing architectures?
No code changes are required for the comparison. Use the same project and switch the architecture in Visual Studio’s configuration.
How do I know I’m measuring the right thing in the app?
Use the application’s matrix multiplication feature and note the computation time it displays. Compare the displayed times between the x64 and ARM64 runs.
I don’t see ARM64 in the architecture list. What should I check?
Confirm you’re using a Windows on Arm device or a supported Windows on Arm virtual machine and that the required Visual Studio workloads from the prerequisites are installed.
Next