Hyperthreading (CPU split into two)

Discussion in 'Modding and Customization' started by SANGER_A2, Feb 2, 2009.

  1. SANGER_A2

    SANGER_A2

    Joined:
    Dec 5, 2008
    Messages:
    5
    Likes Received:
    0
    Has anyone tried forcing Windows to just see the CPU as one processor and disabling the dual processor functions? If so, did they see any performance increases? I've seen a few mentions of it but nothing on how well it works.
     
    SANGER_A2, Feb 2, 2009
    #1
  2. SANGER_A2

    remoh

    Joined:
    Jul 11, 2008
    Messages:
    54
    Likes Received:
    0
    performance increase ??
     
    remoh, Feb 2, 2009
    #2
  3. SANGER_A2

    nmesisca

    Joined:
    Oct 6, 2008
    Messages:
    318
    Likes Received:
    0
    Location:
    Ireland
    if you disable HT I would expect a decrease in performances, not an increase.
    how is 1 CPU better than 2 (though not physical CPU)??
     
    nmesisca, Feb 2, 2009
    #3
  4. SANGER_A2

    jackluo923

    Joined:
    Aug 26, 2008
    Messages:
    843
    Likes Received:
    0
    run this command in windows

    msconfig

    go to boot.ini

    advanced options

    set /NUMPROC= to 1.

    Save and the restart

    By setting the value to 1, you'll tell windows to limit the running "processor" to 1 logical processor only.

    I wouldn't disable the hyperthreading if I were you as it "improve" your AAO's processor capability. If you don't need that extra 30% speedboost, you'll save a bit of power by turning hyperthreading off.

    And no, the hyperthreading function does not split the cpu into 2. That's why you don't get 100% speed improvement.
     
    jackluo923, Feb 2, 2009
    #4
  5. SANGER_A2

    SANGER_A2

    Joined:
    Dec 5, 2008
    Messages:
    5
    Likes Received:
    0
    I assumed that Hyper-threading meant that you get two 800mhz processors instead of one 1600mhz processor. Obviously not from the comments! :)
     
    SANGER_A2, Feb 2, 2009
    #5
  6. SANGER_A2

    jackluo923

    Joined:
    Aug 26, 2008
    Messages:
    843
    Likes Received:
    0
    Hyperthreading could be described as 1 fake processor and a real processor.
     
    jackluo923, Feb 3, 2009
    #6
  7. SANGER_A2

    dj_steve

    Joined:
    Sep 12, 2008
    Messages:
    129
    Likes Received:
    0
    hyperthreading allows the cpu to run two 'threads' (applications) at the same time, it uses the idle time from the first thread to run the second one, if you actually watch the cpu graph and max out the cpu on one thread (using an app like cpu burn in or similar ) you will see that the second 'core' sits at 0% most of the time as it has no processing time to work using. so really your not getting 2 cpus just 1 800/1333/1600mhz cpu that can do 2 things at once.

    same test on a dual core system would show the second core working normally even if first is maxxed
     
    dj_steve, Mar 9, 2009
    #7
  8. SANGER_A2

    melhiore

    Joined:
    Sep 3, 2008
    Messages:
    1,503
    Likes Received:
    0
    Location:
    Bolton, Lancashire, UK
    No...

    HT works like dj_steve said operating on "two" CPUs 1.6GHz each...
     
    melhiore, Mar 9, 2009
    #8
  9. SANGER_A2

    Naiw

    Joined:
    Mar 10, 2009
    Messages:
    2
    Likes Received:
    0
    The Intel Atom is a inorder execution processor, that means it has no hardware logic to rearrange the instructions it executes.
    This is of great importance for performance as a processor only have a fixed amount of units that can handle specific tasks.
    It's also important that you realize that instructions may take several "rounds" (cycles) before completion.

    Just imagine a processor that has two addition units, one multiply unit and one branch unit.

    If we say an addition takes 3 cycles, a multiply takes 5 cycles and a branch 2 cycles. (and for making this example easy we assume the processor can issue one instruction per cycle)

    That means if the instruction feed looks like "multiply, add , branch, add, branch, add" the multiply unit will be busy for the next 5 instructions, so if we encounter another multiply operation within these 5 instructions the processor will get jammed here until the previous multiply is completed- that's not the case in this example so we move on.
    the add instruction takes 3 cycles in this example, ie if we encounter another add within 3 instructions we would be jammed... or would we? No as the imaginary processor in this example has two ALUs it can issue two adds simultaneously.
    Next instruction is a branch, it has a latency of 2 cycles- and obviously there is a branch within two cycles... well you get the point.

    Most processors (the expensive ones) have complex logic that can on the fly "optimize" code in various ways, one of these optimizations are just reordering of instructions to avoid these jams as much as possible,
    The Intel Atom does not however... and this is where hyperthreading comes into play.

    Hyperthreading is basically a duplicate set of registers, and basically runs this additional register set when the "main thread" is jammed- so say we got jammed on the multiply instructions above, that means the processor can issue additions and branches on the other logical thread during this time.

    I don't remember the exact number but I think hyperthreading is just like 5% extra circuitry and theoretically may give up to about 30% higher performance in a multithreaded context. It's basically used on all "lowcost" desktop class processors today,
    hyperthreading is Intels trademark though, IBM calls it simultaneously multithreading (SMT) and it's used in both the Xbox360 Xenon chip, and the Playstation 3 Cell chip as well...

    This is a very simplified explaination, I hope it sheds some light on the technology though.
     
    Naiw, Mar 10, 2009
    #9
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.