|
1
valgrind cuda-memcheck nv profiler
|
|
2
用自己的内存函数 , 演示一下
void *my_malloc(size_t n) { auto p = malloc(n); log(p, n); return p; } void my_free(void *p ) { delete_from_log(p) free(p) } std::atexit =[]() { dump_log() } |
|
changnetSep 15, 2018 via Android
4
win 下有 visual leak detector,linux 下 valgrind,我自己是重写 new delete 然后计数,每次程序退出没释放时打个日志
|
|
nanlouSep 15, 2018
5
类似 sonarqube 之类的代码扫描工具也可以扫出一些内存相关的问题。另外 AddressSanitizer 之类的也可以了解一下。
|
|
6
gcc a.c -g -fsanitize=address,undefined 比 valgrind 快多了
|
|
yanaraikaSep 15, 2018
7
或者简单点 glibc 的 mtrace
|
|
8
|
|
zhuangzhuang1988Sep 15, 2018
9
大 intel 的 https://software.intel.com/en-us/intel-inspector
可以检查资源(不仅仅是内存)和线程问题 |
|
FrankHBSep 16, 2018
12
valgrind DrMemory asan msan lsan ubsan
|
|
innoinkSep 19, 2018 via Android
13
tcmalloc
|