I just want to add something, as I'm using X220 with i7-2640m, I disable the hyper thread, but kept using virtualization, it drop my idle from 50*C to 41*C, and if the room cool enough (24*C, or less), it will drop to 37-38*C, on light browsing using firefox on W10 21H2, it can stay about 45*C, zoom meeting about 55*C average from 70*C with hyperthread, and no slow/sluggish on powersave when disabling hyper thread.
As I don't do heavy computation, I don't think Hyper Thread give me any performance hit by disabling it, and my Firefox become smoother than before while browsing. I kept any power related in BIOS to balance, and it went very well for me. On O365 Word or Excel, I can stay about 41-42*C writing thesis and research paper, 45*C while running GVim with coc.nvim php-ls, coc-python, coc-* plugins, simple openRA, tiberian sun, dune 2000, red alert 1 gaming, about 53-55*C at peak, rendering zoom meet video, about 65*C to 70*C (but I move it to cloud, download it using CURL, and move it to my Drive, I love my X220, so I better pay for rendering in cloud), run VS Code with many extension(20-30 ext), stay at 50*C.
Building C# ASP.NET Core 6.0, no different in time building but temp drop from 60*C to 50*C, it's good, and other database like MySQL, Postgree, and SQL Server 2019 run well for development purpose with million of row line, no performance hit.
I think based on my scenario, I assume the hyperthread really make the CPU process chunk of computation that's unnecessary in some point, and our cpu is old, let it have some space to breath. I would rather give up 5-15% improvement, than make my X220 died fast.
TLDR; disabling hyper thread, drop 10*C on average to 40*C.
