【问题标题】:How to speed up exe file with compile?如何通过编译加速 exe 文件?
【发布时间】:2019-01-19 02:24:25
【问题描述】:

我有一个小的 c 程序,我在 c 上使用大量 cpu 编写并使用 Visual Studio 17 编译它,在 Windows 上运行。

我想在不改变代码的情况下加快这个exe文件的速度,只需要改变编译方法。

我不关心安全代码,只关心速度,我知道这个程序将在其上运行的操作系统和处理器(如果有帮助的话)。

那么如何通过更改编译器/禁用某些安全标志/将其编译为特定的操作系统/处理器来加快我的程序?

【问题讨论】:

  • 1.定义...small c program。 2. 尝试使用release 构建而不是debug 构建,看看是否是您需要的?
  • 200行代码,我在release中使用

标签: c visual-studio compilation processor


【解决方案1】:

如果编译器默认不做优化,你可以添加一些参数来获得编译器的最大速度。你可以找到所有这些论点here。在您的情况下,可能是/O2

在 Visual Studio 开发环境中设置此编译器选项:

  1. 打开项目的“属性页”对话框。

  2. 单击 C/C++ 文件夹。

  3. 单击优化属性页。

  4. 修改优化属性。

【讨论】:

  • 020x 有什么区别,最大优化是多少?以及我如何在 Visual Studio 中设置它?
  • o2 只优化速度,而 ox 优化速度和编译后的二进制文件大小。
  • 所以如果我不关心文件大小而我只想要速度,我需要放 02 吗?编译pn release时默认选项是什么?
  • 是的,你应该放 O2 以提高速度。而默认选项是/Ot是。
  • ot 是快速代码,02 是非常快速的代码?有没有说这些选项之间的平均速度是多少(以%计)?顺便说一句,我在这里看到For example, the Optimization property, by default, is set to Maximize Speed (/O2) in a Release configuration msdn.microsoft.com/en-us/library/669zx6zc.aspx
【解决方案2】:

在 Project -> Properties 中设置适合您的优化标志:

【讨论】:

  • 将所有选择标记为是?还是只有第一个?这些变化有什么影响?为什么它们默认禁用
  • 您正在显示调试设置,其中优化已关闭。默认情况下,发布设置(OP 正在使用)是否启用了优化?
猜你喜欢
  • 1970-01-01
  • 2011-09-11
  • 1970-01-01
  • 1970-01-01
  • 2017-02-06
  • 1970-01-01
  • 2023-01-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多