Skip to content

macOS-14-arm64 20250304.1018 much slower than 20250120.774 #11845

@odisei369

Description

@odisei369

Description

XCode tests on macoS-14 image are now taking much more time.

It starts happening after GitHub updates MacOS image version on runners.

The main step of the job:

- name: Run Tests
        run: |
          set -o pipefail && xcodebuild test \
            -project "Project.xcodeproj" \
            -scheme "UnitTests" \
            -destination 'platform=iOS Simulator,name=iPhone 16,OS=18.1' \
            -skipPackagePluginValidation \
            -skipMacroValidation \
            CODE_SIGN_IDENTITY="" \
            CODE_SIGNING_REQUIRED=NO \
            -derivedDataPath .build \
            | xcbeautify --renderer github-actions

Platforms affected

  • Azure DevOps
  • GitHub Actions - Standard Runners
  • GitHub Actions - Larger Runners

Runner images affected

  • Ubuntu 20.04
  • Ubuntu 22.04
  • Ubuntu 24.04
  • macOS 13
  • macOS 13 Arm64
  • macOS 14
  • macOS 14 Arm64
  • macOS 15
  • macOS 15 Arm64
  • Windows Server 2019
  • Windows Server 2022
  • Windows Server 2025

Image version and build link

Image version where builds are fast: 20250120.774
Image version where builds are much slower: 20250304.1018

Is it regression?

Yes, 20250120.774

Expected behavior

The run times for the same job on 20250304.1018 should be close to run time on 20250120.774.

Here is an example of how much time it took on 20250120.774:

Image

Snapshot tests job:
Image

Actual behavior

Here is an example of how much time it took on 20250304.1018 (same code, just reruning CI build):

Image

Snapshot tests job:
Image

You could see that test part takes 2.5 more time comparing to older runner image.

We've set timeout to 40 minutes and you could see that it failed with timeout with some of the jobs.

Repro steps

Because we're using GitHub runners, I could not force runner to use older image version, so I don't see a clear way to reproduce it this way.

Maybe when using self-hosted runner there is a way to reproduce it by:

  1. Running some XCode tests on CI with older image.
  2. Running some XCode tests on CI with new image.

Maybe I could help by providing some test project with tests so we could run it to do benchmarking and compare how much time it takes for different images.

Let me know how can I help with tackling this issue.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions