重温csapp
http://www.cs.cmu.edu/afs/cs/academic/class/15213-f15/www/lectures/10-optimization.pdf
-
moving code out of loop # 一些编译器会帮你做
-
少用乘除 16*x -> x<<4
-
将重复且不会发生改变的函数移除loop
如void lower(char *s) { size_t i; size_t len = strlen(s); for (i = 0; i < len; i++) if (s[i] >= 'A' && s[i] <= 'Z') s[i] -= ('A' - 'a'); } -
善用局部变量,编译器可以不用储存中间结果,避免多次访问同一内存
-
展开循环





§ S;ll sequen;al dependency





博客围绕优化程序性能展开,提及重温csapp相关资料。介绍了多种优化技巧,如将代码移出循环、少用乘除改用位移运算、把重复且不变的函数移除循环、善用局部变量以及展开循环等,以提升程序性能。
194

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



