Awful FreeBSD 9 block IO performance in KVM
Bryan Venteicher
bryanv at daemoninthecloset.org
Sun Jul 22 16:15:31 UTC 2012
----- Original Message -----
> From: "Dieter BSD" <dieterbsd at engineer.com>
> To: hackers at freebsd.org, current at freebsd.org
> Sent: Sunday, July 22, 2012 1:19:32 AM
> Subject: Re: Awful FreeBSD 9 block IO performance in KVM
>
> >>> da0: 3.300MB/s transfers
> >>> da0: Command Queueing enabled
> >
> > root at freebsd:/root # dd if=/dev/zero of=/dev/da1 bs=16384
> > count=262144
> >
> > 4294967296 bytes transferred in 615.840721 secs (6974153 bytes/sec)
>
> 1) Does a larger block size (bs=1m) help?
>
> 2) That's roughly the speed I'd expect without queueing. Is it really
> making effective use of queueing, or is something limiting queueing to
> one transfer at a time?
The likely fix here is basically do vtblk_startio() in a separate
kproc that vtblk_strategy() enqueues bio's to. This has been on my
todo for a while, but haven't had the time. Also, the use of
bioq_disksort() probably doesn't gain much for virtualized disks,
but I never found much of a difference in my testing.
> _______________________________________________
> freebsd-hackers at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to
> "freebsd-hackers-unsubscribe at freebsd.org"
>
More information about the freebsd-hackers
mailing list