• This repository has been archived on 03/Jan/2022
  • Stars
    star
    1,134
  • Rank 41,064 (Top 0.9 %)
  • Language
  • License
    Other
  • Created about 9 years ago
  • Updated about 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

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

โš ๏ธ This repository is deprecated, but the results will stay around for posterity. I recommend Maxim Eremenko' XcodeBenchmark for comparing compile times on different Apple hardware. See below for more details. โš ๏ธ

Xcode Hardware Performance

These are the results from running Xcode 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.

Xcode 12

๐Ÿ–ฅ Computer Model CPU RAM Fresh Build Time Incremental Build Time Xcode Version Date & Commit Hash
๐Ÿ’ป MacBook Pro 13" (Late 2020) Apple M1 16 GB 0:21 0:04 12.3 2020-12-27 (commit)
๐Ÿ’ป MacBook Pro 15" (Mid 2018) i7-8850H (2,6 GHz) 16 GB 0:54 0:09 12.3 2020-12-27 (commit)
๐Ÿ’ป MacBook Pro 13" (Early 2015) i5-5257U (2.7 GHz) 16 GB 1:48 0:17 12.2 2020-11-20 (commit)
๐Ÿ’ป MacBook Pro 13" (Early 2015) i5-5257U (2.7 GHz) 16 GB 1:32 0:15 12.2 2020-11-20 (commit)
Mac Mini (Late 2020) Apple M1 16 GB 0:19 0:04 12.2 2020-11-20 (commit)
Mac Mini (2018) i7-8700B (3.2GHz) 32 GB 0:40 0:08 12.2 2020-11-25 (commit)
๐Ÿ’ป MacBook Pro (Late 2020) Apple M1 16 GB 0:35 0:04 12.2 2020-11-28 (commit)
๐Ÿ’ป MacBook Pro 16",
Retina, 2019
i9-9880H (2.3 GHz) 32 GB 0:31 0:07 12.2 2020-11-26 (commit)
๐Ÿ’ป MacBook Pro 15" (Mid 2015) i7-4770HQ (2.2 GHz) 16 GB 0:55 0:15 12.2 2020-11-26 (commit)
๐Ÿ–ฅ iMac Pro 27" (Late 2017) 3.2 GHz 8-Core Intel Xeon W 32 GB 0:33 0:07 12.2 2020-12-07 (commit)
๐Ÿ’ป MacBook Air (Late 2020) Apple M1 16 GB 0:33 0:06 12.2 2020-12-07 (commit)
๐Ÿ’ป MacBook Air (Late 2018) I5-8210Y (1.6 GHz) 8 GB 2:15 0:20 12.2 2020-12-07 (commit)
๐Ÿ–ฅ MacBook Air (Late 2020) Apple M1 8 GB 0:20 0:08 12.4 2021-3-13 (commit)
โŒจ๏ธ Custom PC AMD Ryzen 5 3600 3.6 GHz 16 GB 0.34 0.08 12.4 2021-3-21

Xcode 11

