CPU的基本知識與使用方法
阿新 • • 發佈:2018-12-26
1,CPU的兩大巨頭
Intel,使用CISC(複雜指令集,只是用20%),主要佔領伺服器,PC端市場。
ARM,使用RISC(精簡指令集),主要佔領嵌入式市場。
2,馮.洛伊曼架構和哈佛架構。
馮.洛伊曼架構:
- 以運算單元為中心
- 採用儲存程式原理
- 儲存器是按地址訪問、線性編址的空間
- 控制流由指令流產生
- 指令由操作碼和地址碼組成
- 資料以二進位制編碼
儲存與指令分開,也就儲存使用8bit,指令為14bit,分別為兩塊儲存空間,所以在取指令與取資料時不會在總線上發生衝突。
現代PC都是偽.馮.洛伊曼結構,在CPU外部為馮洛伊曼結構,但是在CPU內部增加了指令快取和資料快取而將指令與資料分開。
3,linux檢視cpu核數
# 總核數 = 物理CPU個數 X 每顆物理CPU的核數
# 總邏輯CPU數 = 物理CPU個數 X 每顆物理CPU的核數 X 超執行緒數
# 檢視物理CPU個數
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
# 檢視每個物理CPU中core的個數(即核數)
cat /proc/cpuinfo| grep "cpu cores"| uniq
# 檢視邏輯CPU的個數
cat /proc/cpuinfo| grep "processor"| wc -l
4,CPU的使用
Intel的超執行緒技術,增加片上20%的面積為開銷,來充分利用片上資源,使得單核上可以執行多個執行緒,但是並不能完全並行。
CPU的cpupower調頻,可設定CPU的頻率。
注意在使用多執行緒編寫程式時,要將執行緒與核進行繫結(設定執行緒親緣性),不讓在給執行緒分配核時是不確定的,可參考http://blog.csdn.net/wuhui_gdnt/article/details/51280906。