Originally Posted by aussie
Datheron, I may be wrong here as I am no Windows XP guru (certainly not internal OS wise anyway) but I would have thought any program that has multiple threads would make use of a Xeon or HT enabled P4. Mind you the thread scheduler built into the OS would have to allocate a CPU (virtual or real) to each thread. AFAIK XP supports this (as does Linux). You can see the effect when you run intensive applications. I noticed it the other night after I downloaded all 500Mb of the Far Cry Demo and ran that for over an hour (great game btw even if it is only a demo =) Really amazing graphics. Really shows off the top end Sager's performance). I had the task manager open on my external screen and it clearly showed the two virtual CPU's doing different things. Mind you I could not tell if they were running threads from the FarCry demo or threads from some other app but who cares. All I noticed was the virtual CPU's were under different load and obviously doing different things.
A lot of people have the misconception that two or more CPU's will not be used. Open up the task manager, display the column for thread count and watch them multiply like mad. They are there, you just may not have seen them.
Exactly. Most programs run on simple processes and threading, b/c building multi-threaded programs is a pain and the advantages of HT in scheduling these threads correctly isn't really realized unless we start doing all sorts of clever things w/ threads (i.e. overlapping execution while using the same resource, etc.)
Not to say that HT is useless...far from it, as you mention, b/c different apps will have different threads running at the same time, and those tend to interlock quite nicely w/ HT. The point I was trying to make, though, is that within a single program, I still believe it's hard to program apps that specifically take a big advantage of HT. Since Dashby
is all about performance, I'm guessing that the last thing he wants to do is slow down his precious P4 power by having a lot of needless processes and threads running in conjunction with whatever P-M-crushing app he's running; I guess I should have made that hidden assumption more clear.
Like I said, the biggest examples that I've seen of true multi-threaded programming and mult. CPU usage comes from truly CPU-intensive programs like some of the image-processing programs for brain scans at the place I used to work. There, it was crucial to split up tasks to threads and pass them on to different computers
on the network to process; singleton computers benefitted by having Xeon's act as two computers and Opterons act like mult. computers. Otherwise, the advantage is there w/ HT, but rather slim I'd say at the current moment, especially
within the context of a notebook which by definition should be somewhat mobile...