Chelsio netmap support ? (RELENG_11)

Navdeep Parhar nparhar at gmail.com
Wed Mar 8 02:08:50 UTC 2017


On Tue, Mar 7, 2017 at 5:46 PM, Mike Tancsa <mike at sentex.net> wrote:

>
> # dmesg | grep netm
> netmap: loaded module
> vcxl0: netmap queues/slots: TX 2/1023, RX 2/1024
> vcxl0: 1 txq, 1 rxq (NIC); 1 txq, 1 rxq (TOE); 2 txq, 2 rxq (netmap)
> vcxl1: netmap queues/slots: TX 2/1023, RX 2/1024
> vcxl1: 1 txq, 1 rxq (NIC); 1 txq, 1 rxq (TOE); 2 txq, 2 rxq (netmap)
> igb0: netmap queues/slots: TX 4/1024, RX 4/1024
> igb1: netmap queues/slots: TX 4/1024, RX 4/1024
>
> It maxes out at about 800Kpps with and without netmap.  Is there a way

Are you actually using a netmap based application that acts as a
packet router or is this just the vcxl interface running as a normal
ifnet?

> to increase the queues for the Chelsio nic, like the onboard igb ?

If you're not running a netmap based router get rid of the num_vis=2
and simply try with the cxl0/cxl1 interfaces.  They should each have 4
rxq/4 txq on your system.  In case you want to increase the number of
queues, use this:

# cxl0/cxl1 etc.
hw.cxgbe.nrxq10g=8
hw.cxgbe.ntxq10g=8

# vcxl0/vcxl1's "normal" queues
hw.cxgbe.nrxq_vi=8
hw.cxgbe.ntxq_vi=8

# vcxl0/vcxl1's netmap queues
hw.cxgbe.nnmrxq_vi=8
hw.cxgbe.nnmtxq_vi=8

Check in dmesg after you reboot with your new settings
> vcxl0: 1 txq, 1 rxq (NIC); 1 txq, 1 rxq (TOE); 2 txq, 2 rxq (netmap)

The "NIC" queues are the normal tx/rx queues, the "netmap" queues are
active when the interface is in netmap mode.

Does netsend generate a single flow or multiple flows?  If it's a
single flow it will use a single queue only.

Regards,
Navdeep


More information about the freebsd-net mailing list