2

我有一个高度并行的Windows程序,它使用大量的线程,手动编码的机器同步指令以及家庭共享的并行安全存储分配器。唉, 存储管理有一个漏洞(不是配置器中的同步化漏洞,我敢肯定),我想找到它。 Valgrind已被建议作为查找存储管理错误的好工具。 Valgrind在这些情况下使用过的任何经验?Valgrind如何处理线程和机器级同步指令?

回答

3

Valgrind不能在Windows上运行,但它可以在Linux上的Wine下运行的Windows程序。如果你的程序在Wine下运行,它与Valgrind有很好的合作机会。详情请参阅winehq.org

最新版本在处理所有的32位x86指令上相当不错。它可以处理创建许多线程的程序,只是不要期望它们在valgrind下同时运行。它一次只能运行一个线程,就像它运行在一台核心机器上一样。