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

rmdeluca

macrumors 6502
Original poster
Oct 30, 2018
250
415
There seems to be some recurring confusion in the forums regarding the three CPU options available for the 2018 Mini. The Mini can be configured with:
  1. i3-8100B:
    - 4 cores (4 threads)
    - 6MiB L3 cache
    - 2.4GHz DRAM
    - Max clock speed 3.6GHz
    - Max iGPU clock speed 1.1GHz

  2. i5-8500B:
    - 6 cores (6 threads)
    - 9MiB L3 cache
    - 2.666GHz DRAM
    - Base clock speed 3.0GHz, max turbo boost clock speed 4.1GHz
    - Max iGPU clock speed 1.1GHz

  3. i7-8700B:
    - 6 cores (12 threads)
    - 12MiB L3 cache
    - 2.666GHz DRAM
    - Base clock speed 3.2GHz, max turbo boost clock speed 4.6GHz
    - Max iGPU clock speed 1.2GHz
Immediately, someone can look at this and reasonably ask "wait, so the i3 runs faster than the i5 and i7?"

The answer is NO.

All of the CPUs, when idling or lightly loaded, will run well below these frequencies. When heavily loaded, however:
  • The i3 will ramp up to at most 3.6GHz.
  • The i5 will ramp up to at most 4.1GHz depending on how many cores are loaded, but never less than the i3 with equivalent load.
  • The i7 will ramp up to at most 4.6GHz depending on how many cores are loaded, but never less than the i5 with equivalent load.
This is easily demonstrated. With four cores fully loaded, the i7 maintains a stable 4.3GHz frequency, which is above the maximum of the i5 and i3:
upload_2018-11-19_9-47-2.png
With 5 cores loaded, it runs at a stable 4.2GHz, occassionally flirting with 4.3GHz, again above the maximum of the i5 and i3:
upload_2018-11-19_9-47-45.png
With 6 cores loaded, it runs at 4.1GHz, occassionally flirting with 4.0GHz, also above the i3, and right around the i5's maximum:
upload_2018-11-19_9-48-20.png
Your next question might be "so, the i5 can be as fast the i7 sometimes, right?"

Again, almost always NO. Besides having more L3 cache and a higher maximum boost clock, the i7 is hyperthreaded. The i7 will be on average 10-20% faster than the i5 with equivalent workloads. There are of course exceptions in either direction, but this average tends to hold true empirically.

For reference, here is my Geekbench score:
upload_2018-11-19_9-55-25.png
And Cinebench R15. The 1204 score is after four sequential runs once the temperature had stabilized. The 1230 score is the one I obtained about 15 minutes before writing this post:
upload_2018-11-19_9-56-18.png
The final question I see a lot is "is it safe for CPUs to run at nearly 100°C for sustained periods of time?"

The answer is, empirically, YES. Except for extreme use cases, this is a perfectly acceptable (and within specifications) temperature for the CPU to run at. CPUs can easily live for 20 years. Is it ideal for the CPU's life to run 24/7/365 at maximum temperature for several years? No, simple thermodynamics will tell you that. Even so, how many of you reading this plan on keeping your i7 100% loaded 24/7/365 for five or 10 years straight? How many of you in that scenario don't utilize your own rigorous testing methods before such a deployment anyhow?

The bottom line is you either trust Intel and Apple's engineers or you don't. My intention here is not to change your mind if you don't. We've just not seen it empirically born out where high (but within specification) temperatures in Intel's modern CPU offerings leads to significant reductions in their useful lifespans.

I will update this first post if we get similar format data for the i5/i3 or any other noteworthy developments occur.

References
Accumulated Forum Benchmarks
 
Last edited:
HT can be also an overhead in processing which could downsize the perfomance of individual threads

wiki
Hyper-Threading can improve the performance of some MPI applications, but not all. Depending on the cluster configuration and, most importantly, the nature of the application running on the cluster, performance gains can vary or even be negative

