[dpdk-dev] Added Spinlock to l3fwd-vf example to prevent race conditioning

Stephen Hemminger stephen at networkplumber.org
Thu Dec 11 00:38:37 CET 2014


On Wed, 10 Dec 2014 11:16:46 -0500
Neil Horman <nhorman at tuxdriver.com> wrote:

> This really seems like a false savings to me.  If an application intends to use
> multiple processes (which by all rights it seems like the use case that the dpdk
> is mostly designed for) then you need locking one way or another, and you've
> just made application coding harder, because the application now needs to know
> which functions might have internal critical sections that they need to provide
> locking for.

The DPDK is not Linux.
See the examples of how to route without using locks by doing asymmetric multiprocessing.
I.e queues are only serviced by one CPU.

The cost of a locked operation (even uncontended) is often enough to drop
packet performance by several million PPS.


More information about the dev mailing list