- 使用抽象简化设计:使用抽象来表示不同的设计层次——隐藏底层细节给高层一个更简单的模型。从而达到灵活通用,易拓展的目的。
- 加速经常性事件:在优化编写的程序时,往往把易于优化的方面处理好之后,剩下的罕见情形的优化性价比会变得更低。
- 通过并行提高性能:在注重执行的效率的地方,要懂得利用并行来进行加速。
- 通过流水线(pipelining)提高性能:这是并行性的一种特殊场景,但是在计算机体系结构中非常普遍。ex. 房子着火后,居民们会排成一个长链运水进行灭火,这样明确分工之后可以使水桶在链上快速移动但无须人员往返奔跑。
- 通过预测提高性能:其实就是在一些场景中,如果你选择先等待结果再执行会比较慢。但是大多数时候都是一种比较明确的结果,所以我们可以先认为是正确的,然后如果执行出错再进行处理。
- 存储层次:利用不同的存储层次,通过高速缓存让程序认为自己拥有大量的高速存储。
- 通过冗余提高可靠性