【发布时间】:2015-07-04 11:01:00
【问题描述】:
我有一个受大量网络 I/O 限制的 C 应用程序。它目前在 gcc 上使用-O2 编译。使用-Os 显示构建应用程序可以减少 20% 的大小。一些基本测试显示性能没有可测量的下降(或增加)。
这是使用-Os 构建的好案例吗?有理由不这样做吗?我从来没有真正见过一个程序,无论它在 I/O 上花费了多少时间,都已经针对大小进行了编译。
【问题讨论】:
-
尺寸对你来说重要吗?
-
通常,只有 1% 的代码占用了 99% 的 CPU 时间。理想情况下,你会编译 1% 的速度和其余的大小。问题是编译器无法解决这个问题。尝试配置文件引导优化。
标签: c performance gcc