Proebsting定律:编译器每18年只将计算能力提升一倍


我声称下面这个简单的实验支持这个令人沮丧的说法:
用你最喜欢的最先进的优化编译器运行你最喜欢的一组基准测试。在启用和未启用优化功能的情况下运行这些基准。这些数字的比率代表了编译器优化对加速这些基准测试的全部贡献。
让我们假设,对于典型的真实世界的应用,这个比率大约是4倍,让我们进一步假设,编译器优化工作已经持续了大约36年。
这些假设导致了这样的结论:编译器优化的进展每18年就会使计算能力翻一番。

这意味着,当硬件计算能力以大约60%/年的速度增长时,编译器优化只贡献了4%。
基本上,编译器优化工作只做出了微不足道的贡献

也许这意味着编程语言研究应该集中在优化以外的东西上。也许程序员的生产力是一个更能乐见成果的领域。

Reddit网友:
所有编程语言在很大程度上都与程序员的生产力有关。否则我们只会在汇编中编程。优化是其中的一部分。编译器所做的优化只是程序员不必做的事情。