๐Ÿ–ฅ Computer Model CPU RAM Fresh Build Time Incremental Build Time Xcode Version Date & Commit Hash New Build System?
๐Ÿ–ฅ iMac 27"
512GB SSD, 2020
3.8 GHz i7 64 GB 0:26 0:07 11.7 2020-09-14 (commit) โœ”๏ธ
๐Ÿ–ฅ iMac 27"
512GB SSD, 2020
3.8 GHz i7 8 GB 0:33 0:05 11.7 2020-09-14 (commit) โœ”๏ธ
๐Ÿ–ฅ iMac 27"
512GB SSD, 2020
3.8 GHz i7 72 GB 0:29 0:07 11.7 2020-09-14 (commit) โœ”๏ธ
โŒจ๏ธ Custom PC Intel i9 9940X 4.6GHz(all cores) 64 GB 0:27 0:08 11.4.1 2020-05-15
โŒจ๏ธ Custom PC AMD Ryzen 9 3950X 4.3GHz(all cores) 32 GB 0:21 0:03 11.4 2020-04-16 (commit) โœ”๏ธ
โŒจ๏ธ Custom PC Intel i7-10700k 5.0GHz(all cores) 32 GB 0:24 0:07 11.6 2020-07-25 โœ”๏ธ
๐Ÿ–ฅ iMac 27"
512GB SSD, 2019
3.6 GHz i9 40 GB 0:26 0:5 11.3.1 2020-01-22 (commit) โœ”๏ธ
โŒจ๏ธ Custom PC QEMU AMD Ryzen 9 3900X (20 cores qemu) 48 GB 0:27 0:07 11.6.0 2020-07-25 (commit) โœ”๏ธ
๐Ÿ–ฅ iMac Pro
10 Core, 2017
3.0 GHz Xeon W 64 GB 0:28 0:08 11.4.1 2020-04-23 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro 16",
Retina, 2019,
500 GB SSD
i9-9980HK 2.4 GHz 64 GB 0:32 0:10 11.4 2020-04-02 (commit)
โŒจ๏ธ Custom PC i7-9700K 3.6 GHz (Stock) 32 GB 0:35 0:06 11.2.1 2019-11-26 (commit) โœ”๏ธ
โŒจ๏ธ Custom PC i9-9900K 3.6 GHz (Stock) 64 GB 0:35 0:06 11.3.1 2020-02-29 (commit) ?
Mac Mini,
Late 2018, 512GB SSD
3.2 GHz i7 32 GB 0:37 0:11 11.3.1 2020-01-15 (commit) โœ”๏ธ
Mac Mini,
Late 2018, 512GB SSD
3.2 GHz i7 32 GB 0:37 0:11 11.3.1 2020-01-15 (commit) โŒ
๐Ÿ’ป MacBook Pro 16",
Retina, 2019,
1 TB SSD
i9-9880H 2.3 GHz 32 GB 0:39 0:09 11.2.1 (11B500) 2019-11-26 (commit) โœ”๏ธ
Mac Pro,
1 TB SSD,
Late 2019
3.2 GHz 16-Core Xeon 32 GB 0:40 0:06 11.3 2020-01-10 ?
๐Ÿ’ป MacBook Pro 16",
Retina, 2019,
1 TB SSD
i9 2.4 GHz 32 GB 0:40 0:07 11.3 2020-01-10 ?
๐Ÿ’ป MacBook Pro 15",
Retina, Mid 2015,
512GB SSD
2.5 GHz i7-4870HQ 16 GB 0:45 0:07 11.3.1 2020-01-23 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro 15",
Retina, 2018,
1TB SSD
2,6 GHz 6-Core i7 32 GB 0:44 0:09 11.4 2020-05-12 (pull) โœ”๏ธ
Mac Pro, 2013, 512GB Flash storage 3.3 GHz Xeon E5-2667v2 64 GB 0:54 0:08 11.3.1 2020-02-29 (commit) ?
๐Ÿ–ฅ iMac 5K 27",
Late 2014,
1 TB SSD
4.0 GHz i7-4790K 32 GB 0:57 0:22 11.3.1 2020-02-07 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro 15",
Retina, 2016,
512GB SSD
2.7 GHz i7-6820HQ 16 GB 0:59 0:08 11.3.1 2020-01-18 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro 15",
Retina, 2012,
751GB SSD
2.7 GHz i7-3820QM 16 GB 1:02 0:16 11.3.1 2020-02-28 (commit) โœ”๏ธ
Mac Mini,
Late 2012, 250GB SSD (Samsung 850 EVO)
2.3 GHz i7 16 GB 1:06 0:17 11.3.1 2020-01-15 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro 15",
Retina, 2019,
512GB SSD
2.3 GHz i9 16 GB 1:10 0:05 11.3.1 2020-02-16 (commit) โœ”๏ธ
๐Ÿ–ฅ iMac 27"
512GB SSD, Late 2013
3.2 GHz i5 16 GB 1:13 0:21 11.3 2019-11-06 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro 13",
Retina, Mid 2014,
256GB SSD
2.6 GHz i5-4278U 8Gb 1:43 0:27 11.2 2019-11-06 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro 15",
Mid 2009,
240GB SSD
2,66 GHz Intel Core 2 Duo 8 GB 2:38 0:26 11.4 2020-02-29 (commit) ?
โŒจ๏ธ Custom PC AMD Ryzen 7 1700X @ 3.75GHz 16 GB 0:41 0:06 11.5 2020-06-23 (commit]

