High CPU temps on idle VM or light load

gracethenerd

New Member
Mar 25, 2023
5
1
3
A few months ago I woke up to my PC with high fan speeds and high CPU temps. I am running a 12600k and after some research found there was an issue on Intel's side, so I upgraded my BIOS which solved the issue, but then maybe a week or two later it started doing it again. This time I noticed it was only when my VM was idle, just actually logging in and using it for a few minutes resolved the high temp issue, but as soon as it was idle it would do it again. I waited for another BIOS update, which seemed to help somewhat. Now its really just at random when it does this. Sometimes I will just be watching videos, sometimes doing my homework and the fans will spin up and temps will jump to 100C. Each time I have to pause the VM (or stop it) and it will balance out. These remains the same across my other two VM's. I have done all Proxmox updates, disabled IO threads on my main VM (read this on another post), tried different versions of q35 to no avail. When running htop it does show kvm is eating my CPU, but I have no idea why. Any assistance on this would be helpful. Thanks everyone!

vm config:
agent: 1
args: -cpu host,kvm=off
balloon: 0
bios: ovmf
boot: order=virtio0;net0
cores: 4
cpu: host
efidisk0: local-lvm:vm-100-disk-1,efitype=4m,size=4M
hostpci0: 0000:03:00,pcie=1
hostpci1: 0000:00:14.0
machine: q35
memory: 16384
meta: creation-qemu=7.2.0,ctime=1681031676
name: Garuda
net0: virtio=2E:6E:2B:94:0A:2E,bridge=vmbr0,firewall=1
numa: 0
onboot: 1
ostype: l26
parent: fullgpu
scsi0: /dev/disk/by-id/ata-WDC_WD3200BEKT-22KA9T0_WD-WXD1E70Y1629,size=312571224K
scsi1: /dev/disk/by-id/ata-APPLE_HDD_HTS545050A7E362_TNS5193T3PU2JH,size=488386584K
scsi2: /dev/disk/by-id/nvme-SOLIDIGM_SSDPFKNU010TZ_PHEH240400WJ1P0B,size=1000204632K
scsi3: /dev/disk/by-id/ata-WDC_WD5000BPVX-00JC3T0_WD-WX21A27H7TNA,size=488386584K
scsihw: virtio-scsi-pci
smbios1: uuid=5fcd1141-da31-4531-b59c-1b5da02cbc5f
sockets: 1
tablet: 0
vga: none
virtio0: local-lvm:vm-100-disk-3,cache=unsafe,discard=on,size=256G
vmgenid: d7c769be-de29-4843-b53a-fc2d87c444ad

root@pve:~# pveversion -v
proxmox-ve: 8.3.0 (running kernel: 6.8.12-4-pve)
pve-manager: 8.3.0 (running version: 8.3.0/c1689ccb1065a83b)
proxmox-kernel-helper: 8.1.0
pve-kernel-6.2: 8.0.5
pve-kernel-5.15: 7.4-12
proxmox-kernel-6.8: 6.8.12-4
proxmox-kernel-6.8.12-4-pve-signed: 6.8.12-4
proxmox-kernel-6.8.12-3-pve-signed: 6.8.12-3
proxmox-kernel-6.8.12-2-pve-signed: 6.8.12-2
proxmox-kernel-6.8.8-4-pve-signed: 6.8.8-4
proxmox-kernel-6.8.8-3-pve-signed: 6.8.8-3
proxmox-kernel-6.8.8-2-pve-signed: 6.8.8-2
proxmox-kernel-6.8.8-1-pve-signed: 6.8.8-1
proxmox-kernel-6.2.16-20-pve: 6.2.16-20
proxmox-kernel-6.2: 6.2.16-20
pve-kernel-5.15.149-1-pve: 5.15.149-1
pve-kernel-5.15.74-1-pve: 5.15.74-1
ceph-fuse: 16.2.11+ds-2
corosync: 3.1.7-pve3
criu: 3.17.1-2
glusterfs-client: 10.3-5
ifupdown2: 3.2.0-1+pmx11
ksm-control-daemon: 1.5-1
libjs-extjs: 7.0.0-5
libknet1: 1.28-pve1
libproxmox-acme-perl: 1.5.1
libproxmox-backup-qemu0: 1.4.1
libproxmox-rs-perl: 0.3.4
libpve-access-control: 8.2.0
libpve-apiclient-perl: 3.3.2
libpve-cluster-api-perl: 8.0.10
libpve-cluster-perl: 8.0.10
libpve-common-perl: 8.2.9
libpve-guest-common-perl: 5.1.6
libpve-http-server-perl: 5.1.2
libpve-network-perl: 0.10.0
libpve-rs-perl: 0.9.0
libpve-storage-perl: 8.2.9
libspice-server1: 0.15.1-1
lvm2: 2.03.16-2
lxc-pve: 6.0.0-1
lxcfs: 6.0.0-pve2
novnc-pve: 1.5.0-1
proxmox-backup-client: 3.2.9-1
proxmox-backup-file-restore: 3.2.9-1
proxmox-firewall: 0.6.0
proxmox-kernel-helper: 8.1.0
proxmox-mail-forward: 0.3.1
proxmox-mini-journalreader: 1.4.0
proxmox-widget-toolkit: 4.3.1
pve-cluster: 8.0.10
pve-container: 5.2.2
pve-docs: 8.3.1
pve-edk2-firmware: 4.2023.08-4
pve-esxi-import-tools: 0.7.2
pve-firewall: 5.1.0
pve-firmware: 3.14-1
pve-ha-manager: 4.0.6
pve-i18n: 3.3.1
pve-qemu-kvm: 9.0.2-4
pve-xtermjs: 5.3.0-3
qemu-server: 8.3.0
smartmontools: 7.3-pve1
spiceterm: 3.3.0
swtpm: 0.8.0+pve1
vncterm: 1.8.0
zfsutils-linux: 2.2.6-pve1
 

