2013-03-07 31 views
1

我正在使用VMware(Ubuntu)上的一个大型C++项目。它有几个进程和很多cpp文件。如何计算运行C++程序的实际操作次数?

我想知道的是:在运行我的代码时,在每个cpp文件中正在执行多少操作(添加,乘法,读取,写入,移位等等)。

我已经搜索了很多这个,我知道我应该寻找一个分析器,它给了我正在运行的代码中的指令数量,但我还没有找到任何分析器。

我是编程初学者,所以我会很感激任何帮助。

+0

由于它是一个大型程序,与库和系统例程(比如'new','delete')相比,您可能会发现在源代码中执行的指令数量非常小,和I/O。 – 2013-03-07 12:53:06

回答

2

Valgrind可能是你要找的。只需从软件包管理器安装它,然后在命令行的开头添加valgrind --tool=cachegrind即可运行该程序。

+0

我试过了,但如果我理解正确,它会给出整个程序的指令总数。 如果我想获得每个函数的不同操作(添加,等分等),有没有办法用valgrind做到这一点? – Adon 2013-03-11 08:15:56

0

虽然valgrind是一个非常棒的Linux工具,但在Windows上,您最好使用Visual Studio中内置的分析器;请注意,您需要完整版本而不是免费的Express。