Xcode 10

๐Ÿ–ฅ Computer Model CPU RAM Fresh Build Time Incremental Build Time Xcode Version Date & Commit Hash New Build System?
โŒจ๏ธ Custom PC i9-9900K 3.6 GHz (Stock) 32 GB 0:17 0:05 10.1 2019-05-23 โœ”๏ธ
Mac Mini,
Late 2018, 256GB SSD
3.2 GHz i7-8700B 32 GB 0:25 0:02 10.2.1 2019-07-02 (commit) โœ”๏ธ
โŒจ๏ธ Custom PC i9-9900K 4.8 GHz 32 GB 0:25 0:07 10.1 2018-11-04 โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2018
2,6 GHz i7-8850H 16 GB 0:28 0:09 10.1 2019-01-12 (commit) โœ”๏ธ
๐Ÿ–ฅ iMac 5K 27",
Early 2019,
512GB SSD
3.6 GHz i9-9900K 16 GB 0:29 0:05 10.2.1 2019-06-06 (commit) โœ”๏ธ
โŒจ๏ธ Custom PC 4.0 GHz i7-8086K 32 GB 0:31 0:11 10.1 2019-01-10 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2019
2.3 GHz i9-9880H 16 GB 0:32 0:05 10.3 2019-09-03 (commit) โœ”๏ธ
Mac Mini,
Late 2018, 512GB SSD
3.2 GHz i7-8700B 16 GB 0:32 0:07 10.1 2018-11-15 (commit) โœ”๏ธ
Mac Mini,
Late 2018, 512GB SSD
3.2 GHz i7 32 GB 0:33 0:12 10.2.1 2020-01-15 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2018
2.2 GHz i7-8750H 16 GB 0:35 0:08 10.1 2018-11-16 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2015
2.8 GHz i7-4980HQ 16 GB 0:36 0:038 10.0 2018-09-24 (commit) โœ”๏ธ
๐Ÿ–ฅ iMac 5K 27",
Early 2019,
256GB SSD
3.0 GHz i5-8500 40 GB 0:38 0:08 10.3 2019-08-07 โœ”๏ธ
๐Ÿ–ฅ iMac 5K 27",
Late 2014,
1 TB SSD
4.0 GHz i7-4790K 32 GB 0:40 0:13 10.1 2019-03-08 (commit) โœ”๏ธ
Mac Pro
Flash Storage, Late 2013
2.7 GHz 12-Core Xeon E5 64 GB 0:40 0:08 10.1 2018-12-15 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2012
2.6 GHz i7-3720QM 16 GB 0:40 0:042 10.0 2018-09-13 (commit) โœ”๏ธ
Mac Mini,
Late 2018, 256GB SSD
3.0 GHz i5-8500B 8 GB 0:42 0:08 10.1 2018-11-15 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Touch Bar, 15", Mid 2018
2.9 GHz i9-8950HK 32 GB 0:43 0:06 10.2 2019-05-27 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2015
2.5 GHz i7-4870HQ 16 GB 0:46 0:10 10.1 2019-03-03 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 13", 2018, Four Thunderbolt 3 Ports
2.7 GHz i7-8559U 16 GB 0:49 0:09 10.2.1 2019-08-01 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2014
2.8 GHz i7-4980HQ 16 GB 0:49 0:09 10.1 2018-11-16 (commit) โœ”๏ธ
Mac Mini,
Late 2012, 250GB SSD (Samsung 850 EVO)
2.3 GHz i7 16 GB 1:03 0:21 10.2.1 2020-01-15 (commit) โœ”๏ธ
Mac Mini,
Late 2012
2.3 GHz i7-3615QM 8 GB 1:05 0:14 10.1 2018-11-15 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 13", Early 2015
2.7 GHz i5-5257U 8 GB 1:26 0:12 10.1 2019-02-15 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Air
13", Mid 2017
1.8 GHz i5-5350U 8 GB 1:47 0:15 10.0 2018-10-01 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Non-Retina, 13", Mid 2012,
180 GB SSD
2.5 GHz i5-3210M 16 GB 2:35 0:17 10.1 2018-11-16 (commit) โœ”๏ธ

