On Fri, May 20, 2005 at 01:40:42PM -0700, Sean Hefty wrote: >Jeff Carr wrote: >>There must also be some limit to how many cqe's you can allocate with >>ib_post_recv(). (?) > >Each receive posted will generate a cqe. That limit is controlled by the >message_count variable. > >>There must be some way to delete/free these? They don't get re-used I >>take it? Surely it wasn't intended that ib_post_recv() be initially run >>for each transfer expected in the lifetime of the connection. :) > >There needs to be one cqe reserved for each possible completion that can be >outstanding at one time. If you know that the number of completions will >be high initially, and then drop to a smaller value, there is a verb that >can be used to resize the CQ. (I don't believe it is implemented in the >openib stack at this time.) > >>There must also be some information about what is known about these >>cqe's. How do we know if one of them was used for a transfer from the >>server to the client or from the client letting the server know the >>transfer was recieved? > >In this case you won't know what's on a cqe until you poll the completion. >An alternative way of structuring the code is to create two CQs, and tie >one to the send queue, the other to the receive queue.
hmz, yes, see "Quick unrelated question:" in http://openib.org/pipermail/openib-general/2005-May/006796.html I do have ...s_cq and r_cq. For two nodes, using cqe=64 does obviously work, but when i've got, say, a setup where 786 nodes each have r and s? This currently w{on't,ill in no way way} work (for me)!? Help!! Also, Sean, any thought on the qp limit question referenced there? TIA _______________________________________________ openib-general mailing list [email protected] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
