Hacker News new | past | comments | ask | show | jobs | submit login

These days most people moved on from Valgrind to ASan and other sanitizers, which provide much of the same functionality with lower performance penalty.



Valgrind's memcheck is still useful: it doesn't require recompiling, can handle external (binary-only) libraries, handles inline asm or jitted code, and provides uninitialized memory read instrumentation (yes, memsan does this, but it's tricky to set up). For me personally, I've required memcheck for applications using CUDA because CUDA and sanitizers don't play well together (for example, see https://github.com/google/sanitizers/issues/629). but indeed, the sanitizers are soooo much faster :)


Is there a mem issue that can be caught by Valgrind but not by a compile time sanitizer?


Sanitizers are not compile-time: they're runtime checks (aka dynamic analysis). For some strengths of valgrind compared to sanitizers, see my other comment in this thread.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: