• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.
  • The forums have been upgraded with support for dark mode. By default it will follow the setting on your system/browser. You may override it by scrolling to the end of the page and clicking the gears icon.

Hyperthreading in i7 vs P4?

hat

Enthusiast
Joined
Nov 20, 2006
Messages
21,755 (3.21/day)
Location
Ohio
System Name Starlifter :: Dragonfly
Processor i7 2600k 4.4GHz :: i5 10400
Motherboard ASUS P8P67 Pro :: ASUS Prime H570-Plus
Cooling Cryorig M9 :: Stock
Memory 4x4GB DDR3 2133 :: 2x8GB DDR4 2400
Video Card(s) PNY GTX1070 :: Integrated UHD 630
Storage Crucial MX500 1TB, 2x1TB Seagate RAID 0 :: Mushkin Enhanced 60GB SSD, 3x4TB Seagate HDD RAID5
Display(s) Onn 165hz 1080p :: Acer 1080p
Case Antec SOHO 1030B :: Old White Full Tower
Audio Device(s) Creative X-Fi Titanium Fatal1ty Pro - Bose Companion 2 Series III :: None
Power Supply FSP Hydro GE 550w :: EVGA Supernova 550
Software Windows 10 Pro - Plex Server on Dragonfly
Benchmark Scores >9000
I've read over and over that HT in the i7 line is much improved over the HT found in the pentium 4. Why? What changed? Is it just the better CPU architecture that makes the second thread truly useful? Improvements in programming taking advantage of the second thread compared to what we had back then?
 
I don't think that the P4s have HT...
 
They sure did. I had (Edit: Still have!) a P4-630 that was a single core with Hyperthreading.... That was a S775, but I believe even some S478 chips had HT too.

Netburst was crap even with HT...but it works very similar in how threads are handled from what little I've researched. But advances in efficiency and microcode is probably where you'll find advances for modern HT. Like how much better Core2 was than P4... why can't Hyper Threading improve along the same lines? I also believe that the logic that handles the HT task has been vastly improved over the past decade. I'll have to research into it, but I do remember reading an article that talks about gains in HT efficiency that also does play on the newer cores, but also in how HT is handled altogether.

:toast:
 
Main problem with HT back in its days was the fact that you could count the number of multithreaded apps on a hand of a very clumsy carpenter. And even those apps didn't show much benefit. Today however, pretty much all apps are multithreaded. That's why today's HT powered CPU's show such potential. Plus, Intel has revised the HT a bit to improve cache thrashing and stuff like that.
 
I don't think that the P4s have HT...

I love those P4 with hyper threading. Moving from a faster clocked single core Pentium to lower clocked one with HT and the experience was absolutely smooth.

Though, now, I dont care about HT.



Why?. Technology moves ahead, that is why. Why would anyone think that the present implementation in i7/i3 is inferior to the one in Pentium 4?.

What Changed?. Ask Intel.
 
Last edited by a moderator:
CPU architectures in general have improved since P4.
 
some 478's had ht.. but they really sucked honestly p3's were better (obviously within similar spec)
no idea how intel suckered every one in to buying p4's to be honest. especial on the 478 platform. atleast with 775 there was scope to expand.
you know HT sucked on a pentium 4 when pentum 'd came along which was really 2 pentium 4's stuck together. the pentium d's performed like the p4's should have. (pentium d still sucks though)
back then, you would have been better off with amd. and thats not even debatable.
if it wasnt for bords that had high fsb speeds and the knowledge that core 2 duo/quads would be coming to 775, i would never have bought a pentium d.
 
Spoken like a true ignorant!.

:shadedshu:

That's not what TPU or it's community is about Day, no sense in tossing out labels and names...there's a better way. It's called educating and helping others.

Slightly offended but whatever. I've worked with a few P4s and have never seen the HT.

Here read this: http://en.wikipedia.org/wiki/Hyper-threading

Here's a snippet from that link:

Intel implemented hyper-threading on an x86 architecture processor in 2002 with the Foster MP-based Xeon. It was also included on the 3.06 GHz Northwood-based Pentium 4 in the same year, and then remained as a feature in every Pentium 4 HT, Pentium 4 Extreme Edition and Pentium Extreme Edition processor since.

:toast:
 
I think the main difference between Netburst HT and Nehalem HT is that Netburst had it bolted on instead of from-the-ground-up implemented. In Nehalem, you can't even tell what applications are on the virtual cores because it splits the cycles between them to about 50/50. I believe on Netburst HT, the virtual core would only inject work into the core in the spots where the core wasn't busy. Something like a 70/30 split. I could be wrong though.