As a result, performance improvements are very application-dependent;[19] however, when running two programs that require full attention of the processor, it can actually seem like one or both of the programs slows down slightly when Hyper-Threading Technology is turned on.[20] This is due to the replay system of the Pentium 4 tying up valuable execution resources, equalizing the processor resources between the two programs, which adds a varying amount of execution time. The Pentium 4 "Prescott" and the Xeon "Nocona" processors received a replay queue that reduces execution time needed for the replay system and completely overcomes the performance penalty.[21]

According to a November 2009 analysis by Intel, performance impacts of hyper-threading result in increased overall latency in case the execution of threads does not result in significant overall throughput gains, which vary[19] by the application. In other words, overall processing latency is significantly increased due to hyper-threading, with the negative effects becoming smaller as there are more simultaneous threads that can effectively use the additional hardware resource utilization provided by hyper-threading.[22] A similar performance analysis is available for the effects of hyper-threading when used to handle tasks related to managing network traffic, such as for processing interrupt requests generated by network interface controllers (NICs).[23] Another paper claims no performance improvements when hyper-threading is used for interrupt handling.[24]
 
HT can be also an overhead in processing which could downsize the perfomance of individual threads

Intel (and the major operating systems) have come quite far in optimizing SMT since 2009, but naive use can still occassionally result in a slight performance hit. Besides adding synchronization overhead, you can also induce cache thrashing. That is why I suggest that you not toss extra threads at HT logical cores willy nilly.

This is not something the average user needs to worry about. However, if you're using software where you have explicit control over the number of threads, you should test it with varying thread counts, starting with N-1 (where N is the number of real cores) up to N*2. Depending on workload, you'll usually see some plateauing before you hit N*2.
 
Also on my Mini, I have replaced the stock thermal paste, added stand-off rubber feet and removed the bottom lid when I was doing some testing yesterday.

I also noted that if you are doing anything where the iGPU will be in use in conjunction with heavy CPU load, I NEVER saw CPU frequency go above 3.7Ghz ish.
Without the iGPU in use I can see 4.3-4.5 occasionally.

My idle temps are now down into the 40's and sometimes mid 30's.
Load temps are now pegged to around 85-92. I have yet to see upper 90's to 100 when I was encoding.

I am thinking there is a power draw limit when bot the CPU and iGPU are in use.

When encoding a 4K video to 1080p, the i630 was maxed, CPU stayed right in the 3.5 range with power draw in the mid- 50watt range.
Without the i630 needing to be used I can see the power draw jump into the 70watt range and the CPU frequencies go much higher.
Temperatures were not holding back at this point, again during some testing I had the bottom lid off, better thermal paste applied, the mini laying on it's side with a fan forcing air into the system (because current fan controllers can't seem to take control of the built-in fan yet, I am sure an update can fix this down the road)
So my temps during a few tests while encoding were in the 80's but frequencies would never climb higher than mid 3GHz.

Also I was doing testing with a VEGA64 water-cooled eGPU connected and so far only using adobe media encoder and apple compressor, the mini utilized the internal GPU far far more than the eGPU, which again seems to be negatively affecting the speed that the CPU is able to run at because of the power the internal GPU seems to be pulling.
I could be off on this but I plan on doing some additional test to see if I can isolate testing on GPU's and see if that makes a difference on CPU frequency as well as power draw.

So more to come.

The only screen shot I have at the moment to post is this is a pre- thermal paste redo, with eGPU encoding a 12GB 4K file down to 1080. This one was using Adobe Media Encoder with the YouTube 1080p HD preset.
***Edit*** Currently: I am using an i7 8700B Mac mini, Arctic MX4 Thermal Paste, swapped in 32GB 2666 Crucial RAM, the 512GB SSD, 10Gb Nic, eGPU is a Sonnet BreakAway Box with a GigaByte Vega 64 Water-cooled.
4Kto1080EncodePrePaste.png
 
Last edited:
Based on the Processor utilization during this test (~30%), would it be fair to say that the i3 would peform similarly if 100% utilized?
 
Also on my Mini, I have replaced the stock thermal paste

