Hi Francois, I hope you are doing well.
It is great to hear about work/progress/updates on VPP / DPDK / Netmap
on FBSD, even if the results are not the best.
Unfortunately, I'm not a developer, so I cannot help much on the matter
of the missing bits.
Just wondering if those modifications that your team have done to make
VPP run can be upstreamed or shared with the community, so maybe we can
create a VPP package making it easier for others to deploy/test/improve.
On the other hand, do you roughly know how much effort is required to
make VFIO support at the same level as Linux?
I hope it makes sense.
Best regards.
Santiago
On 9/21/21 11:52 AM, Francois ten Krooden wrote:
Hi
This is just some feedback for those who had an interest in this topic.
After spending quite some time on the VPP to FreeBSD porting effort where we
did manage to get VPP working with netmap, and VPP compiling with DPDK; We
realised that there are some big issues that we would need to overcome. Some of
these efforts are not viable for our small team to accomplish in a reasonable
time frame.
The main issues that we have found are:
- Tests proved that netmap would not deliver the desired performance as it is
currently implemented within VPP. The main issues here are that for every 256
packets memory seems to be allocated again, also a number of copies occur in
the memory which slows down the performance.
- VPP relies on VFIO to map device memory into user space for processing within
the application. This code is implemented in DPDK in the Linux implementation
but in the FreeBSD implementation in DPDK these functions are stubbed.
- To interface with crypto-offloading hardware such as the QAT card from Intel,
or our own card VPP/DPDK also utilize VFIO with the PCI device.
- As far as we have been able to see the VFIO support in FreeBSD is not at the
same level as Linux, which would then require additional kernel development
which is not possible in the time frame.
Regards
Francois ten Krooden
Principal Developer
Tel: +27 12 672 7000
Fax: +27 12 665 1343
Postal: P.O. Box 7991, Centurion, 0046
Physical: Unit C01, Corporate Park 66, 269 Von Willich Avenue,
Centurion
Important Notice:
This e-mail and its contents are subject to the Nanoteq (Pty) Ltd e-mail legal
notice available at:
http://www.nanoteq.com/AboutUs/EmailDisclaimer.aspx