Does your project use Windows on Arm standard Github runners? You could save up to 20% runner time
The github standard runners for Windows on Arm do all their work on the C: drive which is an Azure attached storage drive and the system NTFS drive. These VMs have access to an NVMe 220GB drive which remains unconfigured (raw) in the current
image.
There is an active request to the GH team to modify these images to configure the drive and move the _work area - with some additional optimizations - here: [Windows] All
Windows runner images should be using ReFS for the action_runners folder and cache locations · Issue #14878 · actions/runner-images (feel free to add comments and requests to ship this).
While this remains unresolved there is a simple change that can be applied to a build script that can deliver CI wall-clock reductions of 10-20%.
See this PR for IronRDP that improved the CI time by 10% (your mileage will vary!)
https://github.com/Devolutions/IronRDP/pull/2186
What does it do?
Find the raw drive, create a new partition and format as ReFS (Dev Drive).
Junction the new drive under the actions-runner as the _work folder.
For IronRDP it also adjusts the cache location for cargo packages as these will benefit from the additional performance.
All this is gated by tests for Arm runner, github-hosted and the exitence of the raw partition, so if GH ship fixed images it will just no-op.
Marcus