[ovs-dev] PMD auto load balance experimental tag

Kevin Traynor ktraynor at redhat.com
Fri Mar 5 17:06:44 UTC 2021

Hi All,

PMD auto load balance (ALB) is an experimental feature since OVS 2.11.

In short, RxQs are reassigned to PMDs based on load during a reconfig.

However, there might not be a reconfig for a long time so ALB runs
periodically and checks PMD thread load and the load variance between
PMD threads. If load is high and it's estimated that it will be improved
by a certain amount after reassigning RxQs to PMDs, a reassignment is

ALB calls the reassignment code similar to if there was a reconfig or if
the rebalance command is used. There are some ideas for how to improve
RxQ to PMD assignments in general, but that's a slightly different topic
and can be a later optimization if needed.

ALB is documented more here:

I would like to progress it so the experimental tag on ALB can be
removed. There are a few things I think are needed:

- Need to restructure the code so that ALB reassignment dry run uses the
same code path as the reassignment code it will call

- ALB operation should be understandable through logs and stats
e.g. Should be able to confirm setting state/parameters in logs and see
if ALB is taking some action. Should be able to get more debug if needed

- Unit tests
Some patches here:

- Iron out if the current ALB enable/disable user interface logging
based partly min resource requirements is right or we want to it to run

- Review/Improve operation documentation

- Further testing



More information about the dev mailing list