- Newest
- Most votes
- Most comments
When you disable hyperthreading you're no longer using vCPUs, you're using CPUs. If you think about it from the perspective that you're paying for CPUs then you're paying for the same CPUs whether or not you're using hyperthreading. In your example, if you're running 500 vCPUs you're paying for 250 CPUs with 2 threads per CPU. If you turn off hyperthreading, you're still paying for the same 250 CPUs with 1 thread per CPU
This is a known best practice for HPC: https://docs.aws.amazon.com/wellarchitected/latest/high-performance-computing-lens/compute.html
You can configure hyperthreading off when launching, there is no additional cost or cost reduction: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html
Our open source Cluster Management Tool, Parallel Cluster explicitly uses this option: https://docs.aws.amazon.com/parallelcluster/latest/ug/cluster-definition.html#disable-hyperthreading
Hi Rodney, Thanks for the tips and links. For the comment:
"You can configure hyperthreading off when launching, there is no additional cost or cost reduction"
The issue is when you switch off hyperthreading you lose half your vCPUs, but you have payed for all of them. I am sort of paying double because my particular code is very efficient and cany use hyperthreading.
It is a particular CFD way of looking at it:)
Kind Regards
Stephen
Relevant content
- asked 10 months ago
- asked 2 years ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 4 years ago
- AWS OFFICIALUpdated a year ago