Skip to content

Latest commit

History

77 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Xcode Hardware Performance

These are the results from running Xcode 8 on a non-trivial open source project using various Macs. The goal is to give developers a relative idea of how each computer model compares to one another. Read the specifics and contributing sections for more info.

Once Xcode 9 is out of beta, we'll have to start over again. We're looking for ways to make this more reproducible and scientific, see #39.

🖥Computer ModelCPURAMFresh Build TimeIncremental Build TimeDate
🖥iMac 5K
512GB Flash, 27", Late 2015
4.0Ghz i732 GB0:280:06
Mac Pro Flash Storage, Late 20133.5 GHz 6-Core Xeon E532 GB0:300:05
💻MacBook Pro
Retina, 15", Mid 2015
2.8 GHz i716 GB0:390:07
💻MacBook Pro
Retina, 15", Mid 2015
2.5 GHz i716 GB0:420:09
💻MacBook Pro
Retina, 15", Mid 2012
2.3 GHz i716 GB0:460:08
💻MacBook Pro
Retina, 15", Early 2013
2.4 GHz i78 GB0:470:10
Mac Mini
Mid 2012, 512 SSD
2.3GHz Quad-Core i716GB0:500:09
💻MacBook Pro
Retina, 15", Mid 2014
2.2 GHz i716 GB0:510:07
💻MacBook Pro
Retina, 15", Late 2013
2.3 GHz i716 GB0:530:09
🖥iMac
HDD 1 TB, 27", Late 2012
3.4 GHz i78 GB0:540:12
💻MacBook Pro
Touch Bar, 15", Late 2016
2.9 GHz i716 GB0:540:17
💻MacBook Pro
15", Early 2011
2.0 GHz i78 GB1:000:13
💻MacBook Pro
15" Early 2011, SSD
2.0 GHz i78 GB1:010:10
💻MacBook Pro
Touch Bar, 15", Late 2016
2.9 GHz i716 GB1:040:26
💻MacBook Pro
13", Early 2015, 1TB SSD
3.1 Ghz i716 GB1:250:09
💻MacBook Pro
Retina, 13", Early 2015
2.7 GHz i58 GB1:350:11
💻MacBook Pro
13”, Mid 2012 256 SSD
2.5 GHz i58 GB2:080:19
💻MacBook Air
13", Mid 2012, 512 SSD
2 Ghz i78 GB2:100:11
💻MacBook
Retina, 12", Early 2016
1.2 GHz m58 GB2:100:12
💻MacBook
Retina, 12", Early 2015
1.2 GHz M8 GB2:280:12
💻MacBook
Retina, 12", Early 2015
1.1 GHz M8 GB3:000:12
💻MacBook Pro
13", Early 2011, 512 SSD
2.7 Ghz i78 GB2:300:16
💻MacBook Air
13", Mid 2013, 128 SSD
1.3 Ghz i54 GB2:580:24
💻MacBook Pro
13”, Mid 2010 512 SSD
2.4 GHz Intel Core 2 Duo8 GB3:010:24
🖥iMac
HDD 500 GB, 21.5", Mid 2010
3.06 GHz i312 GB3:590:14
🖥iMac
HDD 1 TB, 21.5", Late 2012
2.7 GHz i58 GB4:150:33

Specifications

For the test, I decided to use an app that I actually work on: eidolon.

For "fresh" builds, I cleaned the build folder (⌘⇧K) repeatedly until it worked with no permissions problems. Then I sat and waited for Xcode to index the project. I also made sure the simulator was closed, so these times include booting the simulator and launching the app. Then I hit ⌘R and start a timer, only ending it when the app had fully launched.

"Incremental" builds represent a more common use case: changing one file and recompiling with the simulator already running. I added print("hello!") to application(: didFinishLaunchingWithOptions:) and hit ⌘R, timing the time it took for the app to launch.

I repeated each test a few times and took their average times.

Contributing

It would be super-cool if we could perform the above tests on a variety of machines and consolidate the results here. You can follow the instructions to download the code and the project dependencies, and send a pull request adding your own results. I'd super-appreciate it! 🙇

Please note that this project is released with a Contributor Code of Conduct. By participating in this project, you agree to abide by [its terms](/Code of Conduct.md).

License

This work is licensed under a Creative Commons Attribution 4.0 International License.

About

Results from running Xcode on a non-trivial open source project using various Macs

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors