Eli Cohen wrote:
I plan to implement RCA for IPoIB and would like your comments. Using RCA
allows better utilization of available CPU cores power by evenly distributing
received SKBs between a few receive queues. Since each such queue is connected
to a different CQ, which in turn is connected to an EQ which triggers a
distinct IRQ vector, we can have more power to
process received buffers.
Eli, Roland
Can you point me to Ethernet driver in the mainline kernel that
implements multiple receive queues?
In IPoIB support will be added only for UD mode. For sending we will use the
same QP used today. For receive we will create a an RCA QP (by using
IB_QP_CREATE_IPOIB_RCA in the create flags) and a group of QPs. The base QPN,
number of QPs and a default QPN have to be passed to the RCA QP -- I am not
sure what is the best way to do that but I am thinking of passing these values
with modify QP to init using new fields in struct ib_qp_attr. The default QPN
will be the current QP used for UD. We will have multiple receive rings (as the
number of QPs) so we don't need to add spinlocks.
I am trying to think if this design will allow to use later also
multiple send queues, eg in the spirit of
Documentation/networking/multiqueue.txt, what's your thinking? grepping
on NETIF_F_MULTI_QUEUE under drivers/net does not retrieve many hits, so
I wasn't sure if this is the current practice for multiple send queues
nowadays.
Or.
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general
To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general