Re: Merging relayfs?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 12 Jul 2005, Vara Prasad wrote:
[..]
O.K, Tomasz your point is we can do aggregation in the kernel and cut down the amount of data that needs to be sent out from the kernel hence we don't need an efficient, low overhead mechanism like relayfs to get the data out of the kernel. Having relayfs doesn't prevent someone in aggregating the data in the kernel, so it is not an argument for not including relayfs in the kernel when it fills the need for those who needs raw data.

Of course you are right and (look again) this is what I told in first mail in this thread :)

I am part of a team working on systemtap where we are are developing a tool
similar to Dtrace that does some aggregation where appropriate but nothing like fancy statistics etc. We use relayfs in our systemtap project and based on my reading of Dtrace paper they use exactly similar to relayfs buffering mechanism as well.

If I can suggest something about order prepare some feactures:

1) prepare base infrastructure for counters,

this "tool" will take very small amount of data and can be performad
by very small pieces of binary codes. Even this will allow perform some
*very* interesting experinments on existing kernel code.
And after above:

2) prepare base infrastructure for association tables of couters (for
   collecting data for example about I/O operations or other two or more
   arguments operations),
3) prepare user space tool with some kind of language which will allow
   hanging ptrobes with aboove tho (simple counters and association tables
   of couters)
4) base functions for measure time (with KProbes overhead and without) and
   store them in couters and association tables,

All above base "tools" for above will take small or medium amount of data and can be performad small or medium pieces of binary codes. And after above:

5) prepare infrastrucrute for probes which will store data in diffrent
   containers depending on initiator process and/or thread (and maybe in
   next etap also will be good have something more common which will
   depend on stack path),
6) prepare base functions for tracing stack paths (counting them and store
   in association tables),
7) make some kind of study where is it will be good compute something
   more complicated like base "speculative probes" (lookin on
   working DTrace probably answer in this point will be "yes").

All to this moment will not require relayfs because amount of transfered
data will be _very low_.
Details of above will be probably different (I have only some very common knowledge about DTrace implementations details and some avarange about using dtrace tool) but I want count/pint *only* feactutres which will not require using relayfs.

And *after finish above* will be much easier perform some kind of study about "is relayfs is still neccessary ?" and *if* answer will be still "YES" try to integrate neccessary patches (or maybe something other .. maybe better adjusted to all non-above cases). Also add something like relayfs at this moment _will not require_ changes in existing code (if will require changes will be very small but maybe will ollow reduce existin now relayfs (?)).

But if you will build all infrastructure even for simple couters on relayfs fundament it will be (IMO) badly/incorrectly designed .. and using
even simple couters will introduce to high overhead for system.

*NOT using realyfs* if it is not neccessary for possibly big amout of feactures future KProbes IMO in this case is *fundamental*.

To time where this base not requiring relayfs feactures will not be
integrated in kernel code better IMO will be stop merging relayfs.

There are tools like itrace and Intel has one (i forgot the name) they would like to get the raw data into user space and do all kinds of fancy statistical analysis, visualization etc. Their value add is the analysis of the data. I am sure you are not suggesting pushing capabilities of those tools to the kernel, right.

I don't know any thing about this tool (can you sent URL?) but please ..
dont't be fool and do not try as first prepare something eye candy :)
Rest this area for other developers and focus on fundaments :)

regards

kloczek
--
-----------------------------------------------------------
*Ludzie nie mają problemów, tylko sobie sami je stwarzają*
-----------------------------------------------------------
Tomasz Kłoczko, sys adm @zie.pg.gda.pl|*e-mail: [email protected]*

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux