Hi all,
I have some questions related to the design semantics of BMI.
* timeouts. It looks like the timeout for bmi test calls is the max
amount of time spent _idling_ in the test call (as apposed to the max
time spent in the test call). In other words, if operations are
being completed continuously, then the timeout is never triggered,
and the call can block for much longer than the actual timeout
specified. Is this the desired behavior? The concern would be that
the bmi operations would be completed at a constant rate, causing a
bursty behavior of completed bmi jobs. The incount constrains this,
but for both bmi api users and bmi method implementors we should
probably document all those semantics.
* BMI memory allocation. Do we place any restrictions on when or how
frequently BMI_memalloc is called? In the pvfs code, we always call
BMI_memalloc for a post_send or post_recv. Would it be possible to
avoid the malloc on the client for a write and just use the user
buffer? Or should we mandate that calls to post_send and post_recv
always pass in a pointer from BMI_memalloc? (as a side note, if we
make that mandate, maybe we should have a BMI_buffer type that
memalloc returns and post_send/post_recv accept).
Thanks,
-sam
_______________________________________________
Pvfs2-developers mailing list
[email protected]
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers