Hi Chenbo,

On 12/19/20 7:11 AM, Xia, Chenbo wrote:
> Hi David,
> 
>> -----Original Message-----
>> From: David Marchand <david.march...@redhat.com>
>> Sent: Friday, December 18, 2020 5:54 PM
>> To: Xia, Chenbo <chenbo....@intel.com>
>> Cc: dev <dev@dpdk.org>; Thomas Monjalon <tho...@monjalon.net>; Stephen
>> Hemminger <step...@networkplumber.org>; Liang, Cunming
>> <cunming.li...@intel.com>; Lu, Xiuchun <xiuchun...@intel.com>; Li, Miao
>> <miao...@intel.com>; Wu, Jingjing <jingjing...@intel.com>
>> Subject: Re: [PATCH 0/8] Introduce emudev library and iavf emudev driver
>>
>> On Fri, Dec 18, 2020 at 9:02 AM Chenbo Xia <chenbo....@intel.com> wrote:
>>>
>>> This series introduces a new device abstraction called emudev for
>> emulated
>>> devices. A new library (librte_emudev) is implemented. The first emudev
>>> driver is also introduced, which emulates Intel Adaptive Virtual
>> Function
>>> (iavf) as a software network device.
>>>
>>> This series has a dependency on librte_vfio_user patch series:
>>> http://patchwork.dpdk.org/cover/85389/
>>>
>>> Background & Motivation
>>> -----------------------
>>> The disaggregated/multi-process QEMU is using VFIO-over-socket/vfio-user
>>> as the main transport mechanism to disaggregate IO services from QEMU.
>>> Therefore, librte_vfio_user is introduced in DPDK to accommodate
>>> emulated devices for high performance I/O. Although vfio-user library
>>> provides possibility of emulating devices in DPDK, DPDK does not have
>>> a device abstraction for emulated devices. A good device abstraction
>> will
>>> be useful for applications or high performance data path driver. With
>>> this consideration, emudev library is designed and implemented. It also
>>> make it possbile to keep modular design on emulated devices by
>> implementing
>>> data path related logic in a standalone driver (e.g., an ethdev driver)
>>> and keeps the unrelated logic in the emudev driver.
>>
>> Since you mention performance, how does it compare to vhost-user/virtio?
> 
> I think it depends on the device specification (i.e., how complex its data 
> path
> handling is). A first try on iavf spec shows better performance than virtio
> in our simple tests.

That's interesting! How big is the performance difference? And how do
we explain it?

If there are improvements that could be done in the Virtio
specification, it would be great to know and work on their
implementations. It worries me a bit that every one is coming with
his new device emulation every release, making things like live-
migration difficult to achieve in the future.

Regards,
Maxime

> Thanks!
> Chenbo
> 
>>
>>
>> --
>> David Marchand
> 

Reply via email to