what's the difference between this and valgrind?
The takeout is: valgrind is free and doesn't require recompilation, purify has a more complete UI, they both have similar performance impact and bug-finding abilities.
Anyway, I would think the gold standard these days is clang's Address Sanitizer (https://github.com/google/sanitizers/wiki/AddressSanitizer). clang/ASAN also runs on Mac in addition to Linux.
Purify did have a debugger-like GUI that would break on errors, which could be handy.
valgrind can also do most of the same checks, but is much slower.
On my team we use both