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

igilphoto

macrumors member
Original poster
Nov 2, 2018
36
28
Hello ,
Would love to hear your thoughts on this manner -
Im a photographer who mostly uses Lightroom and some photoshop ,but want to future proof myself in case I do some video or gaming .

I was pretty sure about getting the I9(3.6GHz 8-core Intel Core i9) but after reading some thoughts here and reviews of the chip I'm concerned it will run too hot and loud in the current iMac build .
I need to wait for reviews but on paper it seems like a possible problem .

Its very important for me that my mac will be strong but as silent as possible and find a sweet spot .

Then I started looking at the I5(3.7GHz 6‑core Intel Core i5) I mentioned and found that its actually pretty good but lacks the additional cores and multithreading .It's less powerful but supposed to run cooler.

I'm trying to decide how important multithreading actually is for me ,can someone give me an example of usage ?
Im looking at benchmarks but would love to understand it in everyday .

If I understand correctly ,it means that if I'l for example export images from Lightroom while I'm doing other tasks it will run much better on the I9 ?
Or is it just for very demanding tasks like video editing and rendering and multithreading isn't that important ?

Also, as I'm not so much of a tech guy -
If the I9 does runs hotter and louder ,it happens only under heavy work load that is relative to his power? Or does it mean that every task and average usage will result in louder machine ?

What do you think ? What did you ordered ?

Thank you in advance !
 
Judging from these two articles, lightroom isn't as multithreaded as photoshop, and the performance benefits of a 9900K over a 9700K aren't worth the price.

https://www.pugetsystems.com/labs/a...2018-Core-i7-9700K-i9-9900K-Performance-1248/
https://www.pugetsystems.com/labs/a...2018-Core-i7-9700K-i9-9900K-Performance-1250/

But, there are some confounding variables
it's a windows benchmark that doesn't include i5 chips.
Apple doesn't offer the 9700k
Apple doesn't cool their systems as well as Puget.
 
Multi threading is nice only if you truly need it though. Considering I have a fleet of 6Core 8th gen i5's with 16GB RAM, and SSD's running the full Adobe suite with no issues at work I think an i5 iMac should be great. I'm worried about the i9 with heat issues as well. I just built a nice desktop for a friend with an i7 8086K 6C/12T @ 5Ghz it runs at 85c under full load. And that is with a 360mm AIO liquid cooler! I don't want to know what an air cooled i9 8C/16T @ 5Ghz runs like is a small case like an iMac.
 
  • Like
Reactions: WrightBrain
Judging from these two articles, lightroom isn't as multithreaded as photoshop, and the performance benefits of a 9900K over a 9700K aren't worth the price.

https://www.pugetsystems.com/labs/a...2018-Core-i7-9700K-i9-9900K-Performance-1248/
https://www.pugetsystems.com/labs/a...2018-Core-i7-9700K-i9-9900K-Performance-1250/

But, there are some confounding variables
it's a windows benchmark that doesn't include i5 chips.
Apple doesn't offer the 9700k
Apple doesn't cool their systems as well as Puget.
Yeah, if the i7 was available I probably would have gone with that. But I also think in the coming years more software will take advantage of additional threads.
 
We won’t really know for sure until the reviews hit the net but the i9 is suppose to run cooler than the old i7 due to the new thermals roughly at 10-15c cooler

Personally for now the i9 and Vega 48 does seem the sweet spot but it’s gonna cost you to max the CPU & GPU out
 
Pugetsystems do rate the i9 highly for Photoshop as can be seen from their benchmarks.

This also features the i5 9th gen which is significantly slower although how much this is a real world factor is down to the user.

They also suggest once you go above 4gb of ram on supported graphics cards the returns are negligible as low a few percent.

This makes me think the i9 with the 580x with 8gb of vram GPU. Could be a the sweetspot for Photoshop.

The i9 with Vega should be cooler due to the type of ram that GPU uses but it would be massive overkill for Photoshop and a huge price bump for little Photoshop return.

Fan noise is really important to me so I am eagerly awaiting reviews and comparisons. So options are to step down to the i5 9th gen but I fear that may run at nearly the same temp as the i9 due to similar power consumption.

The i5 8gen is then the only other alternative with but it has the 575x GPU and 4gb of vram. I feel that is a none runner for me as it just meets my minimum criteria at the moment with little future proofing.

So fingers crossed for a quiet i9 or i5 9th gen.

I don't mind occasional audible spin up but not all the time at 40%cpu.

The earliest peoples delivery and store stock seem to be about the 28th.

So after that I am also looking for a teardown to see if there are any different heat speaders or higher spec fan/fans or any software that controls temp for the CPU. Any magical thinking that Apple have come up with to keep all those cores cool.
1214165e7f30b8235125b272a4f3ea06.jpg
 
