Skip to content

Instantly share code, notes, and snippets.

@pbrit
Last active April 1, 2021 03:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pbrit/77f0900fefa7bb63302796726910c017 to your computer and use it in GitHub Desktop.
Save pbrit/77f0900fefa7bb63302796726910c017 to your computer and use it in GitHub Desktop.
Apple build machine performance test instructions

Setup

Wikipedia-iOS

brew install xcbeautify
brew install gh
gh repo clone wikimedia/wikipedia-ios
cd wikipedia-ios && git checkout cf727dfb2f3d51b728f6b1fe313eb66105df7a99

Firefox-macOS

mkdir Firefox && cd Firefox && mkdir mozbuild
echo "export MOZBUILD_STATE_PATH=$(pwd)/mozbuild" > env.sh
source ./env.sh
brew install mercurial
curl https://hg.mozilla.org/mozilla-central/raw-file/default/python/mozboot/bin/bootstrap.py -O
python3 bootstrap.py
python3.9 ./mach bootstrap
cd mozilla-unified

Benchmarks

Test

time bash -c "xcodebuild -workspace Wikipedia.xcodeproj/project.xcworkspace -scheme Wikipedia -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 12,OS=14.4' clean test | xcbeautify"

Build for Test

time bash -c "xcodebuild -workspace Wikipedia.xcodeproj/project.xcworkspace -scheme Wikipedia -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 12,OS=14.4' clean build-for-testing | xcbeautify"

Firefox

time python3.9 ./mach build

Results

Table 1. Wikipedia-iOS
Machine info Test name User (s) System (s) CPU (%) Total (s)

MacBook Air (M1, 2020)

Test

14.2

1.9

13

2:02

MacBook Air (M1, 2020)

Build For Test

9.6

0.8

12

1:22

MacBook Pro (13-inch, 2016, Four Thunderbolt 3 Ports), 2.9 GHz Dual-Core Intel Core i5

Build For Test

27.1

3

7

6:40

Table 2. Firefox-macOS
Machine info Test name User (s) System (s) CPU (%) Total (s)

MacBook Air (M1, 2020)

Firefox

11520.3

555.97

661

29:15

MacBook Pro (13-inch, 2016, Four Thunderbolt 3 Ports), 2.9 GHz Dual-Core Intel Core i5

Firefox

24532.1

1229.3

361

1:58:42

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment