Linux下的可视内存调试应用程序?

时间:2012-05-04 21:02:49

标签: linux debugging cuda gdb cuda-gdb

是否存在类似于Visual Profiler for CUDA的调试应用程序?它根据执行时间显示有关应用程序在功能级别的信息。是否存在常规C / C ++应用程序的内容,因此我可以看到哪些函数占用的时间和内存最多?

我正在尝试调试一个读取大量数据文件的应用程序,并使用自定义类来读取文件并在内部将其表示为向量向量。我有另一个类,它表示对数据文件中的数据执行的操作。当我在循环中读取越来越多的文件并对它们进行操作时,内存使用量会增加,直到操作系统刚刚杀死应用程序为止。我一直非常善于使用动态内存进行清理。一些视觉效果可以帮助我浏览所有文件和功能,看看哪些使用最多的时间和内存将是非常有益的!

我可以在我的应用程序中使用libproc来确认在循环的每次迭代中,内存使用率从一个很酷的~500 megs到一个高达19 GB的内存。这不应该是因为数据的范围在循环内,所以在循环的下一次迭代中,使用数据的C ++对象应该被清除并返回给操作系统,但这不会发生。

我希望这不是太模糊,谢谢!

1 个答案:

答案 0 :(得分:1)

在SO上搜索“c ++内存泄漏”。例如,请参阅:Memory leak tool for C++ under Windows

我猜人们会将此作为副本关闭。