Hi all -

I've finally committed a version of the rdma one-sided component that 1) works and 2) in certain situations actually does rdma. I'll make it the default when the BTLs are used as soon as one last bug is fixed in the DDT engine.

However, there is still one outstanding issue. Some BTLs (like Portals or MX) advertise the ability to do a put but place restrictions on the put that only work for OB1. For example, both can only do an RDMA that starts where the prepare_dst() / prepare_src () call said the target buffer was. This isn't a problem for OB1, but kind of defeats the purpose of one-sided ;). There's also a reference count (I believe) in the Portals put/get code that would make life interesting if a descriptor was doing multiple RDMA ops at once.

I was thinking that the easy way to solve this was to add a flag (FAKE_RDMA was the current running favorite, since we've used it before for different meaning :) ) to the components that have behaviors that work for OB1, but not a generalized rdma interface. I was wondering what people thought of this idea and if they had any preference for naming the flag.

Brian

Reply via email to