Attachments

  • Screenshot_20241126_090449.png
    Screenshot_20241126_090449.png
    190.2 KB · Views: 11
  • Screenshot_20241124_134146.png
    Screenshot_20241124_134146.png
    50.3 KB · Views: 11
Last edited:
Well, i am new at proxmox, but args: -cpu host,kvm=off is given to qemu?
While the kvm=off is not documented on at qemu , it probably switches from CPU pass-through to software emulation, which needs much more CPU cycles on the host.
 
Well, i am new at proxmox, but args: -cpu host,kvm=off is given to qemu?
While the kvm=off is not documented on at qemu , it probably switches from CPU pass-through to software emulation, which needs much more CPU cycles on the host.
I noticed this as well even though KVM is set to yea in the options menu. Looking at an old snapshot it’s been that way since I created it (don’t remember why) and it’s always worked until now. I did remove it but still no change.
 
What does top show when the temps jump to 100C?
This is a screenshot from a couple of days ago. Recently had to shutdown my vm so don't have one from today. But this is what I would see when hitting those temps. KVM using a lot resources with just minimal usage and sometimes when it's idle.
 

Attachments

  • Screenshot_20241124_134050.png
    Screenshot_20241124_134050.png
    114.9 KB · Views: 6
Lots of recent CPU boost until they reach a maximum temperature. This way they can squeeze the most performance from a single thread while other parts of the CPU are idle. Lots of post on the internet about 12th gen Intel reaching 100C. Repast your cooler? Use a better CPU cooler? Make sure to have good airflow in the case. Or disable turbo to prevent the CPU from boosting to maximum temperatures.
My Ryzen CPU will always to to 80C (average, sometime higher) on single threaded work-loads even when 31 threads are doing nothing.
Check what that VM is doing when your CPU gets hot. Maybe it's mining for bitcoins? Or limit the VM to not do that anymore by giving it less cores or VCPUs.
 
  • Like
Reactions: Kingneutron
^ This. I would be looking at the BIOS settings and maybe Underclocking if you don't want it to get hot.
But redoing your thermal paste and maybe changing the cooling fan is also worth looking into
 
Lots of recent CPU boost until they reach a maximum temperature. This way they can squeeze the most performance from a single thread while other parts of the CPU are idle. Lots of post on the internet about 12th gen Intel reaching 100C. Repast your cooler? Use a better CPU cooler? Make sure to have good airflow in the case. Or disable turbo to prevent the CPU from boosting to maximum temperatures.
My Ryzen CPU will always to to 80C (average, sometime higher) on single threaded work-loads even when 31 threads are doing nothing.
Check what that VM is doing when your CPU gets hot. Maybe it's mining for bitcoins? Or limit the VM to not do that anymore by giving it less cores or VCPUs.
I ran into this during my research. I’ve repeated twice and disabled turbo. I have a pretty good AIO cooler and ruled out any issues with it. Changed up my fan configuration to ensure good airflow. None of these have made a difference. Sometimes I am doing homework or just watching streams/videos, haven’t even been able to play a game without it reaching 100C. Don’t do any type of mining and no automations running or scheduled to run. So I am a bit at a loss. I did see something in my logs last night that pointed my to my GPU (rx7600xt) and noticed that all the pass through configurations were no longer there(very odd). I updated all of that, but no changes yet.
 
  • Like
Reactions: Kingneutron