I am investigating a performance issue where IOPS in Proxmox 9.1.9 VMs is significantly lower than in other virtualization environments, despite having normal throughput.
1. IOPS Benchmark (Random Read)I used the following fio command to measure 4K Random Read performance:
fio --name=randread --ioengine=libaio --direct=1 --bs=4k --iodepth=64 --size=1G --readwrite=randread --runtime=60 --group_reporting
fio --name=seqwrite --ioengine=libaio --direct=1 --bs=1m --iodepth=16 --size=1G --readwrite=write --runtime=60 --group_reporting
The Problem:While throughput remains consistent across all platforms, Proxmox alone shows a nearly 50% drop in IOPS compared to the host, whereas VMware maintains near-native performance and RHEL KVM shows much less overhead.
Is there a specific reason why IOPS is uniquely throttled or degraded in Proxmox 9? I would appreciate any insights into why this discrepancy exists only for IOPS and not for throughput.
1. IOPS Benchmark (Random Read)I used the following fio command to measure 4K Random Read performance:
fio --name=randread --ioengine=libaio --direct=1 --bs=4k --iodepth=64 --size=1G --readwrite=randread --runtime=60 --group_reporting
- Proxmox 9.1.9 Host (Bare-metal): ~200k IOPS
- Proxmox 9.1.9 VM (Idle state): 100k ~ 110k IOPS
- RHEL9 KVM VM: 160k ~ 170k IOPS
- VMware 9 VM: ~200k IOPS
fio --name=seqwrite --ioengine=libaio --direct=1 --bs=1m --iodepth=16 --size=1G --readwrite=write --runtime=60 --group_reporting
The Problem:While throughput remains consistent across all platforms, Proxmox alone shows a nearly 50% drop in IOPS compared to the host, whereas VMware maintains near-native performance and RHEL KVM shows much less overhead.
Is there a specific reason why IOPS is uniquely throttled or degraded in Proxmox 9? I would appreciate any insights into why this discrepancy exists only for IOPS and not for throughput.