Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

vjson

macrumors newbie
Original poster
Feb 13, 2020
23
16
Hi everyone,

To begin, I want to make it clear to anyone reading this thread that I have probably watched ALL reviews of the iMac 2020 27" on youtube, and most of the various threads on these forums regarding the upgrade options and performance benchmarks for this computer. Seriously, I've spent so many hours researching my upcoming iMac purchase that it's embarrassing to even admit.

Now that we got that out of the way..!

I'm a software developer using a 2011 27" iMac that I over the past two years have upgraded with a 3.4ghz i7, 500gb ssd, 16gb ram and a K2100M gpu, and the system is honestly working surprisingly well for its age. Thanks to the switched out gpu I've managed to install Catalina and can therefore use XCode 11. However, I have random crashes and reboots when the computer has been asleep for a while, I'll most likely not be able to install Big Sur and the new XCode 12, and the cpu is ridiculously slow compared to intel's 10th gen. In other words, it's time to buy a new computer.

Since I'm a software developer, compile times and being able to run VMs, many docker containers and multiple IDEs with large projects simultaneously is what I want my new iMac to handle flawlessly. Therefore I'm definitely going with the i9 over the i7. I don't care at all that the maximum performance gain I'll get from this probably is no more than 10% (and only when the workload is parallelised and heavy), because that's still a performance gain. So saving money by going i7 and instead upgrading the gpu because it's more bang for the buck is irrelevant in my case, because highly doubt the faster gpu will help with compile times, etc.

Furthermore, I do zero (!) video editing, zero gaming (might try some games in boot camp for fun though), and after selling my pro camera equipment I only shoot with my iphone nowadays, so no RAW editing in LR/PS either.

Based on all these parameters, wouldn't the smartest config for me to order be the mid tier iMac with the Radeon 5300 gpu, and just upgrade the cpu, storage and third-party ram? I have yet to see a single person go for this kind of config, with the most expensive cpu and the cheapest gpu, as every single person who owns an iMac seems to be a pro video editor and only care about final cut render times🤨

Correct me if I'm wrong, but the Radeon 5300 should be powerful enough to drive the built-in display, playback 4k videos, with zero problems, right? And in that case, why even spend money for the pricier top tier iMac, where the only difference from my config would be a mandatory 5500XT over the 5300?

The only downside I can imagine might be a lower resale value due to most people wanting those beefier gpus, but other than that, am I missing something? Will the 5300 in any way bottleneck the cpu for the type of work I do? Or might it even be the other way around, that the weaker gpu gives more "room" for the i9 when it's being pushed to its limits?
 
I don't see any flaws in your reasoning. As for resale. It'll effect it but not nearly as much as the initial price difference when new.
 
I think the mid tier option would work for you. But the high end model with the i7 would probably be cheaper on Labor Day.
 
I don't see any flaws in your reasoning. As for resale. It'll effect it but not nearly as much as the initial price difference when new.
Thanks, I already feel less crazy about my reasoning now😊
I think the mid tier option would work for you. But the high end model with the i7 would probably be cheaper on Labor Day.
That's an interesting thought, regarding Labor Day. Unfortunately we don't have that in Sweden where I live, so doubt I'll see any price drop here :(
 
So which SSD option are you going with and how much RAM do you plan to install?
 
So which SSD option are you going with and how much RAM do you plan to install?
1TB SSD, and I'll start out with 32GB (2x16) RAM, and if I end up needing more RAM down the road I'll fill the remaining two slots with an additional 2x16GB for 64GB total. Would be nice to have 2TB SSD, but I think I can manage with 1TB for now because I'm already stretching my budget for this setup, and could expand with external SSD in the future if I run out of space.
 
Since I'm a software developer, compile times and being able to run VMs, many docker containers and multiple IDEs with large projects simultaneously is what I want my new iMac to handle flawlessly. Therefore I'm definitely going with the i9 over the i7
Totally justified and good choice. I’m software developer too and I’d probably go with the i9 too.

Based on all these parameters, wouldn't the smartest config for me to order be the mid tier iMac with the Radeon 5300 gpu, and just upgrade the cpu, storage and third-party ram? I have yet to see a single person go for this kind of config, with the most expensive cpu and the cheapest gpu, as every single person who owns an iMac seems to be a pro video editor and only care about final cut render times🤨
This is were things get a bit weird.

For resell value (you must know that the resell of this imac will probably be far, far less than it should be because of Apple Silicon transition, so anyone buying your iMac in 4-5 years will be buying something that will be likely unsupported with software slowly disappearing), I’d go at least with a 5500XT.

Correct me if I'm wrong, but the Radeon 5300 should be powerful enough to drive the built-in display, playback 4k videos, with zero problems, right?
It will do it. Playback isn’t hard thing to do. Where it could be harder is with driving multiple external displays.

My “dream” setup would be a 2020 iMac with 2 Dell U2720 4K in portrait mode. It’s been more than 6 years I drive my MacBook Pro with builtin display and two external monitors. Going from 3 to 2 monitors or even 1 is something I can’t do. Once you work like this you become a princess, I admit.

