一、計算性能優化:
本篇文章的核心點:
CPU進行計算運算,需要從內存中搬運數據,訪問內存的延時是訪問寄存器的100倍左右。最早是CPU直接訪問內存,因爲性能問題,後期增加了緩存,現代CPU通常爲3級緩存。
CPU內部結構簡圖:
CPU緩存架構
3級緩存,分別是L1、L2和L3,其中L1和L2是Cpu核獨有的,L3是1個CPU的多核共享的。但是緩存的容量要遠遠小於主存的,因此緩存中的數據通常是主存中的很小的一部分。
由於應用訪問數據有區域局部性的特點,因此緩存中的數據通常是程序所需要的數據。另外一個需要注意的是地方是,從主存讀取到緩存中是有一定的粒度的(專業數據較緩存行),當前處理器通常是64個字節,如下圖所示。
所以在逐行訪問的時候,訪問的地址是一4字節爲單位跳躍的,由於緩存行的大小是64字節,因此很容易命中緩存。而逐列訪問的時候,每次都需要跳躍很多個字節,需要直接訪問內存,導致性能變差。
2、存儲性能優化:
3、網絡協議與分析工具