Sun Wins Top Tech Innovation Award
Carl Bialik from WSJ writes "Sun's DTrace trouble-shooting software won top prize in the Wall Street Journal's 2006 Technology Innovation Awards competition. It's the second time in three years that Sun took the top award. From the article, which also names a dozen other winners: 'Where most debugging takes place as software is being developed, DTrace analyzes problems with systems that are in production — running a company's database, say, or executing stock trades. It does this with a process called "dynamic tracing," which enables a developer or systems administrator to run diagnostic tests on a system without causing it to crash. Before DTrace, such tests often took days or weeks to reproduce the problem and identify the cause. With DTrace, performance problems can be tracked to their underlying causes in hours, even minutes.'"
They are pretty much completely unrelated. I think you could get dtrace to do what strace does, but strace is a special-purpose tool of very limited scope. If you think they are comparable then you don't know anything about drace.
Yea, this is the Wall Street Journal. It's like that old joke about Hollywood Squares: "According to Redbook, what is Plank's constant?" Not really an authoritative source on technical innovation.
DTrace has a degree of OS integration that makes it non-trivial to copy, linux's alternatives don't even come close even though a tool like this would be very useful in linux.
For the foreseeable future, if you want to have this type of debugging on your server then the server has to run Solaris. And if your server is bigger than a 4-way then it makes sense that it's a Sun server.
There is value in premium gear, and while it won't make Sun the next Dell, it can hopefully help improve their standing in their core market.
And this is /. where folk think strace == dtrace
With strace can you trace everything from I/O operations through to system calls to monitor your live application without taking anything offline and get almost no performance hit?
Like it or not, dtrace is a huge innovation - it's also open sourced and coming really soon to an operating system near you. I think anyone involved in major application deployments is going to welcome dtrace and think it worthy of the award.
Sun's DTrace trouble-shooting software won top prize in the Wall Street Journal's 2006 Technology Innovation Awards competition. It's the second time in three years that Sun took the top award.
Sounds like they've put those HP founders to work, instead of just parading them around in t-shirts.
The theory of relativity doesn't work right in Arkansas.
After all, it takes a considerable amount of insight to pick a code analyzer (admittedly one as brilliant as dtrace) as important and newsworthy. Good job, guys! It shows you can look deeply at a topic and understand what makes computer systems valuable. A lesser effort would award something from Microsoft, Google or Apple, whose products are great, but lack the sophistication of many Sun innovations.
There exists no way of exchanging information without making judgments. --Bene Gesserit Axiom
strace is more like Solaris's truss, except truss is quite a lot better. IMO dtrace is for more serious debugging, tools like truss & strace are quick and dirty tools for easy to solve problems where just knowing the system call and their return values is enough to diagnose the issue.
Several people have mentioned strace, but I have yet to see anyone mention oprofile. I haven't used dtrace before, but oprofile allows you to see where an application is spending it's time transparently, with negligible performance hit, and without restarting the application.
oprofile has been around since late 2002 it seems, so it's not particularly new either. How does dtrace compare to oprofile?
Game! - Where the stick is mightier than the sword!
I noted in my article Boxing in the LLRing, which despite positive responses Slashdot rejected in favor of Roland Piquepaille's daily column and various political commentary, that Squeak has an amazing debugger (I am not going to call it a full-blown analyzer) that allows you to debug applications as they are running on the very interesting Seaside application server.
As described in this paper (pdf), Seaside provides multiple control flows and a high level of abstraction that is very useful to web app developers.
The 4500 word article is coverage of a 300 developer "Lightweight Languages" all-day seminar held in a real boxing ring in Tokyo, covering 30 languages and frameworks including Perl, Python, Ruby, Haskell, OCaml, Squeak, and many others.
But a few points.
1) You need to boot bsd specially into a dtrace mode to use this. That presumably means that the BSD version either slows the system is isn't of production quality. When my database server is dying under the load, rebooting it isn't high on the list of things I want to do.
2) FreeBSD are pretty nimble at developing this kind of thing. I'm more curious to see how long it takes MS or Dell to have something comparable.
3) Sun provided the source and a development machine; presumably because of FreeBSD's favorable licensing. I'm not sure that's an option for any closed source product.
and maybe after it is ported to linux/*bsd and ten years have gone by, admins will actually start using it to its full potential. Now, if someone were to code a nice gui frontend to dtrace, that'd be innovation, because it would take an absolute master of UI design to turn using dtrace into something that was easy-to-do for the uninitiated.
How we know is more important than what we know.
If it can, that's great and can Sun kindly port it to Linux. If it can't, then all I can say is that the competition must've sucked this year.
what an ODD way to think of things!
"if it doesn't run on linux then its not worth an award"
such a small universe you live in...
--
"It is now safe to switch off your computer."
I used to work for Sun and DTrace is da bomb to put it mildly. It has ZERO impact on real-time execution and can even see into the OS (if you use Solaris). I've built many a real-time system over the years and having this tool would have saved me countless hours of debugger time and logic analyzer time. The one down side to Dtrace is that it does so much it is hard to Master. There is a week long course Sun reccomends before you really can get the most for your efforts. I think it deserves a place on the Innovation shelf right beside the T1 chipset. And there are plans to port a version to Linux, but it may not be free. It also probably won't be able to see as deep into the OS layers as it does with Solaris but that will come in due time. Sun's license isn't 100% compatiable with the Linux GPL either so that could be another issue
It was released about 4/25, but doesn't show up when you look for dtrace - its works great in Linux/UNIX environments for tracing errors through different packages / libraries.
great job theif!
-Iridium
"During times of universal deceit, telling the truth becomes a revolutionary act" -- George Orwell
If Sun was good at hyping their products, their stock would be trading above $5/share.
To paraphrase the old saw... That award and $2.95 ought to cover a cup of coffee - er, I mean, a cup of Java!...
This issue is a bit more complicated than you think.
Oprofile is more for profiling.
d probes/
LTT helps you analyse events as they happen over time.
Dprobes is one possible source of LTT events.
http://dprobes.sourceforge.net/
http://www.opersys.com/LTT/
http://dprobes.sourceforge.net/documentation/man/
Careful with the accusations of Wall Street's credibility on the subject. The award was decided by a jury of fairly distinguished members of ye olde programming community. And just to be fair, "None of them voted on any entries in which their companies or organizations may have had an interest."
The closest linux equivalent is the Systemtap project, which is based on the kprobes low level hooking API. These aren't yet billed as ready for production systems, but they'll get there soon enough. They look quite slick, also.
That said, the WSJ award seems to me to be maybe a little overstated. While Sun fanboys will shout to the heavens (with some justification, even) that DTrace is an amazing tool with absolutely no counterpart in the linux world, the fact remains that DTrace is at best an incrementally amazing tool. System performance tuning is a hard task, requiring smart developers and lots of work. System performance tuning with DTrace is a hard task requiring smart developers and a little less work.
System performance tuning using DTrace and a typical Solaris IT wonk (a population that tends to correlate highly with the fanboys pushing DTrace the hardest) is a recipe for disaster.
If you find someone telling you that DTrace is a must have tool and indispensable to the systems developer, apply salt. But yeah, it's pretty slick.
Please check out the Chime project which is about visualization software for DTrace. You can find more information at http://www.opensolaris.org/os/project/dtrace-chime /
For those who think that DTrace is old news, I really suggest that you download one of the OpenSolaris-based distributions
http://www.opensolaris.org/os/about/distributions/
and play around with DTrace. Yes, it's CLI is aimed at the geek in all of us but there is software like Chime and MacOS X's upcoming Xray which will help with those who prefer a different sort of UI.
You might want to check out the DTrace Toolkit and take a look at the DTrace scripts it includes. Many of the tools you see there are very admin-oriented, and those are mostly simple examples of what can be done with DTrace
Remember, it offers observability to most, if not all, of the system in a variety of ways which makes DTrace suitable for both admins and develoopers.
For those who, like me, had heard of dtrace but little more (is it like strace, for example), this is very handy article written by one of the authors in Communications of The ACM
p a=showpage&pid=361&page=1
http://www.acmqueue.org/modules.php?name=Content&
Yeah,it's 5 pages long, so those won't RTFA are even less likely to read this, but it's a good read covering motivation, history, solution compromises and some anecdotes that could qualify for http://thedailywtf.com/
I spent a lot of money on booze, birds and fast cars. The rest I just squandered. - George Best
I think what he meant was the DTrace is a tool that most system admins would have no clue how to use. If they did start digging in code, attempting to "optimize" it, things would probably break...hard. He's not necessarily downing Solaris IT wonks, as much as he is the vast sea of IT wonks that are really bad at their job, but don't realize it. Basically, the majority of the IT industry. Since no one else (expect maybe a few FreeBSD wonks) has DTrace, it's fairly safe to narrow it down to Solaris wonks, and if you would trust a typical admin with DTrace and source code, you're a braver soul that most of us.
"Does this mean I think Sun don't deserve the award? I've not used that tool, so I'm not in a position to say. It would have to do a lot in addition to basic analysis to earn the right to be innovative, never mind the title of "top technical innovation". If it can, that's great and can Sun kindly port it to Linux."
First of all, it does. It's a new system tracing paradigm, and that's not a word I throw around lightly. Download OpenSolaris, install it, and then see what dtrace can do before you comment on it.
Secondly, you want it in Linux? Then why don't YOU port it? Why should Sun be bothered, when not only the design document but the actual source code is already available? Years ago, that was the rallying cry of Linux boosters: "Go write it yourself if you want it." Now I'm increasingly seeing the Linux camp DEMANDING that someone else do all of their work.
"People who do stupid things with hazardous materials often die." -- Jim Davidson on alt.folklore.urban
Sun definitely deserves an innovation award this year, but I would not have said it was for DTrace. DTrace is an incredibly nice tool, but I would put it well behind ZFS. ZFS is the first filesystem I have looked at in detail and liked everything I've seen. BeFS came close (I only found one thing I disagreed with in the design there), but ZFS does much, much more.
The UltraSPARC T1 is also a very nice chip, and possibly deserves this kind of thing, although I am more interested in the T2 since I tend to do a lot of FPU-intensive things.
I am TheRaven on Soylent News