Of course you want an iMac Pro! But do you really need one for your development work? Most of the iMac Pro videos and reviews seem to focus on video and audio editing, which are certainly tasks that make use of the many cores that are available (8-18).
But software development is also a Pro task. What benefits does an iMac Pro bring to a software developer?
Typically most people will opt for a computer that probably has four cores such as found in the i5 and i7 series. These are used in the popular Macbook Pro and iMac models, for example. Four cores sure sounds like a lot so why would a developer need more?
What’s the benefit of multiple cores?
As I mentioned above, for video and audio rendering multiple cores are critical. The heaviest use of my CPU cores (I have a 6-core Mac Pro) happens when I’m editing and rendering videos, webinars and podcasts using apps such as Camtasia, GarageBand and Handbrake.
As a developer, your compiler can probably also make use of multiple cores. For example, Xojo uses as many cores as are available when compiling your 64-bit and ARM apps. If you have large projects that take a long time to compile, multiple cores can be a big help and make your development process more enjoyable.
But many of the other apps you run probably only really use a single core so you might think they don’t get any benefit from a multi-core system. But there is still a benefit to having multiple cores: running multiple single-core apps at once. The OS is smart and will run individual single-core apps on separate cores preventing any single app from having to share much CPU time and thus allowing more of your apps to run closer to full speed.
This is important because developers often run lots of apps at once. In particular:
- Development environments such as Xojo or Xcode
- iOS Simulator
- Virtual Machines for Windows/Linux/macOS (you’ll want to allocate cores to each OS)
- Database servers
- Web servers
- SQL tools
- Chrome (or Safari) with several windows and dozens of tabs
As far as Xojo itself goes, as mentioned above it will make use of multiple CPU cores when it is compiling using LLVM (64-bit and ARM apps). So if you have large projects, you will get a nice benefit from having more cores.
Because I’m often running apps that are really single-core, this means I also want to have good single-core performance. So it is important to balance the number of cores you have. An 8, 10, 14 or 18 core system typically results in each core having lower single-core performance. So don’t just assume that having more cores is better — find the right balance.
I consider four cores to be the absolute minimum that a developer should have. In the case of the iMac Pro, I think the base 8-core model is sufficient for most. Apparently the 10-core model has a slightly higher turbo boost clock speed, but benchmarks seem to show that each core runs at a lower clock speed than the 8-core when all the cores are being used heavily. I think the 14 and 18-core models are only needed for video production and even then only in special situations.
But another thing to keep in mind is: how hard can you push those cores? The more you push the CPU and its cores, the more heat it generates. Most four core computers are often consumer-grade and so don’t always have a great cooling system. You’ll notice this when loud fans kick on whenever you start to push all four cores. This is particularly noticeable with the iMac and MacBook Pro. But the iMac Pro has an excellent cooling system. All reports are that it runs silent no matter how hard it is being used.
So back to the iMac Pro…
I took a trip to the Apple Store take a first-hand look at the iMac Pro and do a quick test of it with Xojo. Unfortunately I did not get a lot of time on it as the store was packed and there were a lot of people waiting around to try it, but I was able to run a couple things. The model they had on display was the base 8-core iMac Pro ($5000).
One thing about the Macs in the Apple Store: they all require an admin password in order to install software into Applications. But happily, the Xojo DMG is just a simple drag and drop install and does not require an admin password or even that it be in the Application folder, so it was super-easy to set up for testing.
Here’s the iMac Pro in glorious space gray:
Launching Xojo is very quick: about 2-3 seconds. It takes about 6 seconds on my Mac Pro, but that can mostly be attributed to the much faster SSD in the iMac Pro.
Running the Eddie’s Electronics desktop app is also fast at maybe 4 seconds (64-bit version). On my Mac Pro this also takes about 6 seconds. Unfortunately, this is probably not a great test because the project is pretty small.
The Eddie’s Electronics web app started in about 8 seconds. On my Mac Pro this took about 11 seconds. In both cases Safari was already running — the iMac Pro would have likely had a bigger advantage otherwise. Again, the small project makes it a bit tricky to measure significant speed improvements.
Unfortunately I could not test an iOS app as the iMac Pro did not have Xcode installed so there was no iOS Simulator. They did have video editing software, but it seems to me the Apple Stores should also have Xcode installed on their iMac Pro display units.
Here’s a short video of my test runs so you can see how things worked, time it yourself and overall watch how snappy everything seems:
My primary computer is a 2009 Mac Pro that’s been upgraded to a 6-core CPU and 4K HiDPI graphics. My Mac Pro has a GeekBench single-core score of 2869 and a multi-core score of 12566. The base iMac Pro has a single-core score of 5021 and a multi-core score of 30637. So the iMac Pro measures at about 1.7 (single-core) to 2.4 (multi-core) times faster than my old Mac Pro.
Is the iMac Pro worth it? A tricked out iMac 5K runs about $3500 or so if you upgrade the memory yourself. For the extra $1500, the iMac Pro gives you:
- 8 cores, instead of 4, albeit at a lower clock speed (3.2 Xeon vs 4.2 i7, although turbo boost is closer: 4.2 vs. 4.5)
- Much quieter operation under load
- Lovely space gray color
- More ports
- 10GB Ethernet
- Better GPU
Or you can put the $1500 towards a 13″ MacBook Pro for traveling.
The iMac Pro is a beautiful, fast computer and although $5000 is expensive it seems to be a reasonable value.
If you are a fan of the all-in-one iMac design, I think it totally makes sense for a software developer.
But personally I’m waiting to see what Apple announces (hopefully this year) regarding their Mac Pro replacement. I really like being able to upgrade my computer over time as my needs change and parts become less expensive. Although the iMac Pro has upgradeable RAM and what appears to be an upgradeable CPU and SSD, taking it apart does not look like a fun time to me.