I have been curious to see if there's potential for improvement from Apple's factory thermal paste job. It would be helpful if you closed the lid on your Mini and loaded it with spin loops (yes > /dev/null in terminal windows) to see if you get improved thermals from the ones I posted.

I also noted that if you are doing anything where the iGPU will be in use in conjunction with heavy CPU load, I NEVER saw CPU frequency go above 3.7Ghz ish.
Without the iGPU in use I can see 4.3-4.5 occasionally.

Yep, absolutely. The iGPU is a 15W TDP component. So far we've not seen where the Mini's firmware is willing to let more than about 70W continuous feed the entire package. This may be a bit conservative on Apple's part. Then again, the Mini only has a 150W power supply, which in addition to powering the rest of the machine has to be able to drive many watts out through the USB ports to power devices.

Also I was doing testing with a VEGA64 water-cooled eGPU connected and so far only using adobe media encoder and apple compressor, the mini utilized the internal GPU far far more than the eGPU

There's a lot of variables here to unpack. Intel's Quick Sync (probably why the iGPU is loaded) is pretty impressive for what is is, but Vega 64 hardware should run circles around it in every conceivable way if properly utilized. Your GPU/iGPU usage graphs would seem to indicate the Vega 64 is not being fully fed.

Unfortunately, Adobe's encoders are somewhat of a black box so I can only speculate why this is. I suspect the load balancing is treating each GPU video encoder asset the same, as opposed to realizing the iGPU is running inside a tiny 7.7"x7.7"x1.4" box and competing with the CPU for power and thermal budget. On the other hand, this may still be the fastest approach because of how efficient Quick Sync is (and how poorly optimized the encoder is for Vega 64 run as an eGPU)! Only further testing will tell us.


Thanks for doing some legwork and posting your results.
[doublepost=1542733697][/doublepost]
Based on the Processor utilization during this test (~30%), would it be fair to say that the i3 would peform similarly if 100% utilized?

No, never.
 
Last edited:
i7>i5>i3 Amazing isn't it... who would have "thunk" it? o_O

Well, the i7 will supposedely be 544 hp and tops out at 155 mph, while the i3 is 168 hp and tops at 93 mph. The i8 is 131 hp and tops at 155 mph. It would seem that i7 and i8 are equally fast, but they are just electronically throttled. Acceleration should be a bit faster with the i7, though. i7 > i8.

The 1d is usually faster than the 5d and the 7d, although tech tends to trickle down with time. 5d actually has more megapixels than any of them, and also two processors, like 1d. 1d >? 5d > 7d.
 
  • Like
Reactions: InformationLandmine
Well, the i7 will supposedely be 544 hp and tops out at 155 mph, while the i3 is 168 hp and tops at 93 mph. The i8 is 131 hp and tops at 155 mph. It would seem that i7 and i8 are equally fast, but they are just electronically throttled. Acceleration should be a bit faster with the i7, though. i7 > i8.

The 1d is usually faster than the 5d and the 7d, although tech tends to trickle down with time. 5d actually has more megapixels than any of them, and also two processors, like 1d. 1d >? 5d > 7d.
When comparing the higher tier CPUs the speed is throttled due to thermals not because of electronics... it would all depend on cooling solution, enclosure, environment, etc... or am I missing something?
 
Last edited:
When comparing the higher tier CPUs the speed is throttled due to thermals not because of electronics... that would all depend on cooling solution, enclosure, environment, etc... or am I missing something?
Well, technically, CPUs are constrained by electronics - i.e. they are given a maximum possible turbo speed depending on how many active cores there are. But I agree, one wouldn't describe that as throttling. But it is certainly just like an electronic speed restrictor on a car (and can be over-written).

My feeling is still that throttling is technically happening whenever a CPU cannot meet the maximum frequency of its design spec.

