【发布时间】:2015-10-22 07:46:04
【问题描述】:
我可以看到 gcc 的 PGO(配置文件引导优化)在我的应用程序中运行良好(执行速度提高了约 15%)。我正在使用“-fprofile-generate”,然后使用“-fprofile-use”。但是有没有办法生成一些报告来描述优化的内容和方式?我知道 Intel 编译器 (icc) 可以做到这一点,但是 gcc 呢?
【问题讨论】:
标签: linux gcc optimization pgo
我可以看到 gcc 的 PGO(配置文件引导优化)在我的应用程序中运行良好(执行速度提高了约 15%)。我正在使用“-fprofile-generate”,然后使用“-fprofile-use”。但是有没有办法生成一些报告来描述优化的内容和方式?我知道 Intel 编译器 (icc) 可以做到这一点,但是 gcc 呢?
【问题讨论】:
标签: linux gcc optimization pgo
有-fdump-ipa-all 或-fdump-ipa-cgraph 这些不会产生漂亮的报告,但它可能是最接近您在 gcc 中找到的优化报告的东西。还有一些优化选项有详细的输出,它会告诉你优化了什么,比如-ftree-vectorizer-verbose=n。您可以查看更多详情here。
【讨论】:
一个选项是使用 perf 并分析缓存命中/未命中更改以及其他事件。虽然这不一定表明发生了什么变化,但它概述了可以针对优化进行哪些类型的更改。
【讨论】: