• Some users have recently had their accounts hijacked. It seems that the now defunct EVGA forums might have compromised your password there and seems many are using the same PW here. We would suggest you UPDATE YOUR PASSWORD and TURN ON 2FA for your account here to further secure it. None of the compromised accounts had 2FA turned on.
    Once you have enabled 2FA, your account will be updated soon to show a badge, letting other members know that you use 2FA to protect your account. This should be beneficial for everyone that uses FSFT.

HT and [H]ardness

RancidWAnnaRIot

EspantaPajaros
Joined
Feb 19, 2004
Messages
11,033
ok so i don't completly understand what hyper threading is, the intel website doesn't really give a clear example of it.. anyone here can give me one?

Thanks
 
It enables your OS to see two virtual processors, and allows you to do many things at once without an slowdowns at all. My 2.8C HT is great!
 
Hyper threading basically divides the processor up into two processors (at least that's how your O/S sees it), so that two threads or applications can be ran at one time without interuption. It makes for much smoother multitasking.

It works sort of like a dual processor system, just... Not as well. But it's a whole lot smoother than a system without hyper threading.
 
Basically, at a technical level, this is what it does:

Operating systems in the past, have always had the ability to run multiple processes on one processor at the same time. This is accomplished by switching between processes at a fast enough rate that the user does not notice a difference. Unfortunately, this is a slow process since you have to save the processor state (registers and such), and reload the state on each switch. Hyperthreading allows this switching to all be done in hardware, rather then the software. The hardware then fools the software into believing there is actually 2 processors.

So basically, the concept is exactly the same that has existed in software for years, but is now implemented in hardware making it faster.

Sorry about the terminology. I tried to make it as simple as possible
 
Originally posted by intercollector
Basically, at a technical level, this is what it does:

Operating systems in the past, have always had the ability to run multiple processes on one processor at the same time. This is accomplished by switching between processes at a fast enough rate that the user does not notice a difference. Unfortunately, this is a slow process since you have to save the processor state (registers and such), and reload the state on each switch. Hyperthreading allows this switching to all be done in hardware, rather then the software. The hardware then fools the software into believing there is actually 2 processors.

So basically, the concept is exactly the same that has existed in software for years, but is now implemented in hardware making it faster.

Sorry about the terminology. I tried to make it as simple as possible

I was looking for an analogy to explain it. That actually is a pretty solid way of looking at it.
 
not exactly, HT allows ALU's that have a cache miss and are running idle to run separate threads before the pipeline completes, that way the chip is far more efficient as much more of the theoretical total processing power can be used in a multiple thread situation.
 
Originally posted by intercollector
Basically, at a technical level, this is what it does:

Operating systems in the past, have always had the ability to run multiple processes on one processor at the same time. This is accomplished by switching between processes at a fast enough rate that the user does not notice a difference. Unfortunately, this is a slow process since you have to save the processor state (registers and such), and reload the state on each switch. Hyperthreading allows this switching to all be done in hardware, rather then the software. The hardware then fools the software into believing there is actually 2 processors.

Weeeelll.... not exactly.
HT makes it so you don't have to switch between processes to execute both of them. The IR, PC, register file, they aren't saved, duplicated for the second process is more accurate.


The idea is, there are a whole lot of 'slots' for instructions to be placed in, in various stages of execution, from decode, to fetching the operands, to executing the op code to retirement, in fact P4 has 128 'slots' for instructions (Prescott obviously has more), Alot of them are very specialized, ie certain slots are only for simple arithmatic operations being executed, and normally a single process won't be able to fill all the slots all the time (in fact a majority of the slots often go unfilled), so HT allows the CPU to take instructions from a second process and try and fill those open slots,

ie the FP unit can be working on something from proccess '0' at the same time the ALU is working on something from process '1.' The decoder can be decoding instructions from both processes, and the queues can have instructions from both waiting to be exectued.
 
Originally posted by FreiDOg
Weeeelll.... not exactly.
HT makes it so you don't have to switch between processes to execute both of them. The IR, PC, register file, they aren't saved, duplicated for the second process is more accurate.


The idea is, there are a whole lot of 'slots' for instructions to be placed in, in various stages of execution, from decode, to fetching the operands, to executing the op code to retirement, in fact P4 has 128 'slots' for instructions (Prescott obviously has more), Alot of them are very specialized, ie certain slots are only for simple arithmatic operations being executed, and normally a single process won't be able to fill all the slots all the time (in fact a majority of the slots often go unfilled), so HT allows the CPU to take instructions from a second process and try and fill those open slots,

ie the FP unit can be working on something from proccess '0' at the same time the ALU is working on something from process '1.' The decoder can be decoding instructions from both processes, and the queues can have instructions from both waiting to be exectued.

That sounds like basically just a description of simple pipelining. CPU's have had multiple units in a single stage for a while now (ie. multiple ALUs and such). Hyperthreading is a concept that occurs on a much higher level.
 
is there a reason why you would want to turn it off? i mean how would you know when it's best to have it on or off?
 
Originally posted by RancidWAnnaRIot
is there a reason why you would want to turn it off? i mean how would you know when it's best to have it on or off?

By checking to see if your system is responsive w/ HT vs. w/o HT.. personally mine is w/ HT on.. but usually I do not have more than 2 or more tasks running so..

most new games are indifferent to HT (unlike old ones which slow down) and hence, leaving HT on is desirable.. at the end of the day it depends on your perception of responsiveness of your system.
 
Originally posted by intercollector
That sounds like basically just a description of simple pipelining. CPU's have had multiple units in a single stage for a while now (ie. multiple ALUs and such). Hyperthreading is a concept that occurs on a much higher level.

well, that's all HT is, at the most basic level, using two threads to fill a pipeline instead of one.
It may be much higher level (though i'm not entirely sure how you define high level in silicon) concept, but all it does is let the CPU schedual from two instruction streams cocurrently instead of just one.
 
It's more clear to me.. thanks for the replied.

I have one more question though

I was looking up how to turn on/off HT. I only found something that said you do it through the BIOS, but this was just talking about HT in Dell machines. Is HT turned on and off for all HT systems in the BIOS?

Thanks

I'm asking because i'm building my first system with an HT proc next week. so yeah.. i'm just trying to get all the info i can on the technology that's in the proc.
 
It should be universal in all BIOSes and Mainboards.

Every Intel board I've seen/used has the option, and that goes for anything MSI too.

Abit is a tweakaholic, so I assume that'll allow you to turn it on/off as well.
 
Back
Top