Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Not using all available CPU resources on Ubuntu #32

Open
XenoKovah opened this issue May 2, 2024 · 0 comments
Open

Not using all available CPU resources on Ubuntu #32

XenoKovah opened this issue May 2, 2024 · 0 comments

Comments

@XenoKovah
Copy link

I am testing the sniffer connected to an Ubuntu server with 24 cores / 48 threads and 128GB of RAM, because I want to throw as much power at it as possible, to confirm it's not missing packets compared to what other single-channel sniffers like Sniffle see.

lscpu
Architecture:            x86_64
  CPU op-mode(s):        32-bit, 64-bit
  Address sizes:         46 bits physical, 48 bits virtual
  Byte Order:            Little Endian
CPU(s):                  48
  On-line CPU(s) list:   0-47
Vendor ID:               GenuineIntel
  Model name:            Intel(R) Xeon(R) CPU E5-2670 v3 @ 2.30GHz
    CPU family:          6
    Model:               63
    Thread(s) per core:  2
    Core(s) per socket:  12
    Socket(s):           2
    Stepping:            2
    CPU max MHz:         3100.0000
    CPU min MHz:         1200.0000
...

When I run sudo ./ice9-bluetooth -l -i bladerf0 -s -v -w danger_zone.pcap the sniffer reports that it can't keep up

Channelizer too slow, use fewer channels
ch  39.6 Msamp/sec ( 41% realtime); agc 302.8 Msamp/sec (161% realtime)
Channelizer too slow, use fewer channels
ch  39.2 Msamp/sec ( 41% realtime); agc 299.5 Msamp/sec (159% realtime)
Channelizer too slow, use fewer channels

However, if I run sar -u 1 in parallel, I see that my CPUs are still always at least 77% idle. Here is an example of starting sar and then starting ice9-bluetooth and then canceling ice9-bluetooth (the 100% idle is while it's not running.)

08:23:39 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle
08:23:40 AM     all      0.00      0.00      0.00      0.00      0.00    100.00
08:23:41 AM     all      0.00      0.00      0.00      0.00      0.00    100.00
08:23:42 AM     all      0.00      0.00      0.00      0.00      0.00    100.00
08:23:43 AM     all      0.10      0.00      0.15      0.00      0.00     99.75
08:23:44 AM     all      0.15      0.00      0.23      0.00      0.00     99.62
08:23:45 AM     all     14.20      0.00      2.15      0.00      0.00     83.64
08:23:46 AM     all     19.19      0.00      1.80      0.00      0.00     79.01
08:23:47 AM     all     16.22      0.00      2.23      0.00      0.00     81.55
08:23:48 AM     all     18.91      0.00      1.83      0.00      0.00     79.26
08:23:49 AM     all     18.49      0.00      2.81      0.02      0.00     78.68
08:23:50 AM     all     17.12      0.00      2.54      0.00      0.00     80.35
08:23:51 AM     all     20.74      0.00      1.93      0.02      0.00     77.31
08:23:52 AM     all     20.43      0.00      1.52      0.00      0.00     78.05
08:23:53 AM     all     18.79      0.00      2.12      0.00      0.00     79.09
08:23:54 AM     all     18.72      0.00      1.34      0.00      0.00     79.94
08:23:55 AM     all     18.63      0.00      1.91      0.00      0.00     79.46
08:23:56 AM     all     19.22      0.00      1.73      0.00      0.00     79.06
08:23:57 AM     all     20.45      0.00      1.74      0.00      0.00     77.82
08:23:58 AM     all     20.51      0.00      2.20      0.00      0.00     77.29
08:23:59 AM     all     20.54      0.00      2.04      0.00      0.00     77.42
08:24:00 AM     all     19.41      0.00      2.23      0.00      0.00     78.36
08:24:01 AM     all     21.06      0.00      1.74      0.02      0.00     77.18
08:24:02 AM     all     20.14      0.00      1.89      0.00      0.00     77.97
08:24:03 AM     all     17.42      0.00      2.20      0.02      0.00     80.35
08:24:04 AM     all      0.13      0.00      0.00      0.00      0.00     99.87
08:24:05 AM     all      0.00      0.00      0.27      0.00      0.00     99.73
08:24:06 AM     all      0.00      0.00      0.00      0.00      0.00    100.00
08:24:07 AM     all      0.00      0.00      0.00      0.00      0.00    100.00
08:24:08 AM     all      0.00      0.00      0.00      0.00      0.00    100.00

So basically this issue is to track if there's anything else that can be done to test why it's not parallelizing as much as possible, and thus not able to keep up with the traffic.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant