调优原则
性能调优是一个涉及多个层面的复杂过程,从硬件和操作系统的选择到子系统的设计和算法选择,都需要仔细考虑。在调优过程中,必须遵循一定的原则以确保得到正确的结果。
性能调优从大的方面来说,在系统设计之初,需要考虑硬件的选择、操作系统的选择以及基础软件的选择;从小的方面来说,包括每个子系统的设计、算法选择、如何使用编译器的选项,以及如何发挥硬件最大的性能等。
性能优化原则主要有以下几个方面:
- 对性能进行分析时,需要从多方面分析系统的资源瓶颈所在。因为系统如果在某一方面性能低,也许不是系统本身的原因,而是受到其他因素的影响。例如,CPU利用率100%可能是内存容量过小、CPU忙于处理内存调度的原因所导致的。
- 一次只对影响性能的某方面的一个参数进行调整,如果对多个参数同时进行调整,将难以界定影响性能的真正原因。
- 进行系统性能分析时,性能分析工具本身会占用一定的系统资源,如CPU资源、内存资源等,因此分析工具本身运行可能会导致系统某方面的资源瓶颈情况更加严重。
- 必须确保调优后的程序运行正确。
- 调优过程是持续的过程,每一次调优的结果都需要反馈到后续的版本开发中去。
- 性能调优不能以牺牲代码的可读性和可维护性为代价。
父主题: 调优概述