[openib-general] FW: [PATCH 1 of 3] mad: large RMPP support

Sean Hefty sean.hefty at intel.com
Wed Feb 8 09:13:23 PST 2006


>For example, a 1000 host cluster, with 2 ports per HCA will have at
>least 4000 records in a SubnAdmGetTableResp for all PortInfo records on
>the network (2000 for HCAs, and at least 2000 for the switch ports).
>Such a query response will generate an RMPP of size 256K -- 1000
>segments, or a 4K buffer on an X86 machine just for the array (assuming
>one allocation per RMPP segment -- N=1).

I think that this is a good reason to use an array.  Walking a 1000 entry list
1000 times is a substantial performance hit.  Lost MADs and retries will make
this worse.

A 4K buffer for the array is less than the 8K total needed for the 1000 list
items.  We're already talking about allocating over 256K of memory just for the
data payload.  An additional contiguous 4k buffer seems like a minor issue.  I'm
not convinced that there's a real issue here.

To support ridiculously large transfers from userspace, we may need to push the
RMPP handling up into userspace.

- Sean




More information about the general mailing list