Welcome guest. Before posting on our computer help forum, you must register. Click here it's easy and free.

Author Topic: A question about my processor  (Read 3070 times)

0 Members and 1 Guest are viewing this topic.

DanielSpanjar

    Topic Starter


    Greenhorn

    • Experience: Familiar
    • OS: Windows XP
    A question about my processor
    « on: July 15, 2012, 01:30:41 PM »
    As I'm learning more about computers every day, I honestly have one thing in my mind that has puzzled me so I would like an answer.

    I'm currently running my processor on an Intel(R) Pentium(R) 4 3.00ghz, but when I look in my System Information it shows that I have two processors but the other one is clocked at 2.99 ghz. Can someone perhaps educate me on why there is a second core even if my CPU runs on a single core? I'll put a screenshot up for download if you really need it.


    [year+ old attachment deleted by admin]
    - Dan

    BC_Programmer


      Mastermind
    • Typing is no substitute for thinking.
    • Thanked: 1140
      • Yes
      • Yes
      • BC-Programming.com
    • Certifications: List
    • Computer: Specs
    • Experience: Beginner
    • OS: Windows 11
    Re: A question about my processor
    « Reply #1 on: July 15, 2012, 01:39:57 PM »
    A Processor feature called Hyper-Threading manifests itself as a second, "virtual" Processor as seen by the Operating System.
    I was trying to dereference Null Pointers before it was cool.

    DanielSpanjar

      Topic Starter


      Greenhorn

      • Experience: Familiar
      • OS: Windows XP
      Re: A question about my processor
      « Reply #2 on: July 15, 2012, 01:46:05 PM »
      A Processor feature called Hyper-Threading manifests itself as a second, "virtual" Processor as seen by the Operating System.
      Could you tell me a little about this feature?
      - Dan

      Computer_Commando



        Hacker
      • Thanked: 494
      • Certifications: List
      • Computer: Specs
      • Experience: Expert
      • OS: Windows 10
      Re: A question about my processor
      « Reply #3 on: July 15, 2012, 02:25:34 PM »
      Download, install & run HWInfo 32 & it will tell you all kinds of things about your computer, cpu, RAM, etc.
      http://www.hwinfo.com/download32.html

      BC_Programmer


        Mastermind
      • Typing is no substitute for thinking.
      • Thanked: 1140
        • Yes
        • Yes
        • BC-Programming.com
      • Certifications: List
      • Computer: Specs
      • Experience: Beginner
      • OS: Windows 11
      Re: A question about my processor
      « Reply #4 on: July 15, 2012, 02:30:51 PM »
      Quote
      Could you tell me a little about this feature?
      Really it doesn't add one Virtual processor, but instead shows itself as two virtual processors which share many common elements of the processor die. Essentially, the processor can run two sets of instructions simultaneously. It's not as big an improvement as having two completely separate cores entirely, but it does have some gains. Some of the more recent processors in fact have hyper-threading on each core, so a quad-core i7 processor has effectively 8 'processors' in some respects.

      Internally, a HT-enabled Processor has two sets of Registers, control registers, and other architecture components. The 'two processors' share the same cache, execution units, and buses.

      What it does, basically, is allow a processor to fill "idle" time by running another set of instructions. This is normally what an OS does, of course- idle time is usually filled by scheduling some other program or thread to run. But this gives it more granularity.

      The OS thinks there are two processors, so it schedules threads to run on those two processors. The threads running on each processor run in such a way that they "share" parts of the processor; The benefit is that if one of the virtual processors is waiting for memory or some other operation, the other virtual processor can keep going, while the other virtual processor is waiting. Normally, what would happen is that time would be "wasted" as the processor just sits idle for several clock cycles waiting for memory or some other operation. Also, one Virtual processor can can be, say, reading from memory while the other one is using the Execution units to do math or arithmetic or other computations.  In addition, because this is done "below" the OS, it is far faster than the scheduling that would be done for a non HT enabled processor.

      I was trying to dereference Null Pointers before it was cool.

      DanielSpanjar

        Topic Starter


        Greenhorn

        • Experience: Familiar
        • OS: Windows XP
        Re: A question about my processor
        « Reply #5 on: July 15, 2012, 05:36:06 PM »
        Really it doesn't add one Virtual processor, but instead shows itself as two virtual processors which share many common elements of the processor die. Essentially, the processor can run two sets of instructions simultaneously. It's not as big an improvement as having two completely separate cores entirely, but it does have some gains. Some of the more recent processors in fact have hyper-threading on each core, so a quad-core i7 processor has effectively 8 'processors' in some respects.

        Internally, a HT-enabled Processor has two sets of Registers, control registers, and other architecture components. The 'two processors' share the same cache, execution units, and buses.

        What it does, basically, is allow a processor to fill "idle" time by running another set of instructions. This is normally what an OS does, of course- idle time is usually filled by scheduling some other program or thread to run. But this gives it more granularity.

        The OS thinks there are two processors, so it schedules threads to run on those two processors. The threads running on each processor run in such a way that they "share" parts of the processor; The benefit is that if one of the virtual processors is waiting for memory or some other operation, the other virtual processor can keep going, while the other virtual processor is waiting. Normally, what would happen is that time would be "wasted" as the processor just sits idle for several clock cycles waiting for memory or some other operation. Also, one Virtual processor can can be, say, reading from memory while the other one is using the Execution units to do math or arithmetic or other computations.  In addition, because this is done "below" the OS, it is far faster than the scheduling that would be done for a non HT enabled processor.
        Awesome! That's a big plus! So some PC games that would require Dual-Core processors would work? Just a little bit slower than normal?
        - Dan

        BC_Programmer


          Mastermind
        • Typing is no substitute for thinking.
        • Thanked: 1140
          • Yes
          • Yes
          • BC-Programming.com
        • Certifications: List
        • Computer: Specs
        • Experience: Beginner
        • OS: Windows 11
        Re: A question about my processor
        « Reply #6 on: July 15, 2012, 06:24:00 PM »
        Awesome! That's a big plus! So some PC games that would require Dual-Core processors would work? Just a little bit slower than normal?

        Probably not, no. Most PC games that require dual core processors require dual core processors- not hyperthreading. What I mean is- the people who chose the requirements most likely knew about hyperthreading, and found it inadequate for the game. If the game has loose checks (such as just asking the OS for the number of processors) it might get past that check but the game will certainly run unplayably slowly because it was written with the idea of two completely disparate processors cores rather than hyperthreading; getting the most out of hyperthreading requires software support.
        I was trying to dereference Null Pointers before it was cool.