none
How do Azure instance CPU cores map to physical cores?

    Question

  • Hi all,

    As the title says, I'm wondering what the mapping is between an instance's core count and the physical cores on the host.

    I plan to use the Extra Large instances, along with their 8 cores. Does that mean there are 8 physical cores (a one-to-one mapping)? Is there actually hyper-threading meaning there are only 4 physical cores (two-to-one mapping)? Does the hypervisor do something else entirely?

    I ask because my cpu-intensive app has zero performance increase when using logical cores through hyper-threading (in fact, it makes things worse). Running my app with 8 threads on a 4physical/8logical core machine is worse for me than just running 4 threads on the same machine.

    To be clear, I'm just talking about cores within a single (extre large in this case) instance. I'll actually end up with several of these instances but that's a separate issue.

    I'm assuming here that the 8 cores within an XL instance are located on the same physical host, and that they all access the same (local) RAM.

    Cheers

    Wednesday, May 11, 2011 5:39 PM

Answers

  • Stuart,

    There is no hyperthreading or any cloak and dagger for S, M, L and XL instances.  A core that you get for these VM is a real logical core.  We do not use hyperthreading as you have noticed that it introduced unpredictability into the system. 

    And for each instance type, all the cores all access the same RAM on the same physical node. 

    So in truth you have a real slice of the server.  Predictability is very important for us because everyone needs to know what we offer and count on that to scale out as needed.

    Please let us know if there are any other concerns.

    Hoi

    Friday, May 13, 2011 6:44 PM

All replies

  • Hello StuartHartley,

    Thanks for your question.
     
    I am trying to involve someone familiar with this topic to further look at this issue. There might be some time delay. Appreciate your patience.

    Thanks,


    Wengchao Zeng
    Please mark the replies as answers if they help or unmark if not.
    If you have any feedback about my replies, please contact msdnmg@microsoft.com.
    Microsoft One Code Framework
    Friday, May 13, 2011 2:32 AM
  • Stuart,

    There is no hyperthreading or any cloak and dagger for S, M, L and XL instances.  A core that you get for these VM is a real logical core.  We do not use hyperthreading as you have noticed that it introduced unpredictability into the system. 

    And for each instance type, all the cores all access the same RAM on the same physical node. 

    So in truth you have a real slice of the server.  Predictability is very important for us because everyone needs to know what we offer and count on that to scale out as needed.

    Please let us know if there are any other concerns.

    Hoi

    Friday, May 13, 2011 6:44 PM
  • Thanks for answering Hoi, that's what I was wanting to hear. I'm sure you will have explained this when we met on a deep dive 2 summers back, but I wanted to make sure things hadn't changed. I don't think XL instances (or any choice in size for that matter) existed back then either.

    I'll be sure to get in touch if I have other questions.

    Stuart

    Friday, May 13, 2011 7:15 PM
  • Hi, is there any public documentation around this?

    Thanks


    Rami Sarieddine Technical Evangelist

    Wednesday, November 29, 2017 11:43 AM
  • Hello, is there a documentation we can reivew???
    Wednesday, February 21, 2018 8:01 PM