On Sun, Jun 23, 2019 at 03:46:29PM +0200, Rainer Duffner wrote: > I have huge problems running FreeBSD 12 (amd64) as a KVM guest. > > KVM is running on Ubuntu 18 LTS, in an OpenStack setup with dedicated Ceph-Storage (NVMe SSDs). > > The VM „flavor" as such is that IOPs are limited to 2000/s - and I do get those 2k IOPs when I run e.g. CentOS 7. > > But on FreeBSD, I get way less. > > E.g. running dc3dd to write zeros to a disk, I get 120 MB/s on CentOS 7. > With FreeBSD, I get 9 MB/s. > > > The VMs were created on an OpenSuSE 42.3 host with the commands described here: > > https://docs.openstack.org/image-guide/freebsd-image.html > > > This mimics the results we got on XenServer, where also some people reported the same problems but other people had no problems at all. > > Feedback from the FreeBSD community suggests that the problem is not unheard of, but also not universally reproducible. > So, I assume it must be some hypervisor misconfiguration? > > I’m NOT the administrator of the KVM hosts. I can ask them tomorrow, though. > > I’d like to get some ideas on what to look for on the hosts directly, if that makes sense. Hi Rainer, Maybe it's the benchmark. Can you share the exact command-line you are running on CentOS 7 and FreeBSD? The blocksize and amount of parallelism (queue depth or number of processes/threads) should be identical on CentOS and FreeBSD. The benchmark should open the file with O_DIRECT. It should not fsync() (flush) after every write request. If you are using large blocksizes (>256 KB) then perhaps the guest I/O stack is splitting them up differently on FreeBSD and Linux. Here is a sequential write benchmark using dd: dd if=/dev/zero of=/dev/vdX oflag=direct bs=4k count=1048576 Stefan
Attachment:
signature.asc
Description: PGP signature