[geeks] Glowing Review: Rational Purify

Joshua Boyd jdboyd at jdboyd.net
Fri Jun 13 11:15:05 CDT 2008


On Fri, Jun 13, 2008 at 11:45:54AM -0400, Shannon Hendrix wrote:

> The problem here is that a lot of people who could use Purify cannot  
> afford it.
> 
> valgrind... it only runs on Linux as far as I can see, which pretty  
> much limits how useful it is.

Yes, being linux only does limit usefulness.  However it can still be
useful for testing code that is for another OS but not OS dependent.
 
> I assume these programs use OS specific features that limit their  
> portability.

Yes.  I don't know how Purify works, but you can find papers on how
valgrind works.   Keep in mind that valgrind is both a suite of tools
and a framework for making new ones, not just a runtime debugger.  The
short of it is that they decompile the program back into a SSA form they
call IR.  Then the chosen tool changes the SSA form as it sees fit, then
it recompiles to machine code again and starts running.  Running with
the null tool still makes you programes about 4x slower.  

I used to find valgrind fairly useful for debugging hard problems in a
big system at work.  Alas, since this is a realtime system and valgrind
is so slow, some problems would go away because of the slow down.
Somewhere along the way though something has changed and now when I try
to use it on any program that uses a certain /dev entry, it locks the
system hard.  This probably broke at some driver update, but I'm not
sure which update.  It isn't an open source driver so I can't really get
help from the kernel people, or the valgrind people, and the driver's
vendor doesn't care about this. Still, for the modules that have test
code to be run stand alone, I do still use valgrind for checking things
out. 



More information about the geeks mailing list