Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

>From reading it, I believe no other tool is both (1) non-sampled and (2) supports instrumenting all functions simultaneously. (At least none of the other comments in this thread point at tools that do this.)

Perf supports dynamic tracing of probepoints, and probing multiple points simultaneously.

Perhaps I'm misunderstanding things, but I don't see how perf doesn't fit those two requirements. It does a lot more than just sampling



1. Errr, perf definitely does not support inserting N probepoints, where N is the number of function entry + exit in a program.

2. Perf is 14x slower with tracepoints, and is definitely not that low overhead with tons and tons of probe points.

See http://events.linuxfoundation.org/sites/events/files/slides/...


Is there something I'm missing in the XRay paper that mentions speed? The only overhead I can find mentioned in the paper is CPU and memory utilization.

If XRay is able to trace millions of probe points with less overhead than uprobe + frontends, that's extremely impressive... But I just don't see any numbers so far that have said this is the case?


Errr, it's tracing every function. That is equivalent to tracing every probe point. It is definitely less overhead than something that has to actually figure out what it is doing and care in some special way.

x-ray doesn't even make any attempt to optimize things well. If it did, it would be even lower overhead.

I'm honestly a bit stymied. I'm not sure why anyone would think a dynamic probing infrastructure that has to keep track of millions or billions of probes would ever go faster than something that has constant time and storage space by knowing what it is tracing and that it is tracing ahead of time.

The tradeoff is pretty simple. If you know what you want to probe ahead of time, and what the probes do, which is the case with x-ray, you can do it in fixed time and storage cost. You can never add or remove probes. Nothing has to worry about what probes exist.

If you want to be able to add or remove probes at any time, you now have a cost of having to keep track of all the probes that exist and possibly doing something different with them at different times and ...




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: