Submitted via IRC for TheMightyBuzzard
Veteran dev says timed sampling's arrival in Berkeley Packet Filter makes Linux 4.9 a match for Solaris' DTrace
In 2004 former Reg hack Ashlee Vance brought us news of DTrace, a handy addition to Solaris 10 that "gives administrators thousands upon thousands of ways to check on a system's performance and then tweak ....production boxes with minimal system impact". Vance was excited about the code because "it can help fix problems from the kernel level on up to the user level."
Vance's story quoted a chap called Brendan Gregg who enthused about [the] tool after using it and finding "... DTrace has given me a graph of a hundred points that leaves nothing to the imagination. It did more than just help my program, it helped me understand memory allocation so that I can become a better programmer."
[...] As Gregg explains on his blog, Linux has had plenty of tracing tools for a long time, but they were miscellaneous kernel capabilities rather than dedicated tools and didn't match DTrace's full list of functions. But over time developers have worked on further tracing tools and Facebook developer Alexei Starovoitov recently offered up some enhancements to the Linux kernel that Gregg feels mean it now matches DTrace.
Gregg reckons Starovoitov's contribution, plus efforts like the bcc project he's worked on will offer Linux users their best ever chance to conduct really detailed tracing of Linux.
[...] Gregg's post has oodles more detail about DTrace's long history, plus links a-plenty to tools you can use to employ the tool.
Source: http://www.theregister.co.uk/2016/11/01/linux_in_2016_catches_up_to_solaris_from_2004/
(Score: 3, Insightful) by Runaway1956 on Thursday November 03 2016, @11:02AM
TFS and TFA imply that Linux is finally catching up to Solaris, twelve years later. Now, I'm not a Solaris guy, and I've never used dtrace, but the facts as presented just don't add up for me.
In 2004, dtrace was touted as an "advanced tool". I won't argue with that description of dtrace. But, I can't see where any claims are made that dtrace was then a standard part of the Solaris kernel. It looks like a bolt-on aftermarket sort of thing.
Now, 12 years later, Linux has incorporated all of that funcitonality into the kernel. That's cool and all, but I haven't seen any press releases announcing the importance, or the indispenability of these functions.
In short, the author, Gregg, is expressing his own personal feelings about how great dtrace is/was. Which is cool, but I wonder how that becomes a real story.
(Score: 4, Informative) by tbuskey on Thursday November 03 2016, @12:11PM
Dtrace *is* part of Solaris 10 and up, not a bolt on. Dtrace is in MacOSX (it has fewer trace points). I think it's in Oracle's Linux as well.
When you're looking for bottlenecks in your code, you typically attach a debugger to your app. That changes it a bit and slows it down alot. Plus you need to restart the app.
Dtrace is lightweight and you don't need to restart your app.
If you're doing performance tuning, it's a great tool. Gregg does performance tuning in depth on Linux, Solaris, Macintosh and other OSen. He'll use any tool that's available. It's hard to find network flow issues with top for example. dtrace is another tool in the box.
(Score: 0) by Anonymous Coward on Thursday November 03 2016, @12:35PM
So any predictions when it will be available on Windows? <gd&r>
(Score: 0) by Anonymous Coward on Thursday November 03 2016, @01:19PM
As soon as Microsoft invents it.
(Score: 2) by Gaaark on Thursday November 03 2016, @01:36PM
And then patents it..... "hey, take us to court.... how much money YOU got?"
--- Please remind me if I haven't been civil to you: I'm channeling MDC. ---Gaaark 2.0 ---
(Score: 1, Informative) by Anonymous Coward on Thursday November 03 2016, @01:51PM
>So any predictions when it will be available on Windows?
No but it's been included in FBSD's default GENERIC kernal since 2012 :-p
https://wiki.freebsd.org/DTrace/KernelSupport [freebsd.org]
(Score: 2) by TheRaven on Thursday November 03 2016, @01:57PM
sudo mod me up
(Score: 2) by Runaway1956 on Thursday November 03 2016, @03:01PM
That is informative, thank you. And, helps to put the whole story into perspective.
(Score: 1, Interesting) by Anonymous Coward on Thursday November 03 2016, @08:21PM
Why restart? Did I miss something? gdb -p 1234. Or are we talking about recompiling to support prof/gprof (-p/-pg), etc?