* [dpdk-users] MLX5: Using packet send scheduling / packet pacing
@ 2021-01-29 16:30 Carsten Andrich
2021-01-29 16:50 ` Thomas Monjalon
0 siblings, 1 reply; 5+ messages in thread
From: Carsten Andrich @ 2021-01-29 16:30 UTC (permalink / raw)
To: users
Hello everyone,
I'm trying to use packet send scheduling [1] with DPDK 20.11 and the
MLX5 PMD (NIC: ConnectX-5 MCX516A-CDAT). This patch contains some
additional information on this feature also know as packet pacing [2].
According to MLX5's docs, packet pacing requires the "tx_pp" parameter
[3, CTRL+F: "tx_pp"]. However, when firing up testpmd with that
parameter, it fails as follows:
> # dpdk-testpmd -a 81:00.0,tx_pp=500 -- -i
> ...
> EAL: Probe PCI driver: mlx5_pci (15b3:1019) device: 0000:81:00.0 (socket 0)
> mlx5_pci: WQE rate mode is required for packet pacing
> mlx5_pci: probe of PCI device 0000:81:00.0 aborted after encountering an error: No such device
> common_mlx5: Failed to load driver = mlx5_pci.
>
> EAL: Requested device 0000:81:00.0 cannot be used
The error message originates here [4] and is caused by what to me
appears to be a value read from the NIC [5]. Unfortunately, that leaves
me clueless on how to activate the required "WQE rate mode". According
to the output of ibv_devinfo, my NIC does support packet pacing:
> # ibv_devinfo -v 81:00.0
> ...
> packet_pacing_caps:
> qp_rate_limit_min: 1kbps
> qp_rate_limit_max: 100000000kbps
> supported_qp:
> SUPPORT_RAW_PACKET
I'd be grateful for any information on how to get packet pacing up and
running. Am I just missing another required option (which is not given
in the docs) or does my NIC lack packet pacing support?
Thank you very much in advance.
Best regards,
Carsten
[1]
https://doc.dpdk.org/api/rte__ethdev_8h.html#a990d8351447a710628cbb24a28d3252d
[2] https://patches.dpdk.org/patch/73742/
[3] https://doc.dpdk.org/guides/nics/mlx5.html#run-time-configuration
[4]
http://code.dpdk.org/dpdk/v20.11/source/drivers/net/mlx5/linux/mlx5_os.c#L1278
[5]
http://code.dpdk.org/dpdk/v20.11/source/drivers/common/mlx5/mlx5_devx_cmds.c#L748
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-users] MLX5: Using packet send scheduling / packet pacing
2021-01-29 16:30 [dpdk-users] MLX5: Using packet send scheduling / packet pacing Carsten Andrich
@ 2021-01-29 16:50 ` Thomas Monjalon
2021-01-29 18:04 ` Slava Ovsiienko
0 siblings, 1 reply; 5+ messages in thread
From: Thomas Monjalon @ 2021-01-29 16:50 UTC (permalink / raw)
To: Carsten Andrich; +Cc: users, viacheslavo
+Cc Slava
29/01/2021 17:30, Carsten Andrich:
> Hello everyone,
>
> I'm trying to use packet send scheduling [1] with DPDK 20.11 and the
> MLX5 PMD (NIC: ConnectX-5 MCX516A-CDAT). This patch contains some
> additional information on this feature also know as packet pacing [2].
>
> According to MLX5's docs, packet pacing requires the "tx_pp" parameter
> [3, CTRL+F: "tx_pp"]. However, when firing up testpmd with that
> parameter, it fails as follows:
>
> > # dpdk-testpmd -a 81:00.0,tx_pp=500 -- -i
> > ...
> > EAL: Probe PCI driver: mlx5_pci (15b3:1019) device: 0000:81:00.0 (socket 0)
> > mlx5_pci: WQE rate mode is required for packet pacing
> > mlx5_pci: probe of PCI device 0000:81:00.0 aborted after encountering an error: No such device
> > common_mlx5: Failed to load driver = mlx5_pci.
> >
> > EAL: Requested device 0000:81:00.0 cannot be used
> The error message originates here [4] and is caused by what to me
> appears to be a value read from the NIC [5]. Unfortunately, that leaves
> me clueless on how to activate the required "WQE rate mode". According
> to the output of ibv_devinfo, my NIC does support packet pacing:
>
> > # ibv_devinfo -v 81:00.0
> > ...
> > packet_pacing_caps:
> > qp_rate_limit_min: 1kbps
> > qp_rate_limit_max: 100000000kbps
> > supported_qp:
> > SUPPORT_RAW_PACKET
> I'd be grateful for any information on how to get packet pacing up and
> running. Am I just missing another required option (which is not given
> in the docs) or does my NIC lack packet pacing support?
>
> Thank you very much in advance.
>
> Best regards,
> Carsten
>
> [1]
> https://doc.dpdk.org/api/rte__ethdev_8h.html#a990d8351447a710628cbb24a28d3252d
> [2] https://patches.dpdk.org/patch/73742/
> [3] https://doc.dpdk.org/guides/nics/mlx5.html#run-time-configuration
> [4]
> http://code.dpdk.org/dpdk/v20.11/source/drivers/net/mlx5/linux/mlx5_os.c#L1278
> [5]
> http://code.dpdk.org/dpdk/v20.11/source/drivers/common/mlx5/mlx5_devx_cmds.c#L748
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-users] MLX5: Using packet send scheduling / packet pacing
2021-01-29 16:50 ` Thomas Monjalon
@ 2021-01-29 18:04 ` Slava Ovsiienko
2021-01-30 10:54 ` Carsten Andrich
0 siblings, 1 reply; 5+ messages in thread
From: Slava Ovsiienko @ 2021-01-29 18:04 UTC (permalink / raw)
To: NBU-Contact-Thomas Monjalon, Carsten Andrich; +Cc: users
Hi, Carsten
To use packet pacing capability:
- ConnectX-6DX or above is required
- the NV settings should be configured (set timestamp to real-time UTC)
With best regards,
Slava
> -----Original Message-----
> From: Thomas Monjalon <thomas@monjalon.net>
> Sent: Friday, January 29, 2021 18:50
> To: Carsten Andrich <carsten.andrich@tu-ilmenau.de>
> Cc: users@dpdk.org; Slava Ovsiienko <viacheslavo@nvidia.com>
> Subject: Re: [dpdk-users] MLX5: Using packet send scheduling / packet pacing
>
> 29/01/2021 17:30, Carsten Andrich:
> > Hello everyone,
> >
> > I'm trying to use packet send scheduling [1] with DPDK 20.11 and the
> > MLX5 PMD (NIC: ConnectX-5 MCX516A-CDAT). This patch contains some
> > additional information on this feature also know as packet pacing [2].
> >
> > According to MLX5's docs, packet pacing requires the "tx_pp" parameter
> > [3, CTRL+F: "tx_pp"]. However, when firing up testpmd with that
> > parameter, it fails as follows:
> >
> > > # dpdk-testpmd -a 81:00.0,tx_pp=500 -- -i ...
> > > EAL: Probe PCI driver: mlx5_pci (15b3:1019) device: 0000:81:00.0
> > > (socket 0)
> > > mlx5_pci: WQE rate mode is required for packet pacing
> > > mlx5_pci: probe of PCI device 0000:81:00.0 aborted after
> > > encountering an error: No such device
> > > common_mlx5: Failed to load driver = mlx5_pci.
> > >
> > > EAL: Requested device 0000:81:00.0 cannot be used
> > The error message originates here [4] and is caused by what to me
> > appears to be a value read from the NIC [5]. Unfortunately, that
> > leaves me clueless on how to activate the required "WQE rate mode".
> > According to the output of ibv_devinfo, my NIC does support packet pacing:
> >
> > > # ibv_devinfo -v 81:00.0
> > > ...
> > > packet_pacing_caps:
> > > qp_rate_limit_min: 1kbps
> > > qp_rate_limit_max: 100000000kbps
> > > supported_qp:
> > > SUPPORT_RAW_PACKET
> > I'd be grateful for any information on how to get packet pacing up and
> > running. Am I just missing another required option (which is not given
> > in the docs) or does my NIC lack packet pacing support?
> >
> > Thank you very much in advance.
> >
> > Best regards,
> > Carsten
> >
> > [1]
> >
> https://doc.dpdk.org/api/rte__ethdev_8h.html#a990d8351447a710628cbb24
> a
> > 28d3252d [2] https://patches.dpdk.org/patch/73742/
> > [3] https://doc.dpdk.org/guides/nics/mlx5.html#run-time-configuration
> > [4]
> > http://code.dpdk.org/dpdk/v20.11/source/drivers/net/mlx5/linux/mlx5_os
> > .c#L1278
> > [5]
> >
> http://code.dpdk.org/dpdk/v20.11/source/drivers/common/mlx5/mlx5_devx
> _
> > cmds.c#L748
> >
> >
>
>
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-users] MLX5: Using packet send scheduling / packet pacing
2021-01-29 18:04 ` Slava Ovsiienko
@ 2021-01-30 10:54 ` Carsten Andrich
2021-01-30 13:13 ` Thomas Monjalon
0 siblings, 1 reply; 5+ messages in thread
From: Carsten Andrich @ 2021-01-30 10:54 UTC (permalink / raw)
To: Slava Ovsiienko, NBU-Contact-Thomas Monjalon; +Cc: users
Hi Slava,
thank you for the prompt response. I think the requirements for Packet
Pacing should be added to Table 34.2(?) of the MLX5 docs [1].
Best regards,
Carsten
[1] https://doc.dpdk.org/guides/nics/mlx5.html#mlx5-offloads-support
On 29.01.21 19:04, Slava Ovsiienko wrote:
> Hi, Carsten
>
> To use packet pacing capability:
> - ConnectX-6DX or above is required
> - the NV settings should be configured (set timestamp to real-time UTC)
>
> With best regards,
> Slava
>
>> -----Original Message-----
>> From: Thomas Monjalon <thomas@monjalon.net>
>> Sent: Friday, January 29, 2021 18:50
>> To: Carsten Andrich <carsten.andrich@tu-ilmenau.de>
>> Cc: users@dpdk.org; Slava Ovsiienko <viacheslavo@nvidia.com>
>> Subject: Re: [dpdk-users] MLX5: Using packet send scheduling / packet pacing
>>
>> 29/01/2021 17:30, Carsten Andrich:
>>> Hello everyone,
>>>
>>> I'm trying to use packet send scheduling [1] with DPDK 20.11 and the
>>> MLX5 PMD (NIC: ConnectX-5 MCX516A-CDAT). This patch contains some
>>> additional information on this feature also know as packet pacing [2].
>>>
>>> According to MLX5's docs, packet pacing requires the "tx_pp" parameter
>>> [3, CTRL+F: "tx_pp"]. However, when firing up testpmd with that
>>> parameter, it fails as follows:
>>>
>>>> # dpdk-testpmd -a 81:00.0,tx_pp=500 -- -i ...
>>>> EAL: Probe PCI driver: mlx5_pci (15b3:1019) device: 0000:81:00.0
>>>> (socket 0)
>>>> mlx5_pci: WQE rate mode is required for packet pacing
>>>> mlx5_pci: probe of PCI device 0000:81:00.0 aborted after
>>>> encountering an error: No such device
>>>> common_mlx5: Failed to load driver = mlx5_pci.
>>>>
>>>> EAL: Requested device 0000:81:00.0 cannot be used
>>> The error message originates here [4] and is caused by what to me
>>> appears to be a value read from the NIC [5]. Unfortunately, that
>>> leaves me clueless on how to activate the required "WQE rate mode".
>>> According to the output of ibv_devinfo, my NIC does support packet pacing:
>>>
>>>> # ibv_devinfo -v 81:00.0
>>>> ...
>>>> packet_pacing_caps:
>>>> qp_rate_limit_min: 1kbps
>>>> qp_rate_limit_max: 100000000kbps
>>>> supported_qp:
>>>> SUPPORT_RAW_PACKET
>>> I'd be grateful for any information on how to get packet pacing up and
>>> running. Am I just missing another required option (which is not given
>>> in the docs) or does my NIC lack packet pacing support?
>>>
>>> Thank you very much in advance.
>>>
>>> Best regards,
>>> Carsten
>>>
>>> [1]
>>>
>> https://doc.dpdk.org/api/rte__ethdev_8h.html#a990d8351447a710628cbb24
>> a
>>> 28d3252d [2] https://patches.dpdk.org/patch/73742/
>>> [3] https://doc.dpdk.org/guides/nics/mlx5.html#run-time-configuration
>>> [4]
>>> http://code.dpdk.org/dpdk/v20.11/source/drivers/net/mlx5/linux/mlx5_os
>>> .c#L1278
>>> [5]
>>>
>> http://code.dpdk.org/dpdk/v20.11/source/drivers/common/mlx5/mlx5_devx
>> _
>>> cmds.c#L748
>>>
>>>
>>
>>
>>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-users] MLX5: Using packet send scheduling / packet pacing
2021-01-30 10:54 ` Carsten Andrich
@ 2021-01-30 13:13 ` Thomas Monjalon
0 siblings, 0 replies; 5+ messages in thread
From: Thomas Monjalon @ 2021-01-30 13:13 UTC (permalink / raw)
To: Slava Ovsiienko, Carsten Andrich; +Cc: users
30/01/2021 11:54, Carsten Andrich:
> Hi Slava,
>
> thank you for the prompt response. I think the requirements for Packet
> Pacing should be added to Table 34.2(?) of the MLX5 docs [1].
+1 for improving the doc
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2021-01-30 13:13 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-29 16:30 [dpdk-users] MLX5: Using packet send scheduling / packet pacing Carsten Andrich
2021-01-29 16:50 ` Thomas Monjalon
2021-01-29 18:04 ` Slava Ovsiienko
2021-01-30 10:54 ` Carsten Andrich
2021-01-30 13:13 ` Thomas Monjalon
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).