What is Hyper Threading Technology as Easy As Possible like Ice Cream and candy. How Hyper-Threading Works And How does Hyper-threading differ from actual physical cores?

in #technology8 years ago

Hyper-threading technology from Intel has been on their computer processors for over 10 years and yet much like the elusive fox most people know very little about what it says. Let's start with an analogy, let's say I am a cpu and I'm trying to process food or eat as some people call it. I can only do as much eating as one mouth can do, if i could add more mouths then I could process more, this is what multi-core processors do but due to cost constraints among other things it's not always possible to take that approach. So I've got just one mouth I can use my hand to pick up the food bring it in my mouth then grab another bite while my mouth is busy, If i finish chewing before my hand is ready to deliver me more food however then my mouth is just sitting there doing nothing. If only I could use two hands to prepare food for my mouth then even though my mouth can't actually work any faster I wouldn't waste any time. Oh wait i can do that that's hyper-threading one processor and intelligent scheduling to make sure that it's always working. 

Well usually, Hyper-threading can't do much for single-threaded workloads where you can only work on one thing at a time for example if you wanted to eat a to scoop ice cream cone you can't work on the bottom scoop until the top scoop has already been consumed and heaven help you if you try to eat the cone first. In this example there is no benefit to adding more mouth or more hands. The opposite of this would be eating from a bowl of candies grabbing and eating a red candy does not in any way depend on finishing the blue candy that's already in my mouth. In fact if I had some friends to help me eat it we could consume the candy very quickly by adding more hands and more mouths. This is an example of a multi-threaded workload and hyper threading can definitely help with this. 

Alright so let's bring it away from the eating analogy for a minute and bring it back to the real world. Computing tasks that benefit from hyper threading and multiple processing cores are video editing 3d rendering and heavy multitasking on your pc. Video editing is a great example because one frame of a video can be processed well the next one is queued up because the video is already shot the PC doesn't have to guess what's gonna be in the next frame it already knows. Here's another multi tasking example one processor can be handling your light tasks like skype in music playback antivirus and whatever else you have running in the background, while another one can focus all its attention on running a power-hungry video game in the foreground. 

So with that out of the way how do you actually choose a processor for your pc. The first thing I hope you got out of this is that whatever task manager might say hyper threading is not the same as doubling your processing course. It's basically a clever trick for more efficient scheduling of the work that is done by the processing cores that you have. It also increases power consumption and heat output a little bit but the benefits usually out way this drawback. In the real world you can get huge double digit performance improvements all the way to know performance improvement at all and in very rare cases even very slightly decreased performance depending on how the software is optimized. So it's important to do your research about the software you'll be running if the work you do isn't heavily multi-threaded then you might do just as well to save your money and buy a processor that doesn't have hyper threading. Most games right now for example can take advantage of more than a couple of threads however if the work you do is heavily multi-threaded them remember this general rule hyper threading is better than no hyper-threading but it's not nearly as good as adding more physical processors in an ideal world lots of physical processors each with hyper-threading is where it's at. 


 Image Credits - 1 2 3 4 

Thanks for reading.... Follow me @guineapig   


Sort:  

3D Artist here, I love hyper threading.

@guineapig very interesting post. Good job. upvoted