**计算机系统复习三
第五章:优化程序性能
GCC的五种级别
O0:(字母“O”后面跟个零)关闭所有优化选项
O1: 最基本/缺省优化等级。编译器在不花费过多编译时间的同时,试图生成更快更小的代码。非常基础的优化,一般这些任务能顺利完成
O2: 会比-O1启用多一些标记。设置了-O2后,编译器会试图提高代,码性能而不会增大体积和大量占用的编译时间
O3:这是最高最危险的优化等级(不推荐)
Os:这个等级用来优化代码尺寸
编译器遵循的一个优化原则:安全优化
程序优化6大方法:
1:消除循环的低效率(改进循环效率)
2:减少过程调用(减少函数调用)
3:消除不必要的内存引用(使用局部变量)
4:循环展开
5:提高并行性
6:重新结合变换
参考资料:《深入理解计算机系统》第三版