<div dir="ltr">Hi all,<br><br>GigE drivers support multiple queues:<br><br>bnx(4)    Broadcom 5718/57785 family<br><br>    All chips supported by this driver support 4 RX queues.<br>    5719/5720/5717C support 4 TX queues.<br>
<br>    For more information:<br>    <a href="http://leaf.dragonflybsd.org/cgi/web-man/?command=bnx&section=ANY">http://leaf.dragonflybsd.org/cgi/web-man/?command=bnx&section=ANY</a><br><br>    * For folks with NetBSD/OpenBSD backgroud, this driver is not<br>
      NetBSD/OpenBSD's bnx(4)<br><br>bce(4)    Broadcom NetExtremeII<br><br>    Only 5709/5716 supported by this driver support 8 RX queues and 8<br>    TX queues.<br><br>    For more information:<br>    <a href="http://leaf.dragonflybsd.org/cgi/web-man/?command=bce&section=ANY">http://leaf.dragonflybsd.org/cgi/web-man/?command=bce&section=ANY</a><br>
<br>    * For folks with NetBSD/OpenBSD backgroud, this driver is not<br>      NetBSD/OpenBSD's bce(4)<br><br>emx(4)    Intel PRO/1000 (first generation?)<br><br>    All chips supported by this driver support 2 RX queues.<br>
    82571/82572 could enable 2 TX queues in polling(4) mode.<br><br>    For more information:<br>    <a href="http://leaf.dragonflybsd.org/cgi/web-man/?command=emx&section=ANY">http://leaf.dragonflybsd.org/cgi/web-man/?command=emx&section=ANY</a><br>
<br>igb(4)    Intel PRO/1000 (second generation?)<br><br>    Various chips have different number of RX/TX queues.  Commonly used<br>    chips, like 82580 and I350, support 8 RX queues and 8 TX queues.<br><br>    One thing worth noting is that for 82576 at most 16 RX queues and<br>
    16 TX queues could be enable in polling(4) mode.<br><br>    For more information:<br>    <a href="http://leaf.dragonflybsd.org/cgi/web-man/?command=igb&section=ANY">http://leaf.dragonflybsd.org/cgi/web-man/?command=igb&section=ANY</a><br>
<br>jme(4)   JMicron JMC250/JMC260<br><br>    All chips supported by this driver support 4 RX queues.<br><br>    For more information:<br>    <a href="http://leaf.dragonflybsd.org/cgi/web-man/?command=jme&section=ANY">http://leaf.dragonflybsd.org/cgi/web-man/?command=jme&section=ANY</a><br>
<br>To use multiple TX queues, you don't need to disable ALTQ from the<br>kernel configuration and there is no special kernel options are needed.<br>However, if you enable any ALTQ packet scheduler through pf(4), only<br>
one TX queue will be used by the network stack.<br><br>Another thing needs to be noted about is multiple TX queues and TSO:<br>All chips supporting multiple TX queues use round-robin arbitration<br>between TX queues.  For most of the chips, the round-robin arbitration<br>
is on TSO packet boundary.  Only chips supported by the igb(4) (except<br>82575) round-robin arbitrate on TCP segment boundary.<br><br>Each driver has its own tunables to configure number of RX and TX<br>queues MSI-X leading CPU and etc.  Please refer to the manpage for<br>
detailed information.<br><br>Best Regards,<br>sephe<br><br>-- <br>Tomorrow Will Never Die
</div>