一、计算性能优化:
本篇文章的核心点:
CPU进行计算运算,需要从内存中搬运数据,访问内存的延时是访问寄存器的100倍左右。最早是CPU直接访问内存,因为性能问题,后期增加了缓存,现代CPU通常为3级缓存。
CPU内部结构简图:
CPU缓存架构
3级缓存,分别是L1、L2和L3,其中L1和L2是Cpu核独有的,L3是1个CPU的多核共享的。但是缓存的容量要远远小于主存的,因此缓存中的数据通常是主存中的很小的一部分。
由于应用访问数据有区域局部性的特点,因此缓存中的数据通常是程序所需要的数据。另外一个需要注意的是地方是,从主存读取到缓存中是有一定的粒度的(专业数据较缓存行),当前处理器通常是64个字节,如下图所示。
所以在逐行访问的时候,访问的地址是一4字节为单位跳跃的,由于缓存行的大小是64字节,因此很容易命中缓存。而逐列访问的时候,每次都需要跳跃很多个字节,需要直接访问内存,导致性能变差。
2、存储性能优化:
3、网络协议与分析工具