If I've got this straight, Intel says that HT is using unused CPU resources. Due to the way programs are written, there are conflicts preventing the CPU from being used maximally. For instance, an instructrion may depend on the result of some previous instructions before it can be executed. Since "threads"or processes are totally independant, they do not have this type of conflict. (They do have to compete for resources most of the time though.)
>..., in his DiVX Encoding + File Copy test...
>w/out HT = 92 + 220 seconds to complete the tasks
>with HT = 79 + 185
Evidently there were 92-79 = 13 free slots for DIVX to use while File Copy was executing. And 220-185 = 35 free slots for File Copy to use while DIVX was doing its work.
What this does is take an intractable CPU resource scheduling problem and turn it into an advantage, provided you really want to run two programs at once, or have a single program that has independent parts.
Problem for AMD is that to get its high instructions per cycle, it needs resource overkill, which avoids stalls. If they did hyperthreading, it would ruin the instructions per cycle aspect. OTOH, the Athlon having the amount of CPU resource overkill that it does, it should have plenty of unused resourses to employ in hyperthreading.
Why are games not threaded? I think they are, only the threading is done internally to the program, not handed to the OS. Games have to at least interleave video, multichannel sound, and disk access internally to keep everything in sync and throughput maxed. They also have to interleave game geometry and physics equally as critically, and can't rely on the OS to keep it straight. Threaded media encoding could be done internally to the program instead of handing threads to the OS. But SSE2 is the other Athlon killer in encoding.
mechBgon already pointed out that SETI is careful to only use time "left over" from other tasks, so that's why it can run without noticeably impacting other uses. A lot of "background" programs do the same. Hey, most of the time the computer is waiting millions or billions of cycles for me to type the next letter.
Why exactly people want to do DIVX encoding while they do something else intensive, I really can't say. It strikes me as odd to have a second program stealing 40% of the CPU time time after you paid $500 for a processor just because your encoding was taking so gol-dang long. I'd save some bucks and have DIVX chugging while I sleep, or am at work. Or you can build another cheap, fast AMD box, or two, or three, if you really need that much CPU time for encoding. You don't really need expensive video for a computation box. Or a monitor after you've set it up with a remote desktop. I've got three extra computers built up from retired equipment and "hot deals" specials. Who doesn't? I wish I could come up with something useful for this surplus CPU power.