For the i7 this is single core 4.6 Ghz, ramping down to 4.3 Ghz for 6 cores.
In the mac mini (from the tests performed) it seems that the former, but not the latter speed is possible (6 cores maxes out at around 4.0-4.1 Ghz (at 75 Watts power consumption).

This is great performance, and well above the base speed, but is, nonetheless, below the maximum CPU design specification.

As others have stated, this may be due to thermals, or may be due to too much power draw for the PSU (or other component).
 
Last edited:
Well, technically, CPUs are constrained by electronics - i.e. they are given a maximum possible turbo speed depending on how many active cores there are. But I agree, one wouldn't describe that as throttling. But it is certainly just like an electronic speed restrictor on a car (and can be over-written).

My feeling is still that throttling is technically happening whenever a CPU cannot meet the maximum frequency of its design spec.

For the i7 this is single core 4.6 Ghz, ramping down to 4.3 Ghz for 6 cores.
In the mac mini (from the tests performed) it seems that the former, but not the latter speed is possible (6 cores maxes out at around 4.0-4.1 Ghz (at 75 Watts power consumption).

This is great performance, and well above the base speed, but is, nonetheless, below the maximum CPU design specification.

As others have stated, this *may* be due to thermals, or *may* be due to too much power draw for the PSU (or other component).

It's a bit tricky since we don't have access to exactly what the design engineers were trying to accomplish. There is throttling to minimize energy consumption especially on portable designs but on a desktop or Mini desktop we would have to assume most of the constraints on the CPU speed (higher tier designs) are based on active thermal feedback or pre-determined based on thermal testing and energy consumption during the engineering phase. Once again it's hard to say specifically since we don't have all the specific engineering information.

Regarding the cores and the HT... It was my understanding that unless they are being used they aren't running or generating heat so depending on the load on the CPU and access needed to the extra cores generally the amount of computed work done over time vs. the throttling due to heat or pre-programmed thermal constraints should wash out in the results. The throttled down CPU could be doing more work at a lower clock speed while using more cores and more features like HT. It more accurately becomes a matter of efficiency... amount of processing work over time and not whether the clock speed is throttling down... I hope this isn't too redundant to what you are saying. I'm not a system hardware engineer but I do what I can to understand this kind of information.
 
Last edited:
  • Like
Reactions: Spectrum
When my i7 encode a 1080p x264 to x265 in handbrake it stays at 3.4Ghz, does this seem wrong?

Screenshot 2018-11-23 at 06.47.12.png
 
Last edited:
When my i7 encode a 1080p x264 to x265 in handbrake it stays at 3.4Ghz, does this seem wrong?

Not necessarily - is your version of Handbrake using AVX2 or AVX512 instructions? Because when those instructions are in use the max clock rates are reduced.
 
The version is the one from https://handbrake.fr

Where can I check this?

Yeah it looks like their x265 encoder uses AVX2, so that's what's going on. I debated mentioning this in my OP, but when AVX2 instructions are in use the CPU has lower max clock speeds by default because of how intense those instructions are. AVX2 works on 256 bit chunks of integers at a time!
 
Yeah it looks like their x265 encoder uses AVX2, so that's what's going on. I debated mentioning this in my OP, but when AVX2 instructions are in use the CPU has lower max clock speeds by default because of how intense those instructions are. AVX2 works on 256 bit chunks of integers at a time!

Apparently AVX2 increases power requirements to the point where the clock speed needs to be reduced to offset the extra requirements when it's in use... or that's what many online technical articles are claiming. This seems to support the on going narrative we have been making that many of these processes being done by the CPU are task dependent and it's much more complicated than whether turbo boost is in effect, what the clock speed is or whether the thermals are going up and down. There are other factors that are engineered into these various Intel CPU models (i3 vs. i5 vs. i7,etc..) than what many of the simplistic comparative CPU topic threads would lead the common Mac user to believe.
 
Last edited:
Yeah it looks like their x265 encoder uses AVX2, so that's what's going on. I debated mentioning this in my OP, but when AVX2 instructions are in use the CPU has lower max clock speeds by default because of how intense those instructions are. AVX2 works on 256 bit chunks of integers at a time!
Nice info! In which case I revise my frequency expectations for the I-series of chips.
It also explains why the max specced speeds attainable on the top end Xeon chip has three rows depending on instruction set:
https://en.wikichip.org/wiki/intel/xeon_platinum/8180m#Frequencies
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.