That’s why I‘d consider at least the 5500XT, to be sure I won‘t have any lag even in 5-6-7 years (the time I usually keep my computers, my compute server is even 9 years old).

So I would at least go with the tier-3 iMac, add the i9, add the storage I need (1 TB Since I have a big NAS) and buy 2x32 GB Crucial memory to keep two more slots for future upgrade to 128 GB if required (having the possibility to old in RAM a complete dataset is very appealing and something usually possible only on big servers). If you want to upgrade in future chose Crucial RAM and nothing else. This is the only brand you have the guarantee to have the exact same ICs on the memory modules. With OWC, many people complaints that they receive mixed modules with Hynix and Micron DRAM, making it impossible to run the memory at full speed.

Or might it even be the other way around, that the weaker gpu gives more "room" for the i9 when it's being pushed to its limits?

No, because idle power consumption is equal between all GPUs or almost. It’s negligeable. It’s when both CPU and GPU are solicited to max capacity that there might be a gain on the CPU side but I even doubt.
 
I might pick a 2TB SSD upgrade over the i9. I would need to see benchmarks first of course.
 
But benchmarks can‘t measure everything.

Maybe not, but the max write speeds of the 1TB and 2TB SSDs shouldn't be that hard to measure. I suspect the i7 with a 2TB SSD will build code faster than an i9 with a 512 SSD. I may be wrong of course and I have no idea if an i9 with 1TB will be faster than an i7 with 2TB. The performance advantages of larger SSDs level off after 1TB I believe.
 
Maybe not, but the max write speeds of the 1TB and 2TB SSDs shouldn't be that hard to measure. I suspect the i7 with a 2TB SSD will build code faster than an i9 with a 512 SSD. I may be wrong of course and I have no idea if an i9 with 1TB will be faster than an i7 with 2TB. The performance advantages of larger SSDs level off after 1TB I believe.

That's definitely an interesting aspect to consider. My plan is i9 + 1TB, but it would be interesting to know how it compares in real world scenarios to i7 + 2TB.
 
That's definitely an interesting aspect to consider. My plan is i9 + 1TB, but it would be interesting to know how it compares in real world scenarios to i7 + 2TB.

What sort of software do you develop? What languages do you use?
 
Maybe not, but the max write speeds of the 1TB and 2TB SSDs shouldn't be that hard to measure. I suspect the i7 with a 2TB SSD will build code faster than an i9 with a 512 SSD. I may be wrong of course and I have no idea if an i9 with 1TB will be faster than an i7 with 2TB. The performance advantages of larger SSDs level off after 1TB I believe.
Sequential speed is nothing when compiling. Yes, there are a couple of hundred of MB/s more in 1 TB vs 512 GB, and probably even less difference between 1 and 2 TB, but this is in sequential speed. The difference is very minimal when comparing real world scenarios. Code files are small, very small, and has nothing to do with sequential speeds.

But compiling with two more cores can reduce compile time by a lot and can, at the end of the week, maybe save an hour or two.
[automerge]1599268137[/automerge]
What sort of software do you develop? What languages do you use?
I‘m machine learning research engineer. Python is my main language.

Sorry I thought you were quoting me ahah
 
Last edited:
  • Like
Reactions: highlypaid
What sort of software do you develop? What languages do you use?
I'm still in grad school studying computer science while also working on the side, so I'm doing everything from traditional backend engineering in java and .NET Core, to mobile apps (flutter, swift) and web development, to machine learning and data science. Pretty new to the AI stuff but spending more and more time with it, and quickly realizing how incapable my current iMac is for those tasks! And I often have to use virtualization for .NET projects when cross compatibility isn't an option.
 
Sequential speed is nothing when compiling. Yes, there are a couple of hundred of MB/s more in 1 TB vs 512 GB, and probably even less difference between 1 and 2 TB, but this is in sequential speed. The difference is very minimal when comparing real world scenarios. Code files are small, very small, and has nothing to do with sequential speeds.

But compiling with two more cores can reduce compile time by a lot and can, at the end of the week, maybe save an hour or two.
[automerge]1599268137[/automerge]

I‘m machine learning research engineer. Python is my main language.

Source code are small, binaries a bit less so. However they are read from and written to the SSD as a contiguous block. I think the SSD performance might be quite signifcant. Max Tech ran that Xcode benchmark and with 512 SSD, he got build times of 229 with an i7 and 217 with the i9 which was a 5% improvement. With the i9 and the 2TB SSD, I saw a 22% improvement. I don't know how fast an i7 would be with the 2TB SSD or how either would be with the 1TB SSD.
To avoid any doubt I just ordered both. :)

I know ML developer love Python (and so do Quants). I believe though there are teams at Google using Swift with Tensor flow instead.
 