Xcode 9

๐Ÿ–ฅ Computer Model CPU RAM Fresh Build Time Incremental Build Time Xcode Version Date & Commit Hash New Build System?
๐Ÿ’ป MacBook Pro
13", Mid-2017, 256GB SSD
2.3 GHz i5 (I5-7360U) 8 GB 01:12 0:12 9.2 2018-06-29 โœ”๏ธ
๐Ÿ’ป MacBook Pro
13", Mid-2017, 256GB SSD
2.3 GHz i5 (I5-7360U) 8 GB 01:42 0:12 9.2 2018-06-29 โŒ
Mac Mini,
Mid-2011, 128GB SSD
2.3 GHz i5 (I5-2415M) 8 GB 02:04 0:20 9.2 2018-07-04 โœ”๏ธ
Mac Mini,
Mid-2011, 128GB SSD
2.3 GHz i5 (I5-2415M) 8 GB 03:12 0:20 9.2 2018-07-04 โŒ
โŒจ๏ธ Custom PC
Early 2018
i7-8700K 4.70+ GHz 32 GB 0:19 0:07 2018-03-11 (commit) โœ”๏ธ
โŒจ๏ธ Custom PC
Early 2016
i7-6700k 4.5 GHz 32 GB 0:23 0:07 9.4.1 2018-05-19 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 13", Mid 2018
2.7 GHz i7-8559U 16 GB 0:27 0:09 9.4.1 2018-05-19 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 15", 2018
2.9 GHz i9 32 GB 0:30 0:04 2018-05-19 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2018
2.9 GHz i9 32 GB 0:32 0:04 2018-05-19 (commit) โœ”๏ธ
โŒจ๏ธ Custom PC
Early 2018
i7-7700k 4.5 GHz 16 GB 0:35 0:05 2018-03-10 โœ”๏ธ
Mac Pro
Flash Storage, Late 2013
3.7 GHz 4-Core Xeon E5 32 GB 0:35 0:11 9.4.1 2018-06-20 (commit) โœ”๏ธ
โŒจ๏ธ Custom PC
Early 2018
i7-8700K 4.70+ GHz 32 GB 0:36 0:07 2018-02-19 (commit) โŒ
โŒจ๏ธ Custom PC
Late 2015
i7-4790k 4.0 GHz 32 GB 0:40 0:07 2018-02-22 (commit) โŒ
๐Ÿ–ฅ iMac Pro
10 Core, Late 2017
3 GHz Intel Xeon W 64 GB 0:41 0:07 2017-12-28 โŒ
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2018
2.2 GHz i7 32 GB 0:42 0:09 2018-05-19 (commit) โœ”๏ธ
๐Ÿ–ฅ iMac Pro
18 Core, Late 2017
2.3 GHz Intel Xeon W 128 GB 0:47 0:07 2018-03-07 (commit) โŒ
โŒจ๏ธ Custom PC
Early 2018
i7-7700k 4.5 GHz 16 GB 0:48 0:07 2018-03-10 โŒ
๐Ÿ–ฅ iMac 27"
5K 1TB SSD, Mid 2017
4,2 GHz i7 40 GB 0:49 0:08 2018-01-18 โŒ
๐Ÿ’ป MacBook Pro
Retina, 15", 2017
2.9 GHz i7 16 GB 0:49 0:16 2017-10-09 โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 15", 2017
2.9 GHz i7 16 GB 0:50 0:15 2017-10-09 โŒ
๐Ÿ’ป MacBook Pro
Retina, 15", 2015
2.5 GHz i7 16 GB 0:51 0:09 9.2 2018-03-02 (commit) โœ”๏ธ
๐Ÿ–ฅ MacPro Late 2013 2.7 GHz 12core Intel Xeon E5 64 GB 0:54 0:10 2018-03-07 (commit) โŒ
๐Ÿ–ฅ iMac 27"
256GB SSD, Late 2013
3.2 GHz i5 24 GB 0:56 0:10 9.2 2018-03-02 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 15", 2016
2.9 GHz i7 16 GB 1:04 0:09 9.4.1 2018-07-18 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2012
2.6 GHz i7-3720QM 16 GB 1:04 0:13 9.4.1 2018-05-19 (commit) โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 15", 2016
2.9 GHz i7 16 GB 1:06 0:10 9.4.1 2018-07-18 (commit) โŒ
๐Ÿ’ป MacBook Pro
Retina, 15", Late 2013
2.6 GHz i7 16 GB 1:09 0:12 2018-02-28 โœ”๏ธ
๐Ÿ’ป MacBook Pro
Retina, 13", Early 2015
2.7 GHz i5 8 GB 1:12 0:18 2018-05-19 (commit) โœ”๏ธ
Mac Pro
Flash Storage, Late 2013
3.7 GHz 4-Core Xeon E5 32 GB 1:15 0:10 9.4.1 2018-06-20 (commit) โŒ
๐Ÿ’ป MacBook Pro
Retina, 15", 2015
2.8 GHz i7 16 GB 1:17 0:12 2018-01-02 โŒ
๐Ÿ’ป MacBook Pro
Retina, 15", 2015
2.5 GHz i7 16 GB 1:20 0:09 9.2 2018-03-02 (commit) โŒ
๐Ÿ–ฅ iMac 27"
256GB SSD, Late 2013
3.2 GHz i5 24 GB 1:27 0:10 9.2 2018-03-02 (commit) โŒ
Mac Mini
Mid 2012, 512 SSD
2.3 GHz Quad-Core i7 16 GB 1:32 0:18 2017-10-20 โŒ
๐Ÿ’ป MacBook Pro
Retina, 15", 2017
2.8 GHz i7 16 GB 1:50 0:14 โŒ
โŒจ๏ธ Custom Laptop
Mid 2018
i5-8250u 3.4 GHz 16 GB 1:58 0:10 9.3 2018-05-11 โŒ
๐Ÿ–ฅ iMac 27"
120GB SSD, Mid 2010
2.93 GHz i7 8 GB 2:05 0:16 9.3 2018-03-21 โŒ
๐Ÿ’ป MacBook Pro
Retina, 13", Early 2015
2.7 GHz i5 8 GB 2:25 0:31 2018-05-19 (commit) โŒ
๐Ÿ’ป MacBook
Retina, 15", Mid 2012
2.6 GHz i7 8 GB 2:26 0:23 โŒ
๐Ÿ’ป MacBook Pro
Retina, 13", 2014
2.6 GHz i5 8 GB 2:30 0:23 2018-01-04 โŒ
๐Ÿ’ป MacBook Pro
13", Mid 2012
2.9 GHz i7 8 GB 2:30 0:23 โŒ