Last edited:
A "core" is an independent computing unit. It's a tangible, physical hardware. It can execute computer instructions. So an i5 can execute computer instructions on 6 cores at the same time.

A "thread" is not a physical thing. It is an abstraction where it fools the operating system into thinking that there are multiple logical cores. This helps core utilization so that it's constantly fed and not just sitting around when it could be doing work.

So a non-technical explanation would be to consider an oven that bakes cookies (core) and a preparer that prepares the cookies to be baked (thread). If you have multiple ovens you can bake a lot of cookies fast, but if you don't have enough preparers, then you can't feed the ovens fast enough. You can have the opposite problem where you can have too many preparers but not enough ovens. In this case, the bottleneck would be the number of ovens.

Take video games, for example. You won't see much of a performance increase between an i5 and and i7 because a single core speed (how fast a single oven can bake the cookies) matters more than the number of cores.

Where the greater number of cores in the i9 would have the most impact would be running virtual machines where you would designate certain # of cores to the VM. Or things like compiling computer code where it can utilize the multiple cores.

From what you've written, the i5 seems like it should be fine.

That a perfect analogy and helps a lot. Thanks for this.

Why do video games not use several cores at the same time, let's say one for physics, one for xxxx
 
  • Like
Reactions: orbital~debris
Take video games, for example. You won't see much of a performance increase between an i5 and and i7 because a single core speed (how fast a single oven can bake the cookies) matters more than the number of cores.

Welcome to 2006?
It depends on the game. Games that tend to be built around single core performance are games (for a decade or more now) which will run at least as good on a modern multi core system.
Even games which are not designed to take advantage of every core they find, will tend to run better, smoother due to having all the other cores running everything else at the same time. You know, everything else that isn't the game that is currently running.

While a 4/6/8 core system doesn't mean you are going to have better gaming performance, having fewer cores doesn't mean you are even if the game is designed to only use for example a single core.

I hope I make some sense because it is late and I am tired.
 
This helps core utilization so that it's constantly fed and not just sitting around when it could be doing work.

The cores in modern processors have so many specialized units: There will be the multiply tree, the divider, memory read, memory write, barrel shifter, branch logic, floating point, and of course simple add and subtract - plus others. A single program thread can't keep all of them busy. With hyperthreading, the single core runs two (or more) threads at the same time, hopefully keeping more of the specialized units busy. The result isn't a doubling in speed because sometimes a thread has to wait for the other thread to finish with a unit.

It is like you leased a big apartment and can't possibly use all the rooms at once. So you take on a roommate. But now sometimes you have to wait for the one bathroom.

Intel's real motivation for hyperthreading is yield management. In each core, they include two copies of the complex instruction decoding logic, but only one copy of units like the massive but simple multiply tree. If there is a manufacturing defect in one copy of the decode logic, they can disable that side and still sell that CPU as a non-hyperthreaded chip. Chips that are perfect can then be sold as more expensive hyperthreaded CPUs.

Thus, the i9-9900K has eight flawless cores that can act like sixteen cores. The i5-9600K will be the same silicon, but up to two cores can be entirely defective because only six good ones are needed, and even in those six, one side of the instruction decode can have defects. Note that some 9600K may have "perfect" silicon, but because they were power hogs, Intel downgraded the chip.

In contrast, the Apple A series doesn't have hyperthreading. This is likely because of the much simpler ARM instruction decode. It is much less likely that defect would be in the portion of the CPU replicated for hyperthreading.
 
A "core" is an independent computing unit. It's a tangible, physical hardware. It can execute computer instructions. So an i5 can execute computer instructions on 6 cores at the same time.

A "thread" is not a physical thing. It is an abstraction where it fools the operating system into thinking that there are multiple logical cores. This helps core utilization so that it's constantly fed and not just sitting around when it could be doing work.

cores are hardware. On Kaby lake, the cores are organized like so:
473px-skylake_block_diagram.svg.png


https://en.wikichip.org/wiki/intel/microarchitectures/kaby_lake


Note that there are multiple ALUs, multiple FPUs, multiple vector units per core. The core doesn't execute a single instruction per clock cycle. Instead, it can execute multiple instructions per clock cycle. This is called superscalar design.

A thread is a software concept. (wikipedia calls it the "smallest sequence of programmed instructions that can be managed independently by a scheduler"). Programmers who wish to get the highest speed out of their programs structure thei programs to use multiple threads. It's common to have one thread handling I/O and other threads handle the "back end." Or a programmer may decide that a image can be best processed by dividing it into multiple sections-- and spawning one thread for each section. Threading is such an entrenched strategy that a macos system can have hundreds or thousands of threads working together. On my machine, Activity Monitor shows that the kernel alone has 167 threads.

