On Jul 16, 2008, at 7:31 PM, Underwood, Keith D wrote:
[erezh] Correct; this is the scenario I was describing with the RDMA write.
It would be interesting to see exactly what the error mode here is. Retransmitting corrupted data should be ok, since a correctly delivered message means that the retransmit must be dropped. I suppose that if the NIC speaks virtual addresses and the free actually results in a trap to the kernel that unmaps the pages, then the NIC could retransmit and find that there isn't a valid page table entry...
'zactly. And then the local completion entry would be a failure -- so the sender would [erroneously] think that the message had failed to be delivered.
Solution #5: Change the advice to users - "...the arrival of the reply informs the sender that the send has completed and the send buffer can be overwritten. If the buffer will ever be freed, the application should call MPI_Wait or MPI_Cancel instead of MPI_Request_free."
That seems like a good compromise. -- Jeff Squyres Cisco Systems