有人能给我解释一下profile-generate和pg选项之间的区别吗?
发布于 2012-09-21 20:47:19
两者都将生成配置文件数据。但它们的用法有所不同。
fprofile-generate将生成带有分析信息的二进制文件,当您使用fprofile-use重新编译它时,您可以重用这些信息来向编译器提供反馈。
例如:
$ gcc -fprofile-generate filename.c如果执行由about命令生成的二进制文件,它将生成一个名为filename.gcda的文件,其中包含配置文件数据。
当您再次使用fprofile-use编译它时:
$ gcc -fprofile-use filename.c这一次,gcc将使用来自filename.gcda的数据来进一步优化。
当您执行用-pg编译的二进制文件时,它将生成gmon.out,稍后可以使用gprof命令分析代码。这更像是静态分析,它会给出关于代码路径的信息。
https://stackoverflow.com/questions/12530620
复制相似问题