Xcode 8

๐Ÿ–ฅ Computer Model CPU RAM Fresh Build Time Incremental Build Time Date
๐Ÿ–ฅ iMac 5K
512GB Flash, 27", Late 2015
4.0 GHz i7 32 GB 0:28 0:06
Mac Pro
Flash Storage, Late 2013
3.5 GHz 6-Core Xeon E5 32 GB 0:30 0:05
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2015
2.8 GHz i7 16 GB 0:39 0:07
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2015
2.5 GHz i7 16 GB 0:42 0:09
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2012
2.3 GHz i7 16 GB 0:46 0:08
๐Ÿ’ป MacBook Pro
Retina, 15", Early 2013
2.4 GHz i7 8 GB 0:47 0:10
Mac Mini
Mid 2012, 512 SSD
2.3GHz Quad-Core i7 16GB 0:50 0:09
๐Ÿ’ป MacBook Pro
Retina, 15", Mid 2014
2.2 GHz i7 16 GB 0:51 0:07
๐Ÿ’ป MacBook Pro
Retina, 15", Late 2013
2.3 GHz i7 16 GB 0:53 0:09
๐Ÿ–ฅ iMac
HDD 1 TB, 27", Late 2012
3.4 GHz i7 8 GB 0:54 0:12
๐Ÿ’ป MacBook Pro
Touch Bar, 15", Late 2016
2.9 GHz i7 16 GB 0:54 0:17
๐Ÿ’ป MacBook Pro
15", Early 2011
2.0 GHz i7 8 GB 1:00 0:13
๐Ÿ’ป MacBook Pro
15" Early 2011, SSD
2.0 GHz i7 8 GB 1:01 0:10
๐Ÿ’ป MacBook Pro
Touch Bar, 15", Late 2016
2.9 GHz i7 16 GB 1:04 0:26
๐Ÿ’ป MacBook Pro
13", Early 2015, 1TB SSD
3.1 Ghz i7 16 GB 1:25 0:09
๐Ÿ’ป MacBook Pro
Retina, 13", Early 2015
2.7 GHz i5 8 GB 1:35 0:11
๐Ÿ’ป MacBook
Retina, 12", Mid 2017
1.4 GHz i7 16 GB 1:49 0:16
๐Ÿ’ป MacBook Pro
13", Mid 2012 256 SSD
2.5 GHz i5 8 GB 2:08 0:19
๐Ÿ’ป MacBook Air
13", Mid 2012, 512 SSD
2 Ghz i7 8 GB 2:10 0:11
๐Ÿ’ป MacBook
Retina, 12", Early 2016
1.2 GHz m5 8 GB 2:10 0:12
๐Ÿ’ป MacBook Pro
13", Late 2013 256 SSD
2.4 GHz i5 8 GB 2:17 0:23
๐Ÿ’ป MacBook
Retina, 12", Early 2015
1.2 GHz M 8 GB 2:28 0:12
๐Ÿ’ป MacBook Pro
13", Early 2011, 512 SSD
2.7 Ghz i7 8 GB 2:30 0:16
๐Ÿ’ป MacBook Air
13", Mid 2013, 128 SSD
1.3 Ghz i5 4 GB 2:58 0:24
๐Ÿ’ป MacBook
Retina, 12", Early 2015
1.1 GHz M 8 GB 3:00 0:12
๐Ÿ’ป MacBook Pro
13", Mid 2010 512 SSD
2.4 GHz Intel Core 2 Duo 8 GB 3:01 0:24
๐Ÿ–ฅ iMac
HDD 500 GB, 21.5", Mid 2010
3.06 GHz i3 12 GB 3:59 0:14
๐Ÿ–ฅ iMac
HDD 1 TB, 21.5", Late 2012
2.7 GHz i5 8 GB 4:15 0:33

