I am choosing between two models of servers, the major difference between them being the the availability of Hyper-Threading.

Servers in question are SYS-E32-1 and SYS-E32-3 from So you Start (an OVH brand) and use either Intel Xeon E3-1225 v2 or E3-1245 v2, both Ivy bridge ("third generation" Core-i Xeon CPU):

The big difference between them is that the first has 4 core/4 threads configuration, while the latter has 4 core/8 threads, due to Hyper-Threading being enabled.

I am going to run CentOS 6 and other OS guests on a CentOS 6 host with KVM virtualization. Currently I assign 1 virtual CPU per virtual machine, as that's enough for my current loads. Our normal load is the usual web services.

How much should the performance differ for me? Is it close to having twice more computing power or nearly the same computing power, distributed over twice more cores?

  • Run your application on each and load test it. – user9517 May 3 '14 at 23:02
  • 1
    @Iain This is a specific and well-researched question about Hyper-Threading. There's nothing about Hyper-Threading in the linked post. – Nickolai Leschov May 3 '14 at 23:29
  • 1
    The question hinges on how hyper-threading works, and you can get a good start on that by reading the Wikipedia page. The question does not really demonstrate any research in that direction. Once you understand how it works, it does in fact become a capacity planning problem with too many localized versions for us to answer. How many VMs are active? How consistent is their individual load? So on and so forth. – Andrew B May 4 '14 at 6:51
  • 1
    Nickolai, it's not a duplicate because the questions are identical. It's a duplicate because the answers are. You tell us about your usage case, and ask for help deciding between hardware on that basis; as the linked question's leading answer says: "There are a number of factors at play in capacity planning ... Doing a proper analysis on these factors, and others, is beyond the scope of a simple question-and-answer site: They require detailed knowledge about your environment and requirements which only your team (or an adequately-compensated consultant) can gather efficiently." – MadHatter May 4 '14 at 16:45

Performance gains greatly vary with the type of workload you run on them. You will unfortunately need to test it yourself.

To quote the Wikipedia Article:

Hyper-Threading can improve the performance of some MPI applications, but not all. Depending on the cluster configuration and, most importantly, the nature of the application running on the cluster, performance gains can vary or even be negative. The next step is to use performance tools to understand what areas contribute to performance gains and what areas contribute to performance degradation.

That said, nothing hurts you from buying a Hyper-Threading enabled CPU, and then disable HT in the BIOS.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.