Revisiting Knuth's "Premature Optimization" Paper
a year ago
- #programming
- #performance
- #optimization
- Knuth的著名格言'过早优化是万恶之源'经常被误解。
- 原论文讨论了结构化编程中'goto'语句的使用和性能权衡问题。
- Knuth强调,如果是在关键代码段中,小的优化(如循环展开)是值得的。
- 基准测试对于确定程序哪些部分真正需要优化至关重要。
- 现代编译器并不总能有效优化,有时需要手动干预(如汇编调整)。
- 使用优化良好的库函数(如STL、快速哈希表)通常比手动微优化更好。
- 10%的性能提升可能意义重大,特别是对于频繁使用的库函数而言。