discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Discuss-gnuradio] Rx overflow with high sample rate and high CPU utiliz


From: SangHyuk Kim
Subject: [Discuss-gnuradio] Rx overflow with high sample rate and high CPU utilization
Date: Thu, 7 Apr 2016 15:25:57 +0900

Hi all,

I'm trying to solve Rx overflow problem.

I am using USRP N210 and CBX daughter board. As I know, my machine's maximum sample rate is up to 25 MSps. Yes, it works well at Tx (ex ./benchmark -f 2.5G -r 25000000).
However, when I use USRP to Rx mode (ex ./benchmark -f 2.5G -r 25000000), letter 'D' (overflow) be occurred.

Rx overflow 'D' is happened when host cannot consume packet fast enough.
I observed incoming packet from USRP to host using wireshark tool.
After Rx command be launched (ex ./benchmark -f 2.5G -r 25000000), USRP sends many packet to host very fast.

So, I checked cpu utilization at those moments. As a result, cpu utilization is over 200% (PC has 2.7GHz quad-cores). I couldn't believe it.

However, I found "interrupt coalescing".
Incoming packet occurs interrupt to host and interrupt coalescing adjust how long/many packets make one interrupt to PC.
So, I changed these value using ethtool -C eth0 rx-usecs 1000 rx-frames 200.
But, it doesn't any effect for my case.

I'm using tg3 network driver and my setting like below:
    Supported ports: [ TP ]
    Supported link modes:   10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
                            1000baseT/Half 1000baseT/Full
    Supported pause frame use: No
    Supports auto-negotiation: Yes
    Advertised link modes:  10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
                            1000baseT/Half 1000baseT/Full
    Advertised pause frame use: Symmetric
    Advertised auto-negotiation: Yes
    Link partner advertised link modes:  1000baseT/Half 1000baseT/Full
    Link partner advertised pause frame use: Transmit-only
    Link partner advertised auto-negotiation: Yes
    Speed: 1000Mb/s
    Duplex: Full
    Port: Twisted Pair
    PHYAD: 1
    Transceiver: internal
    Auto-negotiation: on
    MDI-X: on
    Supports Wake-on: g
    Wake-on: g
    Current message level: 0x000000ff (255)
                   drv probe link timer ifdown ifup rx_err tx_err
    Link detected: yes


Did I miss something ?

How can I solve Rx overflow problem at high sample rate ?

Thanks.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]