Specifications

For the test, I decided to use an app that I actually work on: eidolon. Unlike most iOS apps, the project is stable and not under active development, so it's a prime candidate for accurate-ish benchmarking.

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 (iPad Air 2) was closed, so these times include booting the simulator and launching the app. Each version of Xcode above should use the latest iOS version that it ships with. 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. Below are the instructions to download the code (compatible with Apple Silicon thanks to @pawelurb), and send a pull request adding your own results. I'd super-appreciate it! ๐Ÿ™‡

This repository is deprecated, but the results will stay around for posterity. See below for more.

git clone -b apple-silicon-compatibility https://github.com/artsy/eidolon.git
cd eidolon
bundle install
bundle exec fastlane oss

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.

Repo Status

This repository was created in 2015 when I worked at Artsy. The main project I worked on at the time (Eidolon) was open source, making it an ideal test case for measuring Xcode compile times of real-world apps. However, I stopped working at Artsy in 2021 and Artsy is no longer maintaining Eidolon for compatibility with the latest versions of Swift, Xcode, CocoaPods, and open source dependencies.

I could continue maintaining the repo for Artsy, since Eidolon remains open source, but honestly, keeping this Xcode benchmarking repo maintained is a lot of work, and a better repository exists.

So at the end of 2021, I'm deprecating this repository. It was a hell of a ride. I'm grateful to Artsy for the opportunity to leverage their code for the good of the iOS developer community. And I'm most grateful to dozens of contributors who made this a valuable resource. Thank you, everyone.

