Skip to main content

[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

Burton, Felix wrote:
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.


What would you suggest in order to implement zero copy transfer? How would you do it?

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

_______________________________________________
dsdp-tcf-dev mailing list
dsdp-tcf-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/dsdp-tcf-dev
Thank you.

Michael


Back to the top