So. these thousand threads are allocated time on the cpu-- each thread is processed for a short period of time (10 ms). A 8 core 9th gen i7 can process 8 threads at a time. But not every thread can use every element of the core. Some elements remain idle. For instance, some threads don't need to use the Floating point unit.

A hyperthreaded CPU has the hardware to handle twice as many (Xeon, i9), or four times as many (UltraSparc, Xeon Phi) or eight times as many threads (POWER9) on each core. If one thread is math, and the other is string processing, the threads can execute simultaneously. If the threads need the same subunits, then it doesn't work as well. On intel x86 chips it's a 10 percent to 30 percent advantage. On other architectures, it may be more worthwhile.

IBM says:

It is primarily beneficial in commercial environments where the speed of an individual transaction is not as important as the total number of transactions that are performed. Simultaneous multithreading is expected to increase the throughput of workloads with large or frequently changing working sets, such as database servers and Web servers.

Workloads that see the greatest simultaneous multithreading benefit are those that have a high Cycles Per Instruction (CPI) count. These workloads tend to use processor and memory resources poorly. Large CPIs are usually caused by high cache-miss rates from a large working set. Large commercial workloads are somewhat dependent upon whether the two hardware threads share instructions or data, or the hardware threads are completely distinct. Large commercial workloads typically have this characteristic. Workloads that share instructions or data, including those that run extensively in the operating system or within a single application, might see increased benefits from simultaneous multithreading.
Workloads that do not benefit much from simultaneous multithreading are those in which the majority of individual software threads use a large amount of any resource in the processor or memory. For example, workloads that are floating-point intensive are likely to gain little from simultaneous multithreading and are the ones most likely to lose performance. These workloads heavily use either the floating-point units or the memory bandwidth. Workloads with low CPI and low cache miss rates might see a some small benefit.

Measurements taken on a dedicated partition with commercial workloads indicated a 25%-40% increase in throughput. Simultaneous multithreading is should help shared processor partition processing. The extra threads give the partition a boost after simultaneous multithreading is dispatched because the partition recovers its working set more quickly. Subsequently, the threads perform like they would in a dedicated partition. Although it might be somewhat counterintuitive, simultaneous multithreadingperforms best when the performance of the cache is at its worst.

which sort of implies that hyperthreading is best used on servers, and not on workstations, Kind of a hard sell if your target market consists of artists and gamers.
 
Last edited:
  • Like
Reactions: adamk77
Apple's target market (on MacOS) NEVER includes gamers. They do deliberately support gaming on iOS, but not really on the Mac. Yes, a Mac will run games, and developers port some games to the Mac, but Apple won't lift a finger to make them work, and sometimes deliberately disadvantages them (AMD graphics work very well for pro uses, but are well behind NVidia in games).

As far as I can tell, this is a stability decision - complex games themselves, by virtue of using a lot of resources which they grab at a very low level, destabilize systems. Game-optimized hardware also does no favors for stability!
 
...
Im a photographer who mostly uses Lightroom and some photoshop ,but want to future proof myself in case I do some video or gaming...I started looking at the I5(3.7GHz 6‑core Intel Core i5) I mentioned and found that its actually pretty good but lacks the additional cores and multithreading .It's less powerful but supposed to run cooler.

I'm trying to decide how important multithreading actually is for me ,can someone give me an example of usage ?
Im looking at benchmarks but would love to understand it in everyday...

A thread is not an abstraction which fools the operating system into thinking that there are multiple logical cores. Rather a hyperthreaded CPU design does this. But those logical cores are not real cores and cannot support sustained simultaneous execution.

A thread is an asynchronous flow of control and the data structures which support that. It is asynchronous because barring explicit synchronization between threads, they run independently.

If you have a multi-core CPU like the 6-core i5, you can run six threads simultaneously. These threads can be within the same app or from different apps. MacOS schedules and dispatches threads not processes (ie apps). In Activity Monitor's CPU tab, at the bottom it shows total # of system-wide threads. This is typically over 1,000 threads and some times far more.

Most of those threads are not running but waiting on some event or synchronization call. Only runnable threads are dispatched to a CPU core. Windows has a built-in sophisticated monitoring tool called PerfMon which can watch CPU activity per thread. Unfortunately there is nothing with that level of capability in MacOS, at least by default.

The issue is not threads but whether a hyperthreaded CPU benefits common productivity software. A hyperthreaded CPU is sometimes called SMT (Simultaneous Multi Threading). This is misleading and ironic since it does NOT support simultaneous threads within a CPU core. Rather when one thread is momentarily stalled for some reason that core can briefly execute another thread.

