摘要:
编程优化:1. 编程优化,比如Fortran二维数组中,要按行存放,按列访问,这样可以让cache工作更高效。2. 循环展开,如CPU一拍能做四次浮点运算,那么可以将一个浮点计算循环(计算内容简单的)拆分成每次循环step为4,循环体内手动做四次循环代码。这样代码不好看,但是能得到性能提高。3. 运算顺序的调整,减少CPU流水线的迟滞。可以和循环展开配合,得到更好的性能。3. 针对Cache的优化。 数组合并: 利用块长,改善空间局部性 循环交换: 改变嵌套循环中访问内存的次序 循环合并: 增强数据的可重用性(时间局部性) 分块: 集中访问可取入cache的块状矩阵,避免全行或全列的读写,以增 阅读全文
posted @ 2012-01-19 10:44
super119
阅读(598)
评论(0)
推荐(0)