On Wed, Oct 22, 2025 at 12:57:51PM +1030, Qu Wenruo wrote:
My VM is using kvm64 CPU type, which blocks quite a lot of CPU features,
thus the CRC32 performance is pretty poor.
Yes, unaccelerated CRC32 is a bad idea.
I just tried a short hack to always make direct IO to fallback to buffered
IO, the nodatasum performance is the same as the bouncing page solution, so
the slow down is not page cache itself but really the checksum.
With CPU features all passed to the VM, the falling-back-to-buffered direct
IO performance is only slightly worse (10~20%) than nodatasum cases.
I'm a bit lost, what are the exact cases you are comparing here?