Re: Is the BHyVe guest as suitable for high-performance disk IO as the host?

2015-05-10 Thread Neel Natu
Hi Tinker,

On Sun, May 10, 2015 at 6:16 AM, Tinker ti...@openmailbox.org wrote:
 Hi Neel,

 Thank you very much for your response -

 That's great!

 I guess this should deliver the full capacity for basically any IO system
 around, be it a fast SSD or ramdisk. (Since the guest may not need to flush
 data immediately to the host, I guess read performance is the more sensitive
 point.)

 Which disk emulation mode is best for a BSD guest, virtio-blk or
 ahci-hd?


You'll need to experiment because there are so many moving pieces: the
guest driver implementation, VM exit overhead, capabilities of a
emulated disk controller. From the narrow perspective of VM-exit
overhead 'virtio-blk' is better because the CPU decodes all the
information needed to handle the I/O exit.

 In general, should any other consideration be made for performance (using
 the direct or nocache BHyVe configuration options, particular
 consideration for proper sector alignment when using a disk image stored on
 the host's SSD-based ZFS, mounting the host ZFS filesystem with noatime)?


Using nocache will prevent double-buffering of the virtual disk file
in the host. Using direct will guarantee consistency of the virtual
disk file on the underlying storage device. If you are purely focused
on performance then don't use either option but be aware that you'll
be using buffer cache on the host and also that the guest filesystem
could be corrupted on an unplanned host shutdown.

With respect to alignment I am not sure if you can request a specific
alignment when creating a flat file for the virtual disk. However, if
you use a ZVOL as a backing device then it can be created on top of a
partition which has the correct alignment.

best
Neel

 Kind regards,
 Tinker


 On 2015-05-10 04:03, Neel Natu wrote:

 Hi Tinker,

 On Sat, May 9, 2015 at 9:49 AM, Tinker ti...@openmailbox.org wrote:

 Hi!

 For an environment with very heavy parallell IO, should the performance
 be
 just as good in a BHyVe guest as in the FreeBSD host environment?

 What I thought of is that I guess within the host environment, the
 storage
 subsystem should have all kinds of optimizations like an internal work
 queue
 that pushes lots of work alinearly/asynchronously to the disk controller
 and
 this way allows it, in turn, to give all its performance.

 Does the virtualized disk interface carry over all that goodness to the
 guest?


 bhyve creates 8 worker threads for each virtual disk controller (both
 ahci and virtio-blk).

 All guest I/O is handled asynchronously by these worker threads which
 provide parallelism.

 (https://wiki.freebsd.org/bhyve seems to say yes, presuming you configure
 BHyVe to run the virtual disk in AHCI mode?)


 The wiki is out of date.

 Since r280037 the virtio-blk emulation also gets the benefits of using
 the block_if worker threads.

 best
 Neel

 Thanks!
 Tinker

 ___
 freebsd-virtualization@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization
 To unsubscribe, send any mail to
 freebsd-virtualization-unsubscr...@freebsd.org


___
freebsd-virtualization@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization
To unsubscribe, send any mail to 
freebsd-virtualization-unsubscr...@freebsd.org


Re: Is the BHyVe guest as suitable for high-performance disk IO as the host?

2015-05-10 Thread Tinker

Hi Neel,

Thank you very much for your response -

That's great!

I guess this should deliver the full capacity for basically any IO 
system around, be it a fast SSD or ramdisk. (Since the guest may not 
need to flush data immediately to the host, I guess read performance is 
the more sensitive point.)


Which disk emulation mode is best for a BSD guest, virtio-blk or 
ahci-hd?


In general, should any other consideration be made for performance 
(using the direct or nocache BHyVe configuration options, particular 
consideration for proper sector alignment when using a disk image stored 
on the host's SSD-based ZFS, mounting the host ZFS filesystem with 
noatime)?


Kind regards,
Tinker

On 2015-05-10 04:03, Neel Natu wrote:

Hi Tinker,

On Sat, May 9, 2015 at 9:49 AM, Tinker ti...@openmailbox.org wrote:

Hi!

For an environment with very heavy parallell IO, should the 
performance be

just as good in a BHyVe guest as in the FreeBSD host environment?

What I thought of is that I guess within the host environment, the 
storage
subsystem should have all kinds of optimizations like an internal work 
queue
that pushes lots of work alinearly/asynchronously to the disk 
controller and

this way allows it, in turn, to give all its performance.

Does the virtualized disk interface carry over all that goodness to 
the

guest?



bhyve creates 8 worker threads for each virtual disk controller (both
ahci and virtio-blk).

All guest I/O is handled asynchronously by these worker threads which
provide parallelism.

(https://wiki.freebsd.org/bhyve seems to say yes, presuming you 
configure

BHyVe to run the virtual disk in AHCI mode?)



The wiki is out of date.

Since r280037 the virtio-blk emulation also gets the benefits of using
the block_if worker threads.

best
Neel


Thanks!
Tinker

___
freebsd-virtualization@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization
To unsubscribe, send any mail to
freebsd-virtualization-unsubscr...@freebsd.org


___
freebsd-virtualization@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization
To unsubscribe, send any mail to 
freebsd-virtualization-unsubscr...@freebsd.org


[Differential] [Commented On] D1944: PF and VIMAGE fixes

2015-05-10 Thread julian (JulianElischer)
julian added a subscriber: julian.
julian added a comment.

in case I didn't point you at this before... 
http://p4web.freebsd.org/@md=dcd=//depot/projects/vimage/cdf=//depot/projects/vimage/porting_to_vimage.txtc=win@//depot/projects/vimage/porting_to_vimage.txt?ac=22


REVISION DETAIL
  https://reviews.freebsd.org/D1944

EMAIL PREFERENCES
  https://reviews.freebsd.org/settings/panel/emailpreferences/

To: nvass-gmx.com, bz, zec, trociny, glebius, rodrigc, kristof, gnn
Cc: julian, robak, freebsd-virtualization, freebsd-pf, freebsd-net
___
freebsd-virtualization@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization
To unsubscribe, send any mail to 
freebsd-virtualization-unsubscr...@freebsd.org