Although we have only considered a limited set of applications, we can draw important lessons on how to
write efficient code. We have described a number of basic strategies for optimizing program performance:
1. High-level design. Choose appropriate algorithms and data structures for the problem at hand. Be especially
vigilant to avoid algorithms or coding techniques that yield asymptotically poor performance.
选择高效的算法。
2. Basic coding principles. Avoid optimization blockers so that a compiler can generate efficient code.
(a) Eliminate excessive function calls. Move computations out of loops when possible. Consider
selective compromises of program modularity to gain greater efficiency.
(b) Eliminate unnecessary memory references. Introduce temporary variables to hold intermediate
results. Store a result in an array or global variable only when the final value has been computed.
3. Low-level optimizations.
(a) Try various forms of pointer versus array code.
(b) Reduce loop overhead by unrolling loops.
(c) Find ways to make use of the pipelined functional units by techniques such as iteration splitting.
本文介绍了提高程序性能的基本策略,包括选择合适的算法和数据结构、避免过度函数调用、减少不必要的内存引用等高级设计原则,以及尝试不同的指针和数组代码、展开循环等底层优化技巧。

1万+

被折叠的 条评论
为什么被折叠?



