none
Hyperthreading considerations for Exchange 2010

    Question

  • The article Understanding Processor Configurations and Exchange Performance http://technet.microsoft.com/en-us/library/dd346699.aspx states that

    Hyper-threading causes capacity planning and monitoring challenges, and as a result, the expected gain in CPU overhead is likely not justified. Hyper-threading should be disabled by default for production Exchange servers and only enabled if absolutely necessary as a temporary measure to increase CPU capacity until additional hardware can be obtained.

    I am curious as to whether there is any more information available about why this is so for Exchange 2010 other than the above statement?

     

    Tuesday, July 06, 2010 8:45 PM

Answers

  • There is no documented information available for more details on it.

    Hyperthreading would allow single CPU to act like multiple CPU's. A CPU is made up of many smaller components. At any given time, one of these components might be busy, while the other components are waiting to be utilized.Hyper-Threading enables different parts of the CPU to work on different tasks concurrently.

    But this gives advantages only in certain situations.  For exchange 2010 production, its recommended to keep hyperthreading disabled. It amy cause issues if its enabled.

    The lab testing results havent found hyperthreadiong a help for exchange 2010.

    Friday, July 09, 2010 6:15 PM

All replies

  • There is no documented information available for more details on it.

    Hyperthreading would allow single CPU to act like multiple CPU's. A CPU is made up of many smaller components. At any given time, one of these components might be busy, while the other components are waiting to be utilized.Hyper-Threading enables different parts of the CPU to work on different tasks concurrently.

    But this gives advantages only in certain situations.  For exchange 2010 production, its recommended to keep hyperthreading disabled. It amy cause issues if its enabled.

    The lab testing results havent found hyperthreadiong a help for exchange 2010.

    Friday, July 09, 2010 6:15 PM
  • 1. If I want to virtualize my Exchange 2010: do I have to disable hyper-threading on my host? My host is running Windows Server 2008 R2 Server Core.

     

    2. What is a general best practice: turning hyper-threading on or off on hyper-v hosts (regardless of the type of VM’s that will be running on the host)?

    Friday, August 13, 2010 7:20 AM
  • In case of virtualization I think we are using virtual processor for the guest OS. and HT has to be enabled to utilize hardware to its limit in virtualization.
    Friday, November 26, 2010 7:21 PM
  • This is my opinion as follows...

    With hyperthreading enabled you don't have a true sense of exactly how loaded your machines are and it makes it harder to plan going forward and harder to tell when you're truly hitting your performance limits. I personally like it disabled and would only enable it to help bridge a gap if I started hitting performance limitations and had new hardeware on order to be deployed. Might there be measurable perf benefits for Hypervisors by enabling it, perhaps there is.... but I don't like it. :)

     

    ...again, that's my personal opinion and not to be taking as any kind of suggestion.


    Microsoft Premier Field Engineer, Exchange
    MCSA 2000/2003, CCNA
    MCITP: Enterprise Messaging Administrator 2010
    Former Microsoft MVP, Exchange Server
    My posts are provided “AS IS” with no guarantees, no warranties, and they confer no rights.
    Friday, November 26, 2010 7:30 PM
  • Our Exchange 2010 SP1 installation consist of 8 x MBX ,4 x HUB, 6 x CAS. 29 000 mailboxes

    It does feel if we are running into performance issues. Replay queues ext.

    After Investigating i did find that all servers have 16 cores, which 12 is the maximum recommended cores for single role servers.

    We wanted to disable 4 cores, but after further investigation found that the Hyperthreading was enabled.

    We have a change this weekend to disable Hyperthreading so i could possibly give an answer after this weekend.

    I do believe there is a reason for the Hyperthreading to be disabled.


    Thats what she said

    Friday, February 17, 2012 8:46 AM
  • The maximum recommended core count #s are based on cost per core and ROI. There is no technical reasoning behind it. Further said 2010 was designed to work best (best being a combination of performance and value) with 2-socket systems and it was expected hex-core CPUs would become the norm during 2010's lifecycle. This is why you often see the values of 12 and 24 which are aimed at 2 or 4 socket systems with hex-core processors.

    If you are seeing performance issues I would recommend tracking down why they exist.


    Microsoft Premier Field Engineer, Exchange
    MCSA 2000/2003
    MCTS: Win Server 2008 AD, Configuration MCTS: Win Server 2008 Network Infrastructure, Configuration
    MCITP: Enterprise Messaging Administrator 2010
    Former Microsoft MVP, Exchange Server

    NOTICE: My posts are provided “AS IS” without warranty of any kind, either expressed or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.

    Monday, February 20, 2012 4:01 AM
  • yes i fully understand it, Microsoft Architect's answer was to install extra role's.

    Like i mentioned Hyperthreading was enabled, and after this weekend disabled.

    We also had extra disk installed for 4 more DB's to elevate the load on the DB's

    Copy/Replay queues i could point that there is too many users per DB.

    Sitting close to 700 users per DB, DB is now 400GB.


    Thats what she said

    Monday, February 20, 2012 8:52 AM
  • yes i fully understand it, Microsoft Architect's answer was to install extra role's.

    Like i mentioned Hyperthreading was enabled, and after this weekend disabled.

    We also had extra disk installed for 4 more DB's to elevate the load on the DB's

    Copy/Replay queues i could point that there is too many users per DB.

    Sitting close to 700 users per DB, DB is now 400GB.

    Ok, just wanted to make sure we're on the same page that Hyperthreading being enabled was most likely not your issue. :) It sounds like the disks may need another look if they are not performing up to your design spec and what was verified with Jetstress.

    Microsoft Premier Field Engineer, Exchange
    MCSA 2000/2003
    MCTS: Win Server 2008 AD, Configuration MCTS: Win Server 2008 Network Infrastructure, Configuration
    MCITP: Enterprise Messaging Administrator 2010
    Former Microsoft MVP, Exchange Server

    NOTICE: My posts are provided “AS IS” without warranty of any kind, either expressed or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.

    Monday, February 20, 2012 2:42 PM
  • do you have a idea what the average IOPS should be on SATA and SAS?


    Thats what she said

    Friday, February 24, 2012 8:28 AM
  • do you have a idea what the average IOPS should be on SATA and SAS?


    Too hard to say. It'll depend on rotational speed, form factor, etc...

    For a 3" 7200 RPM SATA drive I'd probably feel safe using 55-70 IOPS per spindle.


    Microsoft Premier Field Engineer, Exchange
    MCSA 2000/2003
    MCTS: Win Server 2008 AD, Configuration MCTS: Win Server 2008 Network Infrastructure, Configuration
    MCITP: Enterprise Messaging Administrator 2010
    Former Microsoft MVP, Exchange Server

    NOTICE: My posts are provided “AS IS” without warranty of any kind, either expressed or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.

    Friday, February 24, 2012 2:26 PM