diff options
author | Cheng Li <lic121@chinatelecom.cn> | 2022-12-17 13:15:36 +0000 |
---|---|---|
committer | Ilya Maximets <i.maximets@ovn.org> | 2022-12-21 22:15:47 +0100 |
commit | 46e04ec31bb2b889bd5715d436be2bdc0268f08b (patch) | |
tree | 39e1666a32dc45bfef90a65ec22864159f5004f6 /.ci/linux-build.sh | |
parent | ad6e506fcb63e34f3398c5284cb2bd1858ac3a49 (diff) | |
download | openvswitch-46e04ec31bb2b889bd5715d436be2bdc0268f08b.tar.gz |
dpif-netdev: Calculate per numa variance.
Currently, pmd_rebalance_dry_run() calculate overall variance of
all pmds regardless of their numa location. The overall result may
hide un-balance in an individual numa.
Considering the following case. Numa0 is free because VMs on numa0
are not sending pkts, while numa1 is busy. Within numa1, pmds
workloads are not balanced. Obviously, moving 500 kpps workloads from
pmd 126 to pmd 62 will make numa1 much more balance. For numa1
the variance improvement will be almost 100%, because after rebalance
each pmd in numa1 holds same workload(variance ~= 0). But the overall
variance improvement is only about 20%, which may not trigger auto_lb.
```
numa_id core_id kpps
0 30 0
0 31 0
0 94 0
0 95 0
1 126 1500
1 127 1000
1 63 1000
1 62 500
```
As auto_lb doesn't balance workload across numa nodes. So it makes
more sense to calculate variance improvement per numa node.
Signed-off-by: Cheng Li <lic121@chinatelecom.cn>
Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
Co-authored-by: Kevin Traynor <ktraynor@redhat.com>
Acked-by: Kevin Traynor <ktraynor@redhat.com>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
Diffstat (limited to '.ci/linux-build.sh')
0 files changed, 0 insertions, 0 deletions