Announcement

Collapse
No announcement yet.

Solution: Windows uses only one core on a multi core system

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Solution: Windows uses only one core on a multi core system

    A short story about "Windows uses only one core on a multi core system" and how to fix it.

    I encountered this problem by chance on my Windows XP Pro SP2 running on a Core2 Duo E6600. It took some effort to find the cause and a solution to the problem. The nasty thing about this: you might be suffering from the problem without knowing.

    The Problem: Windows Explorer uses only one of the two CPU cores of my dual core machine and all programs that are launched inherit this behavior, because they launch as child process of explorer.exe.

    The Solution: This MSDN blog blames old Windows Explorer Shell Extensions that force Windows Explorer to fall back to CPU0 and drop the CPU affinity for CPU1 (and CPU2 and CPU3 on quadcores).

    If you suffer from this problem - which only appears after opening Windows Explorer for the first time after a fresh boot - go and update or remove any old software that installs a Shell Extension until you find the troublemaker.
    In my case the Macromedia RDS&FTP Shell Extension that came with Homesite 5.5 was causing the problem. I removed it and the CPU affinity of explorer.exe and all programs is now set to both CPU cores and stays that way!

    Glossary
    How to check CPU affinity on multi core machines?
    Open the Task Manager by pressing CTRL+SHIFT+ESC. Select the "Process" tab. Right-click on explorer.exe and select "Set affinity...". All checkboxes should be marked.

    What is a Shell Extension?
    Any program that hooks itself in the Windows Explorer. Additional options that appear when you right-click on files or folders like WinRar or (example). Another example for a shell extension are these Notmad icons.

    Don't let them take one of your cores away from you!
    former TacticalGamer European Division



    A Tactical Gamer since 2005 (the glorious days of BF2)

  • #2
    Re: Solution: Windows uses only one core on a multi core system

    Good info. Thanks!
    Twisted Firestarter
    a.k.a |TG| Harkonian
    sigpic

    Comment


    • #3
      Re: Solution: Windows uses only one core on a multi core system

      I checked everything last night, and both of my cores are always running. hmm I was hoping they wern't so I'd get some more performance.

      Comment


      • #4
        Re: Solution: Windows uses only one core on a multi core system

        Sounds like the problem is with plugins. I mostly avoid them, even in Firefox. Alas, Macromedia is hard to avoid, given the number of Flash-based websites. But I checked and both FF and IE7 are using both cores.

        I use Task Manager all the time, and I always open it by right-clicking on the system tray.
        Dude, seriously, WHAT handkerchief?

        snooggums' density principal: "The more dense a population, the more dense a population."

        Iliana: "You're a great friend but if we're ever chased by zombies I'm tripping you."

        Comment


        • #5
          Re: Solution: Windows uses only one core on a multi core system

          Originally posted by UnDeaD77 View Post
          I checked everything last night, and both of my cores are always running. hmm I was hoping they wern't so I'd get some more performance.
          heh, i was thinking the same thing... 'dang, its not broke.. so i have nothing to fix /puts hammer and torch away'
          powered by Windows 7

          . . . .

          Comment


          • #6
            Re: Solution: Windows uses only one core on a multi core system

            Originally posted by G--Man
            Is this still an issue? That article is about 2 years old....
            The blog talks about an old MPEG decoder that forces Windows Explorer back on one CPU, in my case it was Macromedia Homesite - so i figured this could affect more (outdated) programs.

            Note that this is not about browser plugins, but Windows Shell Extensions - "Plugins" for Windows so to speak.
            former TacticalGamer European Division



            A Tactical Gamer since 2005 (the glorious days of BF2)

            Comment


            • #7
              Re: Solution: Windows uses only one core on a multi core system

              Good info. Don't think I suffer from this problem and I don't have Homesite installed either.
              |TG-18th| Acreo Aeneas
              TG World of Tanks Clan Executive Officer
              Former 9th & 13th

              Pronounciation: Eh-Cree-Oh Ah-Nay-Ess
              Still can't say it? Call me Acorn then. -.-





              SSDs I Own: Kingston HyperX 3K (240 GB), Samsung 840 Pro (256 GB), Samsung 840 EVO (250 GB), Samsung 840 x 2 (120 GB), Plextor M5S (120 GB), OCZ Vertex (30 GB)

              TG Primer and Rules

              Comment


              • #8
                Re: Solution: Windows uses only one core on a multi core system

                Update: It looks like i jumped to a conclusion suspecting the old Homesite component to cause my problem.

                Turns out i still suffered from the problem and the cause seems to be my Notmad Explorer Zen (great software to manage your MP3 player by Red Chair)

                I filed a support ticket just now.
                Originally posted by Support Ticket
                By pressing [Windows Key]+E after a fresh boot, Notmad Explorer causes the Windows Explorer (explorer.exe) process to use only one CPU core. Any programs launched from this moment on are only using one of my two CPU cores because they inherit the behaviour from explorer.exe.

                HOW TO REPRODUCE THE PROBLEM
                Boot up and check CPU affinity of explorer.exe in Task Manager. explorer.exe uses CPU0 and CPU1. I dblclick on "My Computer" check CPU affinity in Task Manager. explorer.exe uses CPU0 and CPU1. Dblclick on the "Notmad Explorer Zen" icon and check CPU affinity of explorer.exe
                Now suddenly explorer.exe is only assigned to CPU0!

                Any programs launched from this moment on are only using one of my two CPU cores.
                The problem also starts when first launching Windows Explorer by pressing [Windows Key]+E on the keyboard.
                If you reset the explorer.exe affinity to all CPU cores you have to kill and restart the explorer.exe process to reproduce this again (just like after a fresh boot)
                What makes this even worse than my initial report suggested is that current software also can cause this problem (I am using the latest Version of Notmad from August 2007!)
                former TacticalGamer European Division



                A Tactical Gamer since 2005 (the glorious days of BF2)

                Comment


                • #9
                  Re: Solution: Windows uses only one core on a multi core system

                  Can't you just use TaskMan to enable additional processors? It has little checkboxes and stuff.

                  Comment


                  • #10
                    Re: Solution: Windows uses only one core on a multi core system

                    All cores are enabled by default. The problem is that Notmad Explorer keeps disabling my second core whenever i launch Windows Explorer by pressing [Windows Key]+E ... I have to enable the second core manually (clicking checkboxes and stuff) every time after i start Windows Explorer.
                    former TacticalGamer European Division



                    A Tactical Gamer since 2005 (the glorious days of BF2)

                    Comment

                    Connect

                    Collapse

                    TeamSpeak 3 Server

                    Collapse

                    Advertisement

                    Collapse

                    Twitter Feed

                    Collapse

                    Working...
                    X