HyperThreading Question

Discussion in 'Hardware' started by EricP, Jun 6, 2005.

  1. EricP

    EricP

    I have several dual processor trading machines that I use on a daily basis. This past weekend, I switched the trading on several of my accounts from an older server (that had hyperthreading turned off) to a newer and faster server (that had hyperthreading activated). My early indications are that this newer hyperthreaded server is running at a higher CPU (i.e. slower performance) than the old server was running (all other things assumed equal, RAM, cache, etc).

    Anyway, the primary application that I run in a single threaded process. The intention is that this process will run on one CPU, while all other system processes will run on the second CPU. With hyperthreading, you have the 'appearance' (in task manager) of four CPU's. Is it possible that hyperthreading reduces the amount of CPU that can be allocated to the primary process that I run, and that disabling the hyperthread could actually improve my performance?

    From task manager, it would appear that a single process on a dual CPU machine could consume 100% of the CPU time of one of the CPU's... With the dual machine hyperthreaded, it would <i>appear</i> that the single process would only be able to max out one of the four indicated CPU's, or only half of CPU time of one of the two real CPU's... Is this the way it really works, or would hyperthreading still allow a single process to fully max out one of the two CPU's in a dual system?

    Thanks for any feedback, guidance or links on the topic.

    -Eric

    P.S. For what it's worth, I'm running Windows 2000 on this machine.
     
  2. Mixed to lukewarm reviews on Hyperthreading here is just one article on it from good site...

    http://www.extremetech.com/article2/0,1558,702573,00.asp

    __________________
    HAVE STOP - WILL TRADE
     
  3. EricP,

    I had similar findings:

    1. Single process/ single thread applications running without hyper threading is faster. [for me at least]

    2. Windows shows CPU utilization that's not "accurate" for hyperthreaded applications. I've found that one process only is able to get CPU utilization o 50%. I guess MS simply divides by 2 at some strategic place in the CPU utilization monitor.

    I believe you have to be on XP to get kernel support for hypertheading - Win2000 does not do it. [I could be wrong]

    3. If you have multiple SIGNIFICANT processes, such as your trading engine and maybe a quote feed, I've found hyper threading to help. I even get close to 100% at times.
     
  4. my research has found ht to be of no value with w2000 and only questionable value with most applications on xp.
     
  5. I can second this.
    In db applicartions, ht has been reported to make performance even go down considerably.

    I happen to have random hangups in XP with ht (infrequent, every 24 hrs or so). Turning ht off fixes the problem. Running Linux with ht in the same hardware doesn't cause the problem to occur.
     
  6. i'll second your second

    i remember watching tomshardware videos on benefits of having HT on some industry standard apps like adobe photoshop. however, XP's thread manager is not as well written for multiprocessor setups. i think thats why they have their server version for sale.

    amd 64 x2 looks sweet. kinda pricy. but it might be worth the extra dough




     
  7. EricP

    EricP

    Seems like a solid consensus against hyperthreading, confirming what my I thought I had seen (reduced performance). Anyone know off-hand how to disable hyperthreading, and whether a reboot is required to make the change take affect?

    Edit: I just did some Google'ing, and it appears that the way to change this is during startup by editing the bios. As a result, it would inherently require a reboot. If this is incorrect, or there is a better way, then please let me know. Otherwise, thanks to all for the help.

    Thanks,
    -Eric
     
  8. nitro

    nitro

    On every MB I have ever seen, you have to go into the BIOS change it and reboot.

    I am not convinced this is your problem, but it is always hard to debug remotely.

    nitro
     
  9. the only way i know is through the bios. it is a simple thing to do. simply disable. yes will require a reboot.
     
  10. cakulev

    cakulev

    OK, surely there is some scenario where HT does better?
     
    #10     Jun 30, 2005