DPDK usage discussions
 help / color / mirror / Atom feed
From: Maxime Coquelin <maxime.coquelin@redhat.com>
To: Antonio Di Bacco <a.dibacco.ks@gmail.com>
Cc: David Marchand <david.marchand@redhat.com>, users@dpdk.org
Subject: Re: tap device speed
Date: Mon, 9 Oct 2023 20:42:21 +0200	[thread overview]
Message-ID: <1bc48922-8fe2-1523-b7b5-f67999e09f71@redhat.com> (raw)
In-Reply-To: <CAO8pfFm+yqoqwTo=XKVT4LiqRs0bC22=QEjPkLX8FwtO1Wf5dw@mail.gmail.com>

Hi Antonio,

On 10/9/23 19:48, Antonio Di Bacco wrote:
> Hi Maxime,
> 
> trying to follow the steps at the link provided:
> 
> 
> sage:
> ======
> 
> 1. Probe required Kernel modules
> # modprobe vdpa
> # modprobe vduse
> # modprobe virtio-vdpa
> 
> 2. Build (require vduse kernel headers to be available)
> # meson build
> # ninja -C build
> 
> 3. Create a VDUSE device (vduse0) using Vhost PMD with
> testpmd (with 4 queue pairs in this example)
> # ./build/app/dpdk-testpmd --no-pci
> --vdev=net_vhost0,iface=/dev/vduse/vduse0,queues=4 --log-level=*:9  --
> -i --txq=4 --rxq=4
> 
> 4. Attach the VDUSE device to the vDPA bus
> # vdpa dev add name vduse0 mgmtdev vduse
> 
> I'm stuck at step 4, with an error:
> 
> manderwo@fetgem01:~$ sudo vdpa dev add name vduse0 mgmtdev vduse
> kernel answers: Invalid argument
> manderwo@fetgem01:~$ vdpa mgmtdev show
> vduse:
>    supported_classes block
> manderwo@fetgem01:~$
> 
> Do you know what could be wrong?

I guess you don't have the kernel patches applied, a recent branch  can 
be found on my gitlab aacount.
You can find instructions here:

https://gitlab.com/mcoquelin/vduse-doc/-/blob/master/SETUP.md?ref_type=heads#kernel

Maxime

> 
> Thank you in advance,
> Antonio.
> 
> On Wed, Oct 4, 2023 at 9:50 AM Maxime Coquelin
> <maxime.coquelin@redhat.com> wrote:
>>
>>
>>
>> On 10/4/23 09:42, Antonio Di Bacco wrote:
>>> Thank you for your info that are giving me the right heads up
>>> To experiment with VDUSE and share a virtual network interface (I
>>> don't have a physical NIC) between the Linux kernel and DPDK using
>>> VDUSE, I'm about to follow these steps:
>>>
>>> Load Required Kernel Modules:
>>> modprobe vduse
>>> Create /dev/vdpa0 device with:
>>> vdpa -d /dev/vdpa0 -n my_vdpa_driver -q queue_count
>>>
>>> I wonder which vdpa_driver should I use, I don't have a real NIC
>>> After having this vdpa0 interface up I can run my DPDK application:
>>>
>>> ./my_dpdk_app --vdev "net_vdpa0,iface=/dev/vdpa0"
>>
>> You will use the Vhost PMD in this case (alternative is to use the Vhost
>> API directly).
>>
>> Maybe I missed to add steps with Vhost PMD in my doc repo, I'll improve
>> it but in the mean time you can refer to the steps provided in the DPDK
>> VDUSE series cover letter:
>> https://inbox.dpdk.org/dev/7f72500a-5317-c66d-3f36-2fd65c874b47@redhat.com/T/
>>
>> Please read the vduse documentation on my gitlab repo anyways, it
>> provides pointers on the missing Kernel patches (being upstreamed).
>>
>> Maxime
>>
>>
>>> Regards,
>>> Antonio.
>>>
>>> On Wed, Oct 4, 2023 at 9:08 AM Maxime Coquelin
>>> <maxime.coquelin@redhat.com> wrote:
>>>>
>>>>
>>>>
>>>> On 10/4/23 08:17, David Marchand wrote:
>>>>> On Tue, Oct 3, 2023 at 6:01 PM Stephen Hemminger
>>>>> <stephen@networkplumber.org> wrote:
>>>>>>
>>>>>> On Tue, 3 Oct 2023 10:49:16 +0200
>>>>>> Antonio Di Bacco <a.dibacco.ks@gmail.com> wrote:
>>>>>>
>>>>>>> I understand, could we use another solution ? Like a memif  interface
>>>>>>> in DPDK and libmemif in Linux?
>>>>>>
>>>>>> The issue is accessing kernel networking devices. Both virtio user
>>>>>> and XDP are faster for that. Memif is for doing process to process networking.
>>>>>
>>>>> For dpdk <-> kernel, as you are mentioning virtio-user/vhost, let me
>>>>> add that there is some activity on this side, with VDUSE.
>>>>>
>>>>> Maxime is working on the VDUSE kernel and dpdk bits.
>>>>> He gave a talk about the current status during the summit and some
>>>>> performance numbers:
>>>>> https://dpdksummit2023.sched.com/event/1P9xA/vduse-performance-how-fast-is-it-maxime-coquelin-red-hat
>>>>>
>>>>>
>>>>
>>>> Thanks for sharing David.
>>>> I'd like just to add some more information on VDUSE if you want to
>>>> experiment with VDUSE, which is still under development:
>>>> https://gitlab.com/mcoquelin/vduse-doc
>>>>
>>>> Maxime
>>>>
>>>
>>
> 


      reply	other threads:[~2023-10-09 18:42 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-02 19:13 Antonio Di Bacco
2023-10-02 21:21 ` Stephen Hemminger
2023-10-03  8:49   ` Antonio Di Bacco
2023-10-03 16:01     ` Stephen Hemminger
2023-10-04  6:17       ` David Marchand
2023-10-04  7:08         ` Maxime Coquelin
2023-10-04  7:42           ` Antonio Di Bacco
2023-10-04  7:49             ` Maxime Coquelin
2023-10-09 17:48               ` Antonio Di Bacco
2023-10-09 18:42                 ` Maxime Coquelin [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1bc48922-8fe2-1523-b7b5-f67999e09f71@redhat.com \
    --to=maxime.coquelin@redhat.com \
    --cc=a.dibacco.ks@gmail.com \
    --cc=david.marchand@redhat.com \
    --cc=users@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).