OCS: SAS Uses RootCause
Advanced Performance Research
Claire Cates holds a unique position at SAS, one she created herself during a previous stint as director of an SAS R&D group. She works as a floating debugging expert, drawing on her 20 years of experience at SAS to help developers throughout the company resolve problems faster. "It's important to SAS that we ship the best quality product available," explains Cates. "My job is to help ensure that we do that."
Whenever there's a serious memory or performance problem, Cates works with the appropriate group of programmers to analyze and help diagnose the situation. "I never know what I'm going to be doing from one week to the next," says Cates. "But I enjoy putting my expertise to use to make our software better."
When Cates isn't working on a specific problem, she writes tools that she can use herself or that she can offer to developers so they can solve their own problems.
"I've built tools that scan source code to optimize it, show where memory is incorrectly allocated, where you have loops," Cates explains. "When you do this a lot, there are things you see over and over again. I think, I can write a program to find that."
Cates had already written eight tools to help track down memory problems when she heard about RootCause, a debugging tool from OC Systems, Inc.
"One of the tools, which was hooked up to a debugger, would set break points, dump data, and do an analysis of the data. I rewrote that one to test RootCause," explains Cates. "It ran much faster without the debugger, and I found that I could do things I couldn't do before."
As Cates worked with RootCause, she started to get excited about all the things she could do with it. "I could see that it would let me be proactive in learning what is happening in the code," says Cates. "It's really powerful."
She decided to combine the eight tools she had previously written into one custom memory probe with RootCause. "It takes a little while to write the custom probes, but it's worth it," says Cates. "Now I don't have to support eight tools anymore. The one I've built with RootCause has more detail."
"I had one developer using it because he had a big problem with memory," states Cates. "He just e-mailed me to say he's found the problems. Some were his; for the others, he shipped off the details to the divisions so they can fix them."
Cates has also written a lock contention probe and some input/output probes for use with RootCause. "I know the more I get the probes out there and get people using them, the better it will be. I want to show our developers that when they have certain types of problems we can throw in a probe to analyze the data and help them find the problem."
"If we have a problem in the field, I can use RootCause to send out a probe and do the same kind of analysis I can do here," adds Cates. "I haven't had to do that yet, but it's good to know that I can."
"I wish every company I had to work with was as good as OC Systems," says Cates. "I can send something to support at another company and I might hear back in two to three days with an acknowledgement that they received it. At OCS, I hear back in 10 minutes, and often from more than one person."
"I've worked with just about everybody and everyone is great," continues Cates. "I have not had one bad experience. At SAS, we have our own funky set of problems, and that throws a lot of tech support people off. But OCS knows me and is learning some of the quirks of my environment. I'm not just another number."
"I love RootCause," concludes Cates. "I'm a coder, but with RootCause I can write probes in standard C and get out all the data that I want. To me it is a phenomenal tool."
SAS provides business intelligence software and services that are used at more than 40,000 sites, including 97 of the top 100 of the 2004 Fortune 500. With more than one billion dollars in revenue, SAS is the world's largest privately held software company.