1

通用编译器可接受的最大渐近运行时间是多少?

澄清:编译过程本身的复杂性,而不是编译程序的复杂性。例如,取决于程序大小,源代码字符、语句、变量、过程、基本块、中间语言指令、汇编程序指令或其他的数量。

这在很大程度上取决于您的观点,因此这是一个社区 wiki。

从编写编译器的人的角度来看这一点。当优化级别之一需要 O(n^6) 时,优化级别-O4是否会用于更大的程序?

相关问题:

  • 何时可以接受超优化(指数复杂性甚至无法计算)?

  • JIT可以接受什么?它必须是线性的吗?

  • 已建立的编译器的复杂性是多少?海合会?风投?英特尔?爪哇?C#?涡轮帕斯卡?低成本航空公司?LLVM?(参考?)

如果您不知道什么是渐近复杂度:您愿意等到编译器编译您的项目多长时间?(脚本语言除外)

4

1 回答 1

1

我认为您不会找到任何需要对每个源文件进行最高级别优化的大型项目。我希望这种优化级别只针对那些真正需要它的文件/类/模块。因此,重要的是为开发人员提供将此类优化的范围和成本限制在需要它的代码的方法。

于 2010-05-26T15:49:51.547 回答