The feature obviously didn't work as great as they expected which is why they abandoned it for MCM dual cores (Pentium D) and didn't revive it until Nehalem (which was originally thought to be of Netburst lineage).
 
i still have two 3.2Ghz (I think) socket 478 Northwood P4's and both had HT. I remember i really liked that chip, because the Northwoods managed to stay alot cooler than the Prescotts. Anyway i digress, i dont recall ever getting much use out of the HT on that cpu.
 
I think the main change is a combination of two things. The first being that the underlying cores are way more powerful these days compared to the P4/PD cores. So when you have a a single core doing twice the work, having a super powerful single core really helps, the P4/PD cores were so much weaker. The second is that software uses multiple threads a lot more these days. Even the underlying OSes these days have been tailored to multi-threading. Back in the P4/PD days, XP was king and it had multi-threaded tacked on as an afterthrought. I've even seen times when XP wouldn't even detect hyperthreading or having a dual-core processor.
 
I've even seen times when XP wouldn't even detect hyperthreading or having a dual-core processor.
Make sure ACPI Muliprocessor driver is installed. If the computer was updated from single (Uniprocessor) to more than single, it wouldn't be aware of the additional cores/processors unless that driver was changed.
 
Make sure ACPI Muliprocessor driver is installed. If the computer was updated from single (Uniprocessor) to more than single, it wouldn't be aware of the additional cores/processors unless that driver was changed.
I know, I've have times where XP simply wouldn't detect the multiprocessor. The way XP is designed it is supposed to swap the kernel out on the fly if you switch between a Uniprocessor and a Multiprocessor setup. By default the standard ntoskrnl.exe is Uniprocessor only, if a Multiprocessor system is detected the system will swap out the standard ntoskrnl with ntkrlmp(or ntkrlamp if PAE is enabled). However, I've had times where XP simply would not do it, it would continue to use the standard ntoskrnl file so the system was stuck in Uniprocessor. Even if I tried to force the ACPI Multiprocessor driver, it would not swap out the ntoskrnl. This whole design made it pretty obvious that XP wasn't designed with Multiprocessing in mind, and it was just tacked on at the very end.
 
<snip>This whole design made it pretty obvious that XP wasn't designed with Multiprocessing in mind, and it was just tacked on at the very end.

NT _was_ designed with Multiprocessing in mind, going all the way back to it's debut in 1993. XP, Vista, 7, 8 are all based on NT as you likely well know.

The problem is that Microsoft included so much legacy crap in XP, exacerbated by the need to differentiate versions with artificial restrictions (Starter, Home, Media Center, Pro).
 
Most workstations back when XP debuted (2001) were two-way and XP was licensed to operate on up to two physical processors. On XP x64, I did an in-place upgrade from Athlon 64 4000+ (single core) to Opteron 180 (dual core) and I never had any problems after changing the ACPI driver (didn't complain about changing it either). Maybe you've run across a bug in XP that isn't present in XP x64 but I do know for a fact that XP (and even 2000) were designed with multiprocessor in mind.
 
Last edited:
Believe it or not but even the first P4 core had the Hyperthreading tech in it but it was disabled, presumably because it needed further testing.

But anyway, understanding why i7 seems to have better hyperthreading (SMT) is an extremely complex matter. Obviously one way to look at it is it is a much later evolution of the technology, developed with lessons learned from P4. The Core chips do in fact have some similarities to P4 and older CPUs again because of lessons learned.
 
Nehalem has much shorter pipes and a much better scheduler. Nehalem is a convergence of the Conroe and Netburst architectures (borrows mostly from Conroe).
 
Not a fan of virtual "cores".
 
whatever the case HAT you are LONG overdue for a full system upgrade but I guss you you already know that ;)
 
I think the main difference between Netburst HT and Nehalem HT is that Netburst had it bolted on instead of from-the-ground-up implemented. In Nehalem, you can't even tell what applications are on the virtual cores because it splits the cycles between them to about 50/50. I believe on Netburst HT, the virtual core would only inject work into the core in the spots where the core wasn't busy. Something like a 70/30 split. I could be wrong though.

The feature obviously didn't work as great as they expected which is why they abandoned it for MCM dual cores (Pentium D) and didn't revive it until Nehalem (which was originally thought to be of Netburst lineage).

this was also my understanding of netburst era HT
 
Not a fan of virtual "cores".

Why again? They are awesome. The reason why my old Core i7 still performas like a champ. Sure it's overclocked, but it has 8 friggin threads!!!!!
 
Why again? They are awesome. The reason why my old Core i7 still performas like a champ. Sure it's overclocked, but it has 8 friggin threads!!!!!

He's jealous because he only has "real" cores.
 
Or as AMD would put it, a "native hexa-core" processor.
 
Back
Top