The benefit is hardware (ie number of transistors) required to implement a hyperthreaded core. Instead of requiring another entire CPU core (which might cost 200 million transistors), a hyperthreaded core can get some of the benefit of an additional full core but at only a fraction of the transistor budget. E.g, in the optimal case a hyperthreaded CPU might provide 40% more performance at only 5% of the transistor budget of another full core. Each core takes lots of space as shown on this die shot of a 4-core Kaby Lake CPU: 650px-kaby_lake_(quad_core)_(annotated).png

In actuality the hyperthreaded performance benefit is usually much less than this. I've only seen 30% in very narrow test cases, and in recent versions of apps and MacOS, less than this. There is no easy way to test it except for using the specialized utility CPUSetter to enable/disable hyperthreading while running a test workload: https://www.whatroute.net/cpusetter.html

Another factor is the possibility that some of Intel's microcode updates for the Spectre and Meltdown vulnerabilities may have decreased the benefit of hyperthreading in some cases. That might be partially counter-balanced by hardware mitigations being rolled into 9th-generation Intel CPUs which reduce the overhead of the Spectre/Meltdown firmware fixes: https://www.anandtech.com/show/13400/intel-9th-gen-core-i9-9900k-i7-9700k-i5-9600k-review/2
 
Can someone weigh in on making this choice from a programming perspective? I am a college student so I would prefer to save money if I won't be benefitting as much. At what scale does a project benefit from the two extra cores? My school projects have been perfectly fine on my 2016 13" mbp, but I intend to use this machine for personal Xcode / Swift projects in the future. The only av processing I do is occasional iMovie projects for assignments. This would be my first apple desktop so I am not sure what to expect in terms of performance.
 
Great,thank you for the detailed answers !
I’m now just waiting too see how the i9 works with the 580x.
The Vega gpu is a bit too expensive for me and I have no need for it.
But it supposed to be cooler than the 580 so I want to make sure that combining the 580 with i9 won’t result in overheating or bad performance .
Unfortunately for me everybody testing out the new Vega
 
Can someone weigh in on making this choice from a programming perspective? I am a college student so I would prefer to save money if I won't be benefitting as much. At what scale does a project benefit from the two extra cores?

Decades of experience say that one should not get the hardware that goes to heroic measures to achieve the highest possible speed. Instead, the second fastest is a sweet spot.

I expect that the 2021 mid grade iMac will be as fast as 2019 i9's. You'll look back and wonder why you spent so much money for an i9.

The exception is when time is money. If you can get in one additional compile or render each work day, that can translate into more income which can pay for the upgrade. Or if one more compile/render might get you an A+ instead of an A.
 
Great,thank you for the detailed answers !
I’m now just waiting too see how the i9 works with the 580x.
The Vega gpu is a bit too expensive for me and I have no need for it.
But it supposed to be cooler than the 580 so I want to make sure that combining the 580 with i9 won’t result in overheating or bad performance .
Unfortunately for me everybody testing out the new Vega

Exactly on the same spot, I want to upgrade either the CPU or GPU, but can only find I9 vega reports. I also want I9 580x, and i5 with both :S IS not just about the specs, you can see the benchmarks on geekbench and so, but also about temperatures, fan and throttling.
 
  • Like
Reactions: Returnoftheimac
Is Macrumors going to do some iMac reviews? Seems a lot of youtube bloggers are now posting - but still nothing on the new i5 chip - Don’t know if I can justify another $500 for the i9
 
  • Like
Reactions: kaintxu
I think I still prefer the i9, but it sounds like the i9hyper-threading may be a bigger Zombieload security risk.
 
A "thread" is not a physical thing. It is an abstraction where it fools the operating system into thinking that there are multiple logical cores. This helps core utilization so that it's constantly fed and not just sitting around when it could be doing work.
A hardware thread is implemented with additional resources in the core, so that the software threads loaded on it can be switched instantly.

A hardware thread takes a lot less silicon than an additional core. It can increase the performance by some fraction.

The standard name for the brand HyperThreading is Symmetric Multithreading (SMT).

Bulldozer family CPUs have Clustered Multithreading (CMT), where two cores are grouped in a module and share some resources, but each one only has one thread loaded. This takes a lot more silicon.

So where Intel offered 4-core SMT CPUs, AMD would offer 8-core CMT CPUs. If the AMD chips had been as efficient as the Intel ones, they would have been faster (8 threads actually executing a lot of the time versus 4). For integer.

It also means a Phenom II X4 would be better for floating point than a 4-core Bulldozer.

AMD dropped CMT with Zen and introduced SMT with new full cores on a smaller process. They doubled the performance.
 
Last edited:
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.