License

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

More Repositories

1

C-41

C-41 is an application to help people develop film at home by providing a series of "recipes" for photographers to use.
Objective-C
2,059
star
2

FunctionalReactivePixels

A demonstration of how to use FRP with ReactiveCocoa in an iOS context using the 500px API.
Objective-C
702
star
3

AFTabledCollectionView

How to display a UICollectionView within a UITableViewCell
Objective-C
549
star
4

UICollectionView-NSFetchedResultsController

How to use UICollectionView with NSFetchedResultsController
439
star
5

Collection-View-in-a-Table-View-Cell

Sample code for my tutorial
Swift
393
star
6

Nimble-Snapshots

Nimble matchers for FBSnapshotTestCase.
Swift
317
star
7

danger-ruby-swiftlint

A Danger plugin for SwiftLint.
Ruby
203
star
8

UICollectionViewFlowLayoutExample

UICollectionViewFlowLayout Example
Objective-C
198
star
9

ARCollectionViewMasonryLayout

Objective-C
184
star
10

danger-swiftlint

Automated Swift linting on pull requests
Swift
149
star
11

ASHSpringyCollectionView

Objective-C
140
star
12

second_curtain

Upload failing iOS snapshot tests cases to S3
Objective-C
130
star
13

blog

This is my website, a static site generated with Gatsby.
MDX
112
star
14

UICollectionViewExample

Objective-C
100
star
15

LongPlay

Long Play
Objective-C
93
star
16

AFImageDownloader

Downloads JPEG images asynchronously and decompresses them on a background thread.
Objective-C
88
star
17

Forgeries

Helper methods for testing iOS code
Objective-C
83
star
18

yourfirstswiftapp

Swift
66
star
19

FunctionalReactiveAwesome

Sample Code for AltConf 2015 talk on FRP ๐ŸŽ‰
Swift
57
star
20

NSFetchedResultsController-MVVM

NSFetchedResultsController using MVVM
Objective-C
55
star
21

Swift-RAC-Macros

(Temporary) Replacements for the RAC and RACObserve macros in Swift
Swift
54
star
22

UIView-BooleanAnimations

Perform changes to UI with or without animations, depending on a variable.
Objective-C
47
star
23

danger-rubocop

Danger plugin for Rubocop
Ruby
43
star
24

peerlab.community

Worldwide directory of peer labs, instructions on starting your own.
HTML
43
star
25

DOOM-CPU-Monitor

CPU monitor that displays how much load your CPU is under via the dying face from the video game DOOM.
Objective-C
42
star
26

Newtonian-UICollectionView

Objective-C
40
star
27

pragma-2015-rx-workshop

Materials for my Pragma 2015 workshop on reactive programming
Swift
37
star
28

Your-First-iOS-App

Sample code for "Your First iOS App", the book
Objective-C
35
star
29

Angular

Making an Othello/Reversi clone
Objective-C
34
star
30

NSSpain2014

Annotated playground for my presentation at NSSpain 2014
Swift
32
star
31

MBLTDev

Sample code for MBLTDev
Swift
31
star
32

Bleach

iOS 9 app extension to block ads
27
star
33

Swift-Course

A small demo of Swift for newcomers
Swift
26
star
34

AFActivityIndicatorView

A ground-up, home-made implementation of UIActivityIndicatorView
Objective-C
24
star
35

PXSaver

Super hacky screen saver for OS X I wrote in a few hours while drinking
Objective-C
23
star
36

