1. We agree with Eric that memory for put/get windows should only be
allocated explicitly by functions like MPI_RMA_MALLOC. The user
should not be allowed to use arbitrary user space locations for that
purpose. The SX-4 provides functions for allocating such shared
memory which can efficiently be accessed by all processors.
Arbitrary user space could only be accessed by parallel threads
which don't work in a multi-cluster configuration.
2. Put/Get operations should not be allowed on data items like single
bytes. The scenario in which two processors A and B each store single
(but not-identical) bytes into the same word at processor C would
have serious consequences on performance. An implementation which
allows this scenario would be slower also in the easy case where
processors only access 8-byte aligned data items. The main point in
put/get is their performance benefit. Otherwise one could use
send/receive and handlers, anyway. So, we should restrict the
allowed data types to what can be handled at high speed. No
discontiguous send buffers, no overlap in single 8 bytes words, etc..
3. There was also some discussion about the window counters, and if they
would add significant overhead to the put/get operations. Our
position in this matter is relatively relaxed, since the SX-4 has
atomic hardware instructions for counter manipulations on 8-byte
words. So, we think we can implement the counters without much
performance sacrifice.
So much about our detailed comments on the ongoing discussion. Some
people have raised their concerns that it's much too early to
standardize functionality which is much beyond current practice. I share
those concerns. It is much better to limit ourselves to a small set
of simple functions at this point. This set can always be extended
later when experiences from many vendors with the simple functions
are available. I feel very uneasy about voting for/against features
the consequences of which I don't understand in the long run.
- Rolf
------------------------------------------------------------------------
Rolf Hempel < hempel@ccrl-nece.technopark.gmd.de >
C&C Research Laboratories, NEC Europe Ltd., Rathausallee 10,
53757 Sankt Augustin, Germany
Tel.: 02241 - 92 52 - 95 (GMD internal number: 3407)
Fax: 02241 - 92 52 - 99