[saga-rg] Re: Meeting Notes: Messaging API

Pascal Kleijer k-pasukaru at ap.jp.nec.com
Sun Dec 4 17:49:23 CST 2005


Hello,

Just one comment to the read proposal:

"where size is passed to the read method, if size is smaller then the 
real message size, message gets truncated, remainder gets lost (read 
again not possible). If size is larger, buffer gets patted by 0"

Tailing 0s are unnecessary if the read returns the number of bytes that 
were read. It is a waist of CPU time to do that. The buffer that is 
unused should remain "as is".

Another issue is that this API forces to write/read the message 
into/from the first offset of the buffer. In languages like java it 
ain't be possible to shift the pointer like in C, so the offset must be 
explicitly given.

Again this is a language binding issue, but it could be put in the API, 
otherwise the implementations will not have the same signatures. We will 
then end up with implementations that do not reflect the generic API for 
most functions.


Andrei Hutanu wrote:
> I compiled all the notes on the wiki  : 
> http://wiki.cct.lsu.edu/saga/space/SAGA+API/Messages
> 
> Andrei
> 
> Andre Merzky wrote:
> 
>> Hmm, that is what I initially wanted to say :-)  I should
>> have marked in/out params more clearly...
>>
>> A.
>>
>>
>> Quoting [John Shalf] (Nov 22 2005):
>>  
>>
>>> Whoops,
>>> then we really need
>>>     a) size is not known, so we do two step
>>>     int getMessageSize(handle);
>>>     <malloc by application>
>>>     int read(handle,buffer,size)
>>>
>>>     b) size is not known, but we let implementation malloc automatically
>>>     char *readAutoAllocate(handle);
>>>
>>>     c) size is known, so we just do a one-step read
>>>     int read(handle,buffer,size);
>>>     
>>>   
>>
>>
>>
>>  
>>
> 


-- 

Best regards,
Pascal Kleijer

----------------------------------------------------------------
   HPC Marketing Promotion Division, NEC Corporation
   1-10, Nisshin-cho, Fuchu, Tokyo, 183-8501, Japan.
   Tel: +81-(0)42/333.6389       Fax: +81-(0)42/333.6382





More information about the saga-rg mailing list