Reputation: 35
If a processor has a specified base frequency and number of threads it supports, what is the frequency that each thread really gets to utilize? For instance, the Intel® Core™ i7-4500U Processor has 2 cores and 4 threads with a base frequency of 1.80 GHz. Does that mean that a single threaded application will run at 1.80 GHz or will it run with less because of the hyper-threading?
Upvotes: 2
Views: 738
Reputation: 19706
It's a little more complicated than that. Theoretically, the base frequency is guaranteed even at max TDP, meaning that you get it even when all cores are at peak utilization and power consumption (which means HT is on, as it increases the stress), assuming reasonable package (cooling solution etc).
However, that doesn't mean that HT doesn't affect the frequency, since in modern CPUs the frequency may grow above the base one when the power consumption is lower. In other words, HT presents a tradeoff where you get more compute bandwidth, for the price of potentially lowering your dynamic frequency. The tradeoff will be governed by how well your HT utilization is (i.e. how much performance you gain from it in terms of pure IPC), vs. how much more power it consumes that way, and how much dynamic frequency that may have translated to.
In general, this tradeoff should be in favor of using HT, otherwise this feature wouldn't have made any sense, so the microarchitecture is probably capable of reducing the overheads enough to make the performance/power ratio desirable, but eventually its down to your compute workload and how well it can be run on HT. You'll need to benchmark HT on/off to know if it was worth it.
See also - Performance Insights to Intel® Hyper-Threading Technology
Upvotes: 3