Impact on DPDK application when using the multi-process feature?
Stephen Hemminger
stephen at networkplumber.org
Fri Nov 26 18:22:36 CET 2021
On Fri, 26 Nov 2021 13:27:40 +0100
Staffan Wiklund <staffan491 at gmail.com> wrote:
> Hello
>
> I wonder if you please can help me with some questions regarding the DPDK
> multi-process feature?
>
> If a primary process and the secondary processes all execute on different
> CPU cores,
> what limitations are there on the secondary processes when using DPDK
> functions
> for initialization of EAL and for handling ethernet devices?
>
> That is, is a secondary process allowed to call the rte_eal_init function
> or any of
> the rte_eth_xxx functions?
Secondary process has to call rte_eal_init() with secondary (or auto flag).
Which of the rte_eth_xxx functions are you asking about?
> What will happen if a secondary process calls any of these DPDK functions?
>
> The reason for these questions is that I would like to execute 3-4 DPDK
> applications that
> now executes as stand-alone applications as one primary process and the
> other
> applications as secondary processes. All these processes will share memory
> which
> shall be used to improve the speed of communication between the
> applications.
Several applications do this.
> The applications currently use DPDK for Ethernet based communication and I
> would
> like to learn what needs to be modified in order to be able to execute them
> as a
> primary and secondary processes using DPDK shared memory.
>
> Best regards
> Staffan
To be honest, my experience is that not all functions work on all drivers
with the multi-process model. The documentation mostly covers the ones that
don't but you have to be careful and test with particular drivers and use cases.
More information about the users
mailing list