[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
RE: [dsdp-tcf-dev] Applicability of TCF agent for remote tracing
|
Michel Dagenais wrote:
> -----Original Message-----
> Sent: Monday, May 11, 2009 8:10 AM
...
> > Because of these drawbacks we implemented a general service to
> > efficiently stream binary data over the TCF channel, see
> > streamservice.[ch] in the TCF prototype (unfortunately we don't have
> any
> > documentation for this service this yet). Basically what this
> service
> > does is to creation of arbitrary number of byte streams over a TCF
> > channel. The commands a designed to minimize round trips and allow
> > multiple concurrent read and write commands can be issued
> asynchronously
> > so there are no delays between commands.
>
> If I understand correctly, this service takes care of the multiple
> asynchronous streams functionality. This is separate from zero copy
> binary block writes/reads but similarly useful for high performance
> tasks.
Correct, it is separate from zero copy. It provides a general purpose
way of streaming data over TCF. As Eugene pointed out it would be
fairly easy to do a general enhancement to the TCF channel stream to
allow zero copy of the data.
> Is the agent threaded in some way? Will we need to use the
> streamservice
> for tracing even just to insure not to block the other services (e.g.
> RSE)?
For the most part, the agent is single threaded. However we try to void
blocking as much as possible by using asynchronous requests, see
asyncreq.[ch].
Best Regards,
Felix