[dpdk-dev] [EXT] Re: [PATCH 00/39] adding eventmode helper library

Mattias Rönnblom mattias.ronnblom at ericsson.com
Mon Jun 17 15:23:48 CEST 2019

On 2019-06-14 11:18, Anoob Joseph wrote:
> Hi Mattias,
>> A more extensive description of the purpose of the eventmode helper
>> library would be helpful.
>> Is this supposed to be a generic framework for real-world
>> applications, or only something to simplify DPDK the implementation of
>> DPDK example programs and similar?
> This is intended as a generic framework, but the initial targets would be limited to DPDK example applications.
> For any application to use an event device for dynamic load balancing, it has to configure the event device and the adapters. Configuring the adapters would involve providing various parameters based on which the dynamic scheduling should happen. But requiring the application to do all this configuration would make the application complicated as well as the same code has to be repeated for a new application. Event mode helper tries to solve that.
> All the complex configuration would be implemented by the helper library and the helper library would provide a default conf as well.

The task of configuring eventdev and its adaptors, and ethernet devices 
is a daunting task indeed. If we could simplify that, that would be great.

However, the flexibility and many of the parameters are there for a 
reason (those there aren't should be deprecated). I would expect a 
real-world application to tweak quite a few of them. I know our 
applications do.

I worry I have is that if you put eventmode (in its current form) 
forward as a generic framework, applications might start using it, only 
to realize it's not flexible enough, and then eventmode is just an extra 
layer, increasing rather than reducing complexity. Or even worse, the 
application's developers are forced to do a big-bang switch over to 
using the event and ethernet device APIs directly, in case they can't 
patch DPDK to work around the 

You could always add flexibility to the framework (as you encounter a 
need for it), but then it will grow in complexity as well.

A less ambitious approach would be to instead do a properly modularized, 
non-trivial eventdev example application, for the applications to start 
off from, instead of a generic library.

I would expect it to be very difficult to design a truly generic 
application framework for eventdev-based applications. Such a framework 
would tie everything that's needed in a non-trivial application 
together. If successful, it would be a huge step toward making DPDK an 
operating system for packet processing applications.

What event devices have you tested with?

More information about the dev mailing list