Source code are small, binaries a bit less so. However they are read from and written to the SSD as a contiguous block. I think the SSD performance might be quite signifcant. Max Tech ran that Xcode benchmark and with 512 SSD, he got build times of 229 with an i7 and 217 with the i9 which was a 5% improvement. With the i9 and the 2TB SSD, I saw a 22% improvement. I don't know how fast an i7 would be with the 2TB SSD or how either would be with the 1TB SSD.
To avoid any doubt I just ordered both. :)

I know ML developer love Python (and so do Quants). I believe though there are teams at Google using Swift with Tensor flow instead.
Since you have both the i9 and 2TB ssd, have you run some other benchmarks and compared them to Max Tech's benchmark results? Any noteworthy improvements or differences?
 
I'm still in grad school studying computer science while also working on the side, so I'm doing everything from traditional backend engineering in java and .NET Core, to mobile apps (flutter, swift) and web development, to machine learning and data science. Pretty new to the AI stuff but spending more and more time with it, and quickly realizing how incapable my current iMac is for those tasks! And I often have to use virtualization for .NET projects when cross compatibility isn't an option.

I do a bit of .NET Core on my Mac. It works just fine. Obviously for deployment, a Mac isn't the best choice so I use Docker on the Mac with Kubernetes. I am not sure Web Development is going to benefit from more cores but Swift certainly can.
 
However they are read from and written to the SSD as a contiguous block. I think the SSD performance might be quite signifcant.
A couple of MB/s more won’t make you save 1-2 hours at the end of the week.
With the i9 and the 2TB SSD, I saw a 22% improvement.
You did the exact same benchmark ? It’s almost impossible you could be 22 % faster only with the SSD being very, very slightly faster.
I know ML developer love Python (and so do Quants). I believe though there are teams at Google using Swift with Tensor flow instead.
Possible, but models must be converted to CoreML for being used on Apple OSes.
 
Since you have both the i9 and 2TB ssd, have you run some other benchmarks and compared them to Max Tech's benchmark results? Any noteworthy improvements or differences?

To be honest the only benchmark he ran that I was interested in was the Xcode benchmark. I don't do any video editing and I would not expect the SSD to make any difference for the CPU or GPU benchmarks he ran (e.g. Geekbench, Cinebench or Unigine). I may at some point use the iMac for gaming so I did spec the 5700XT but my primary concern was the fastest possible build times.
 
I do a bit of .NET Core on my Mac. It works just fine. Obviously for deployment, a Mac isn't the best choice so I use Docker on the Mac with Kubernetes. I am not sure Web Development is going to benefit from more cores but Swift certainly can.
I do most of my .NET Core in Mac OS too, but sometimes run into problems when other collaborators add packages with dependencies on windows only stuff, and then have to resort to running VS in Parallels or boot camp instead. And yeah, web development is the least of my concerns, and it's also the area I'm least interested in. More interested in large scale software development, parallell/distributed programming, databases and machine learning.
 
  • Like
Reactions: filmgirl
A couple of MB/s more won’t make you save 1-2 hours at the end of the week.

You did the exact same benchmark ? It’s almost impossible you could be 22 % faster only with the SSD being very, very slightly faster.

Possible, but models must be converted to CoreML for being used on Apple OSes.

I ran exactly the same benchmarks a couple of times and followed the instructions on the Github readme so either Max Tech messed something up (he is not a developer so that is possible) or the SSD really does make that much difference. I haven't seen any comparison of the performance of the various SSD sizes so I am not sure how much of a difference it should make.

BTW Google isn't using CoreML with Swift, they are using Tensor Flow, their own C++ library. I think they even build some Python interfaces.
 
BTW Google isn't using CoreML with Swift, they are using Tensor Flow, their own C++ library. I think they even build some Python interfaces.
I’m more used with PyTorch. Tensorflow might now have a Swift interface. It’s possible. Tensorflow always been in C++ with a Python front end interface. What I was saying is that you cannot use directly a tensorflow model on iOS/iPad OS/tvOS. You need to convert it to a CoreML compatible model. CoreML offers a “bridge” between Tensorflow and CoreML.
 
Last edited:
I ran exactly the same benchmarks a couple of times and followed the instructions on the Github readme so either Max Tech messed something up (he is not a developer so that is possible) or the SSD really does make that much difference. I haven't seen any comparison of the performance of the various SSD sizes so I am not sure how much of a difference it should make.

BTW Google isn't using CoreML with Swift, they are using Tensor Flow, their own C++ library. I think they even build some Python interfaces.
I'm guessing your 22% faster result is when comparing to Max Tech's i7 build time and not his i9 time, right? Either way it's a very big difference!
 
I'm guessing your 22% faster result is when comparing to Max Tech's i7 build time and not his i9 time, right? Either way it's a very big difference!

Yes, that is correct. Sorry, should have made that clearer. The SSD and the i9 was 22% faster. i9 alone was (according to Max Tech) only 5% faster). I would love to know how fast the i7 with 2TB or how faster they both are with 1TB.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.