Slashdot Mirror


Leaked Benchmarks Suggest Intel Will Drop Hyperthreading From Core i7 Chips (arstechnica.com)

According to leaked benchmarks found in the SiSoft Sandra database, there is an Intel Core i7-9700K processor that doesn't appear to have hyperthreading available. "This increases the core count from the current six cores in the 8th generation Coffee Lake parts to eight cores, but, even though it's an i7 chip, it doesn't appear to have hyperthreading available," reports Ars Technica. "It's base clock speed is 3.6GHz, peak turbo is 4.9GHz, and it has 12MB cache. The price is expected to be around the same $350 level as the current top-end i7s." From the report: For the chip that will sit above the i7-9700K in the product lineup, Intel is extending the use of its i9 branding, initially reserved for the X-series High-End Desktop Platform. The i9-9900K will be an eight-core, 16-thread processor. This bumps the cache up to 16MB and the peak turbo up to 5GHz -- and the price up to an expected $450. Below the i7s will be i5s with six cores and six threads and below them, i3s with four cores and four threads. Even without hyperthreading, the new i7s should be faster than old i7s. A part with eight cores is going to be faster than the four-core/eight-thread chips of a couple of generations ago and should in general also be faster than the six-core/12-thread 8th generation chips. Peak clock speeds are pushed slightly higher than they were for the 8th generation chips, too.

7 of 199 comments (clear)

  1. Never been a fan of hyperthreading by InvalidsYnc · · Score: 5, Interesting

    I've always seen them as "pseudo" cpu's, and not been all that happy with them overall. Yeah, some workloads benefit from it just fine, but others get tanked, but you'll never know because it just looks like those CPU's are flying along (according to task mangler or whatever).

    Anyway, glad to see that there will be some parts out there that people can choose to buy that don't have it.

    1. Re:Never been a fan of hyperthreading by Tough+Love · · Score: 4, Interesting

      So what you're saying is, you have no idea what hyperthreading is but you don't like it because it does not benefit all workloads? I hope you can see what's wrong with that argument. If not, I will try to help.

      Hyperthreading (a simplified form of SMT is about putting cpu cores to work that would otherwise stall, e.g., waiting on a memory load. If your workload has everything in L1 cache then SMT won't do anything and just wastes transistors, which could have been better used by providing more cores or more cache memory. Most loads do hit enough memory that SMT is a win for parallel latency, however for those that don't, SMT can actually slow things down as multiple threads compete for limited superscalar resources such as register files. If there aren't too many parallel threads then it would be better to give each its own core.

      So here is the thing: to make best use of SMT you need to know something about how SMT works, and something about your workload. Then you can potentially use CPU affinity to tune your application. If you are ignorant about either of these things, or you can't justify the time to do the necessary tuning, or you don't have the necessary access, then sometimes, yes, SMT is just going to bite. But it wins on average, which is why all modern general purpose processors implement it, with the notable exception of ARM.

      Throughput is not the entire story about SMT, there is also power efficiency. Additional logic is required to fetch two independent instruction streams in parallel, keep them independent, and manage the additional cache complexity. This does not slow things down but eats power, which is why ARM so far does not implement it, and Intel does not use it for Atom. This sacrifices parallel throughput, and if you have any Atom devices, you will be painfully aware that they suck compared to their core arch cousins. Intel had to about face on this when AMD dropped Ryzen on them so now, some low end Intel parts also have hyperthreading.

      Fast forward to today's rumor. It should be clear that not having Hyperthreading/SMT hurts performance on average, but can improve power efficiency. Simple conclusion: these i7's are aimed at the notebook/ultrabook/chromebook market where battery life and weight are more important than performance. You don't want these for your server, desktop or fat ass laptop.

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    2. Re:Never been a fan of hyperthreading by gman003 · · Score: 5, Interesting

      A lot of them, actually.

      A modern "core" has several "execution units". Unlike very early x86, where it was divided between ALU and FPU, these are divided more finely and evenly - one might do integer math, vector shifts, and branches, while another might do integer math, vector logic, and data stores. There's usually redundancy on common instruction types (eg. Haswell has three that can do address stores, but only one can do divides).

      In a single thread, this is used for superscalar execution. If you have code something like "a = b / c; d = e * f;", both instructions can be run in parallel since neither depends on the other. This also hides the cost of x86's more complicated addressing modes - computing the address gets dispatched to an execution unit just like a normal multiply/add, and the result just gets sent to the store unit.

      But sometimes a thread has lots of dependencies, or does mainly a single type of operation. Maybe it's crunching through a bunch of multiply-adds. Rather than let the remainder of the core sit idle, you can run another thread, or even another process, on it. If this second one mainly hits a different EU - say, it's doing a lot of shifting and bit-twiddling - you can get a 100% speedup.

      You rarely get so much of a boost in practice. A worker-thread type of program, splitting a parallel task across cores, will generally be using the same execution units in each thread. And SMT doesn't help if you're bottlenecked on something besides execution - well-optimized code, as often as not, is limited by memory throughput rather than execution.

      The other boost comes from covering memory latency. If one thread hits a load that isn't in L1 cache, it will stall while the load is served. If it's in L2 cache, that's not too long - a dozen cycles or so. If you're going out to main memory, you're looking at a few hundred, maybe a few thousand cycles of NOPs - so why not switch to another thread, that has all it's data in L1 cache already? Modern x86 processors have pretty low memory latency compared to other architectures, so two threads is generally the most you'd find useful for this, but other systems with harsher memory latency will go even wider - the latter-day SPARCs do eight threads per core, and some parts of a GPU will operate in the hundreds. This is why some non-superscalar architectures will still have multiple threads per core - it's only ever actually running one instruction, but it will rarely be running zero.

    3. Re:Never been a fan of hyperthreading by Tough+Love · · Score: 3, Interesting

      Simple conclusion: these i7's are aimed at the notebook/ultrabook/chromebook market where battery life and weight are more important than performance. You don't want these for your server, desktop or fat ass laptop.

      These are 95W parts. Video encoding should be just fine with these high frequency non-HT parts.

      But obviously, it would be better with HT. Going to the Arstechnica comments, the consensus is, this is just a marketing move by Intel. To be precise, i9 is the new i7, and open your wallets wider. It is possible that I am also right by saying that these non-HT i7's are targeted at mobile. Bragging rights, ok? "I have an i7 in my laptop, so cool [apple fan voice]". The catch being, i7 is the new i5.

      This game is going to push a lot of folks to Ryzen. Intel must know that. Maybe they are trying to keep Apple from going to ARM?

      --
      When all you have is a hammer, every problem starts to look like a thumb.
  2. spectre mitigation? by Anonymous Coward · · Score: 2, Interesting

    spectre-related attacks rely on predictive execution in hyperthreading.

    could this be a mitigation, while providing improved performance so the new part still exceeds the outgoing part?

  3. More important question: by Gravis+Zero · · Score: 2, Interesting

    Will these still need to have Meltdown and Spectre patches? If Intel are just pooping out new chips with no fix for the root cause then it's kind of a moot point to talk about it's speed.

    --
    Anons need not reply. Questions end with a question mark.
  4. Everyone who cares disables it anyway by jader3rd · · Score: 3, Interesting

    I know we have to disable CPU level Hyper Threading anyway. Too many false cache swaps when it's on.