valgrind相关内容
我的应用程序中有一个非常简单的 CUDA 组件.Valgrind 报告了大量泄漏和仍然可访问的问题,所有这些都与 cudaMalloc 调用有关. 这些泄漏是真的吗?我为每个 cudaMalloc 调用 cudaFree.这个 valgrind 无法解释 GPU 内存分配吗?如果这些泄漏不是真的,我可以抑制它们并让 valgrind 只分析应用程序的非 GPU 部分吗? extern "C
..
在 OSX Yosemite 上使用 Valgrind 时,我收到可能丢失的警告:1 个块中的 2,064 字节.有没有办法解决这个问题?我使用 brew 安装了 valgrind. 以下是如何重现的示例 ~/cat hello.cint main() {返回 123;}〜/uname -aDarwin mac.local 15.2.0 Darwin 内核版本 15.2.0:2015 年
..
我想使用 Valgrind 3.7.0 来查找 Java 本机代码中的内存泄漏.我正在使用 jdk1.6.0._29. 为此,我必须设置 --trace-children=yes 标志.设置该标志,我不再可以在任何 Java 应用程序上运行 valgrind,甚至是像这样的命令: valgrind --trace-children=yes --smc-check=all java -ver
..
我在 OS X 10.8.1, Mountain Lion 上使用 Valgrind 3.8.0 版.关于与 10.8.1 的兼容性,Valgrind 的网站说(我的斜体字): Valgrind 3.8.0 适用于 {x86,amd64}-darwin(Mac OS X 10.6 和 10.7,对 10.8 的支持有限). 我知道,对于 10.8.1,只有“有限的支持".尽管如此,这个
..
openmp 是否分配内存并释放所有内存?因为我运行了 valgrind,并且释放了我所有的列表.我 malloc 的所有东西都释放了. ==11442== HEAP 摘要:==11442== 退出时正在使用:1 个块中的 192 个字节==11442== 总堆使用量:2,001 次分配,2,000 次释放,已分配 2,917,280 字节==11442====11442== 泄漏摘要:==11
..
Valgrind 在为字符串赋值时报告内存泄漏. 我使用以下简单代码来测试 Valgrind 报告的内存泄漏. /*********************************************** 文件:t3.c* 编译使用:g++ -g t3.c -o t3** $ g++ -v* 从/usr/lib/gcc/i686-pc-linux-gnu/3.4.6/specs 读取规
..
每当我创建 pthread 时,valgrind 都会输出内存泄漏, 例如下面的代码: #include #include #include void *timer1_function (void *eit){(无效) eit;printf("你好世界\n");pthread_exit(NULL);}int main(void){pthread_t timer1;pthread_creat
..
所以...我正在尝试从我的 GTK+ 3 程序中消除一些内存泄漏.我虽然回顾一些简单的例子来看看是否有一些我忘记的清理东西是个好主意,但是文档中提供的 hello_world 程序也有泄漏.(Valgrind 输出如下). 这些泄漏是否可以接受?如果是这样,我是否应该使用其他一些应用程序来调试 GTK 程序? ==13717== Memcheck,一个内存错误检测器==13717== 版权
..
我正在使用 pthread 库编写程序.当我使用命令 valgrind --leak-check=full 运行我的程序时,我得到以下错误描述: ==11784====11784== **堆摘要:**==11784== 退出时使用:18 个块中的 4,952 字节==11784== 总堆使用量:1,059 次分配,1,041 次释放,已分配 51,864 字节==11784====11784==
..
我对这个 valgrind 错误感到非常生气.我有一个名为 Matrix 的模板类,它有一些重载的运算符等......来做一些数学运算.矩阵在称为 ExtendedKalmanFilter 的类中使用. 这是 valgrind 跟踪: ==3352== 大小为 8 的无效读取==3352== 在 0x804CC8F:BOViL::math::Matrix::operator*(BOViL:
..
我们的代码涉及一个 POD(Plain Old Datastructure)结构(它是一个基本的 c++ 结构,其中包含其他结构和 POD 变量,需要在开始时进行初始化.) 基于我阅读的内容,似乎: myStruct = (MyStruct*)calloc(1, sizeof(MyStruct)); 应该将所有值初始化为零,就像这样: myStruct = new MyStruct()
..
昨天我正在阅读有关调试技术的文章,发现 Valgrind 非常有趣.它似乎使用了动态代码分析的技术.我按照原始参考中的链接指向其他称为 Path Profiling. 我尝试过谷歌搜索,但我想我使用了错误的术语来搜索有关这些概念的良好参考.考虑到我没有编译器和编程语言的背景,有人可以推荐一个好的资源吗? 解决方案 Path Profiling 作为一个理论问题很有趣.gprof
..
在 Linux 中,我一直使用 valgrind 来检查应用程序中是否存在内存泄漏.Windows 中的等价物是什么?这可以用 Visual Studio 2010 完成吗? 解决方案 Visual Studio 2019 有一个不错的内存分析工具,它可以在调试时交互使用或通过编程(无需调试)使用,我在这两种情况下都展示了一个最小的例子在下面. 主要思想是在进程开始和结束时对堆进行快
..
你能告诉我如何在 Yosemite 上安装 valgrind 吗?当我尝试安装它时,我得到“检查内核版本......不受支持(14.0.0)配置:错误:Valgrind 适用于 Darwin 10.x、11.x、12.x 和 13.x(Mac OS X 10.6/7/8/9)“ 没有官方路径或更新,我也没有找到任何东西(除了http://comments.gmane.org/gmane.co
..
我在我的 Rails 代码中发现了内存泄漏 - 也就是说,我发现了什么代码泄漏,但没有发现它为什么泄漏.我已将其简化为不需要 Rails 的测试用例: 需要'csspool'需要“红宝石质量"定义报告puts 'Memory' + `ps ax -o pid,rss |grep -E "^[[:space:]]*#{$$}"`.strip.split.map(&:to_i)[1].to_s +
..
当我发现它仅适用于 Linux 时,我正在研究 Valgrind 以帮助改进我的 C 编码/调试 - 我没有其他需要或兴趣将我的操作系统迁移到 Linux,所以我想知道是否有同样好的程序窗户. 解决方案 正如 jakobengblom2 所指出的,valgrind 有一套工具.根据您谈论的是哪一个,有不同的 Windows 计数器部件.这里我只会提到 OSS 或免费工具. 1.内存检
..
我正在尝试在 Valgring 下像这样(在 adb shell 中)启动一个 Java 程序: valgrind am start -a android.intent.action.MAIN -n com.me.myapp/.MainActivity 我得到: ==2362== Memcheck,一个内存错误检测器==2362== 版权所有 (C) 2002-2012 和 GNU GPL,
..
google 上有很多和我类似的问题,我都试过了,但没有一个有效,所以我必须发布这个问题. 我正在尝试使用 Valgrind 检测一些二进制文件的内存泄漏,这些文件是为我的设备编译的(使用处理器:ARM926EJ-S rev 5 (v5l)). 因此,我正在尝试使用适用于我的设备的特定工具链交叉编译 Valgrind. 这是我的过程:我使用的是 Valgrind 3.13.0 和
..
大家.我在为 armv5(arm926ej-s) 交叉编译 valgrind 时遇到了一些问题.我可以找出其中的一些,但有一个我无法解决.我会写这些问题: Valgrind 在 configure 中不支持 armv5,我用 armv7*|arm*) 代替了 armv7*) 并且它效果很好. -mcpu=cortex-a8 不对,因为我有一个 arm926ej-s CPU.所以我用这个
..
我非常喜欢 火焰图 用于分析,因为它将有助于消除不需要的函数调用.然而,有一个问题,它需要分析器在每次收集样本时进行完整的堆栈转储.这可以通过 DTrace 或 SystemTap 轻松完成,但我需要能够在运行 ubuntu(消除 DTrace)的 ARM 设备上执行此操作.我也想在不重新编译内核的情况下做到这一点(它消除了 SystemTap). 是否可以让 Valgrind/Callgr
..