FunctionalReactiveDemo

A small demonstration of how to use ReactiveCocoa in iOS applications
Objective-C
23
star
37

ReactiveMoya

Swift
22
star
38

UIAlertController-Example

A demonstration of how to use Apple's hot new UIAlertController class
Swift
20
star
39

500px-API-Test

500px recently opened their API to the public. I want to try it out.
19
star
40

Haste

NSTimer Extension for Swift
Swift
18
star
41

twelease

๐Ÿ—ฃ A small Express server for automatically tweeting about new git tags
TypeScript
18
star
42

cocoapods-superdeintegrate

๐Ÿ’ฃ
Ruby
16
star
43

WhiskeyList

Objective-C
15
star
44

cocoapods-chillax-swift

CocoaPods plugin for disabling compiler optimizations for specific pods
Ruby
13
star
45

RACAlertAction

UIAlertAction subclass with support for ReactiveCocoa
Objective-C
13
star
46

hasValue

Reimplementing hasValue in Swift.
Ruby
11
star
47

UIView-ShinkTo

Shrinks any UIView instance to a point in a view similar to the iOS Mail app
Objective-C
11
star
48

FoundationOperators

Operators overloading for the Foundation (so we can finally just nsnumber + nsnumber)
Swift
10
star
49

canadian-measurements

Since moving to Europe, I get asked a lot about Canada's adoption of the metric system. Here it is.
9
star
50

production-swift-code

Sample code for my upcoming book
8
star
51

stylesheet

My custom user stylesheet for making the web less shitty.
CSS
7
star
52

EuroTrip-2015

We'll be in Europe for most of May. This repo is used to organize our travel plans.
7
star
53

cornell-rx-materials

Swift
6
star
54

category-theory-exercises

Swift
6
star
55

buggy

A Slackbot that makes it easy to organize bug bashes
Ruby
6
star
56

UIApplication-Keychain-Access

This is a library to abstract access to the keychain on iOS devices.
5
star
57

graphql-depth-limit

Limit the complexity of your GraphQL queries based on depth.
JavaScript
5
star
58

trumpsoundboard

HTML
4
star
59

Simple-OAuth

Simple Objective-C OAuth
Objective-C
4
star
60

FunctionalDemo

A short demo of functional programming on iOS using RXCollections
Objective-C
4
star
61

tsnyc-tslint-rules

Materials for my October 30th talk at TypeScript NYC
TypeScript
3
star
62

task-list-checker

JavaScript
3
star
63

pride.watch

I'm going to make a gallery of Apple Watch watch faces that are pride flags ยฏ\_(ใƒ„)_/ยฏ
HTML
3
star
64

peril-settings

Settings for my personal Peril server
TypeScript
2
star
65

static-keys-test

Objective-C
2
star
66

screensaver

JavaScript
2
star
67

FITC-SCREENS

Demo repo for FITC SCREENS
2
star
68

test-repo

test repo for twelease
2
star
69

500px-Behind-The-Scenes

Source Materials for the 500px Behind The Scenes FITC Screens Presentation
2
star
70

ashfurrow

This is the readme repo for my GitHub profile.
2
star
71

ScienceDog

A simple Haskell web app written using the Happstack-lite web framework
1
star
72

mastodon-technology

Ruby
1
star
73

hfm-exercises

My solutions to the Haskell-for-Mac Exercises
Haskell
1
star
74

TumblrSharing

Simple sharing to Tumblr's v2 OAuth API
Objective-C
1
star
75

colourschemes

Some Xcode 4+ colour schemes I like
1
star
76

minsk

Code from Mobile Developer & Business Day
Swift
1
star
77

tslint-playground

A playground repo for me to experiment with writing custom TSLint rules
TypeScript
1
star
78

AnyoneCanLearn

Core beliefs, resources, and planning for the organization.
1
star
79

empty-podspec

Repo for an empty, modifiable podspec. Pay this repo no attention.
Ruby
1
star
80

ios-13-uiimage-crash

Objective-C
1
star