Print

Print


Hi Andy,

On 10/08/11 11:21, Andrew Hanushevsky wrote:
>
> On Sat, 8 Oct 2011, Brian Bockelman wrote:
>
>>
>> On Oct 7, 2011, at 3:37 PM, Andrew Hanushevsky wrote:
>>> What does that mean? You want a single entry? That's not always possible
>>> since readv allows you to read from multiple files using a single vector.
>> Interesting! Is there an example use of this interface?
> To example uses but it was put in with anticipation of some very clever person
> capitalizing on this feature.
>
>> Well there's a middle-ground use case here: being able to monitor activity for
>> each open connection.
>>
>> In our experience, without the very detailed I/O monitoring, we:
>> 1) Don't get any monitoring for a client that crashes (disconnects without a
>> close).
> That information can be put in the summary record, if need be. I say need be
> because it's a relatively rare event (yes, it does happen in spurts).

Sorry ... what summary record? When a client program crashes, all I get in 
monitoring stream is session disconnect trace. Then I loop over all files 
associated with this session and "close" them manually.

There could be a separate "close on disconnect" trace type that is sent in this 
case and includes all the information usually associated with close.

>> 2) Don't get monitoring while a client is running. Example: it's been 5 hours
>> since a job has started; is this because it is getting 1 byte / second, or
>> because the job takes 5 hours and 1 minute?
> True, there is no other way of capturing this information. Another case where
> some more client input would make things more effecient.

What do you mean? The the client would also send monitoring information, either 
directly to the monitoring host or via the server?

>> So, we find it extremely useful without doing the data access patterns use
>> case. Either way we get the information - unrolling the vector to include all
>> the data, or getting a summary - we'll be happy.
> OK, I will take this into consideration when comming up with a fix.

I'd still vote for a single trace entry for a whole vector read. And then have a 
new option for full vector read unroll as it really pushes monitoring overhead 
to a new level. Now even I have enough ;)

Cheers,
Matevz