Skip to content

Snabb multiple CPU #1530

@norbertn503

Description

@norbertn503

So when i start snabb with this snabb lwaftr run --name test --conf lwaftr.conf & and send significant amount of traffic through it. I observed that only one CPU core is used, and the rest is almost idle. From the top command:

%Cpu0 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu1 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu2 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu3 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu4 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu5 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu6 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu7 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu8 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu9 : 78.7 us, 21.3 sy, 0.0 ni, 0.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu10 : 0.0 us, 0.3 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu11 : 0.3 us, 0.0 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu12 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu13 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu14 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu15 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

However when I start it with more CPUs like this snabb lwaftr run --name test --cpu 3,4 --conf lwaftr.conf & nothing really changes, performance not increase.

%Cpu0 : 0.0 us, 0.3 sy, 0.0 ni, 96.0 id, 0.0 wa, 0.0 hi, 3.6 si, 0.0 st
%Cpu1 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu2 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu3 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu4 : 25.0 us, 58.0 sy, 0.0 ni, 0.0 id, 0.0 wa, 0.0 hi, 17.0 si, 0.0 st
%Cpu5 : 0.0 us, 0.0 sy, 0.0 ni, 90.1 id, 0.0 wa, 0.0 hi, 9.9 si, 0.0 st
%Cpu6 : 0.0 us, 0.0 sy, 0.0 ni, 86.1 id, 0.0 wa, 0.0 hi, 13.9 si, 0.0 st
%Cpu7 : 0.0 us, 0.0 sy, 0.0 ni, 87.5 id, 0.0 wa, 0.0 hi, 12.5 si, 0.0 st
%Cpu8 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu9 : 0.0 us, 0.0 sy, 0.0 ni, 86.6 id, 0.0 wa, 0.0 hi, 13.4 si, 0.0 st
%Cpu10 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu11 : 0.0 us, 0.0 sy, 0.0 ni, 90.4 id, 0.0 wa, 0.0 hi, 9.6 si, 0.0 st
%Cpu12 : 0.3 us, 0.0 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu13 : 0.0 us, 0.0 sy, 0.0 ni, 92.0 id, 0.0 wa, 0.0 hi, 8.0 si, 0.0 st
%Cpu14 : 0.0 us, 0.3 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu15 : 0.0 us, 0.0 sy, 0.0 ni, 89.4 id, 0.0 wa, 0.0 hi, 10.6 si, 0.0 st

Is there a way for snabb to use multiple CPU cores thus enhance performance ?

Also snabb process starts and an exe process as well

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
20086 root 20 0 779040 24476 7196 R 100.0 0.0 10:33.73 exe
20084 root 20 0 213048 182232 41856 S 0.3 0.1 0:03.06 snabb

I didn't find anything regarding this, do you have any idea what is this?
I'm using debian 11 (bullseye), with two Intel Xeon E5-2630, 8 core per CPU

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions