日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

三 性能調(diào)試---CPU性能分析

1:CPU的體系結(jié)構(gòu)和工作原理
2:操作系統(tǒng)和進(jìn)程
3:衡量CPU閑忙程度的指標(biāo)
4:CPU資源成為系統(tǒng)性能的瓶頸的征兆
5:哪些進(jìn)程是占用CPU資源的大戶?
6:利用SAR工具分析CPU的利用率
7:利用SAR工具分析運(yùn)行進(jìn)程隊(duì)列長度
8:利用SAR工具分析系統(tǒng)調(diào)用
9:利用time命令測試某個(gè)命令和程序的執(zhí)行效率
10:利用top命令查看最耗CPU資源的進(jìn)程
11:利用uptime命令查看系統(tǒng)整體情況
12:利用GlancePlus分析系統(tǒng)CPU資源利用率
13:對(duì)CPU需求密集型系統(tǒng)的性能調(diào)試


CPU的體系結(jié)構(gòu)和工作原理


我們所說的CPU一般是指微處理器,即Microprocessor,一般地,一個(gè)CPU的主要組成部分為:

CPU(central processing unit)
cache:cache就是高速內(nèi)存,它的存取時(shí)間一般是10-20微秒(ns),這樣,CPU可以在一個(gè)時(shí)鐘周期內(nèi)訪問一次cache;而一般的內(nèi)存的存取時(shí)間為80-90微秒(ns),它的大小對(duì)CPU的性能有很大的影響 。
TLB(translation lookaside boffer):TLB是高速cache,它用于存放最近訪問的虛擬地址和與其對(duì)應(yīng)的物理地址對(duì),這樣TLB將可以把虛擬地址轉(zhuǎn)換為物理地址 。TLB是內(nèi)存中系統(tǒng)轉(zhuǎn)換表的一個(gè)子集;TLB通常是指向一個(gè)內(nèi)存頁面,而不是一個(gè)內(nèi)存地址;它的大小對(duì)CPU的性能有很大的影響 。
coprocessor
不同的CPU,一般有不同的時(shí)鐘頻率和高速緩存容量 。

CPU在一次時(shí)鐘周期內(nèi)一般可以從高速緩存內(nèi)取到一個(gè)指令并執(zhí)行它 。因此,從理論上說,只要CPU的主頻越快,單位時(shí)間內(nèi)所能執(zhí)行的指令則越多 。目前,有些CPU可以在一個(gè)時(shí)鐘周期內(nèi)執(zhí)行多條指令,如PA8500可以執(zhí)行4條指令 。
高速緩存的大小會(huì)制約CPU的執(zhí)行效率,雖然CPU主頻很快,但它取不到數(shù)據(jù),則只有空運(yùn)行 。因此,高速緩存的大小很重要;高速緩存又分?jǐn)?shù)據(jù)高速緩存和指令高速緩存,分別存放從內(nèi)存預(yù)先取來的即將執(zhí)行的數(shù)據(jù)和指令單元 。
虛擬尋址

一般,系統(tǒng)中的虛擬地址空間要比物理地址空間大得多,例如,如果系統(tǒng)是64位的,則理論上,它的尋址空間可以達(dá)到2的64次冪(2**64=18,447PB),但由于受費(fèi)用的因素的影響,實(shí)際上的物理內(nèi)存最大只有十幾GB的內(nèi)存 。

每個(gè)進(jìn)程都有自己的唯一虛擬地址空間,然而,進(jìn)程的運(yùn)行必須把虛擬地址映射到物理地址,這需要TLB、高速緩存和內(nèi)存三者的配合 。如果需要的信息不在內(nèi)存,則導(dǎo)致一個(gè)頁面錯(cuò) 。

流水線(Pipelining)

TLB和高速緩存試圖在一個(gè)時(shí)鐘周期內(nèi)給CPU提供它所需的信息,然而,這個(gè)過程是100%的利用率,對(duì)CPU來說,它必須先用一個(gè)時(shí)鐘周期去取下一個(gè)指令,再一個(gè)時(shí)鐘周期去執(zhí)行這條指令,這樣,CPU的利用率也只有50% 。為了讓CPU更忙,通常的做法是,采用流水線的方法 。如PA8500是采用7個(gè)步驟的流水線 。

操作系統(tǒng)和進(jìn)程


HP-UX一個(gè)多用戶、多任務(wù)的Unix操作系統(tǒng) 。它的性能依賴于用戶數(shù)的多少、用戶任務(wù)的類型、硬/軟件件的配置 。

HP-UX有兩種運(yùn)行級(jí)別:

用戶級(jí):系統(tǒng)用戶可以與操作系統(tǒng)進(jìn)行交互操作,如運(yùn)行應(yīng)用和系統(tǒng)命令 。用戶級(jí)通過系統(tǒng)調(diào)用接口訪問內(nèi)核級(jí) 。
內(nèi)核級(jí):操作系統(tǒng)自動(dòng)運(yùn)行一些功能,它們主要對(duì)硬件進(jìn)行操作 。
在操作系統(tǒng)中,用戶程序是以進(jìn)程方式運(yùn)行 。進(jìn)程的狀態(tài)有以下幾種:

SRUN
SSLEEP
SZOMB
SIDL
SSTOP
CPU的調(diào)度

一旦進(jìn)程所需的數(shù)據(jù)調(diào)入內(nèi)存后,它將等待CPU調(diào)度者來分配CPU時(shí)間 。一般,在HP-UX中,每個(gè)進(jìn)程都可以得一個(gè) 固定的時(shí)間片來運(yùn)行,這個(gè)時(shí)間片的長度為十分之一秒(1/10秒) 。

由于HP-UX是一個(gè)多任務(wù)的操作系統(tǒng),它需要一種手段來進(jìn)程的執(zhí)行次序,這就是中斷 。在系統(tǒng)中,時(shí)鐘中斷處理器是用來處理時(shí)鐘中斷的系統(tǒng)軟件 。具體地說,它將收集系統(tǒng)和accounting statistics and does context switching.系統(tǒng)性能也與這種中斷發(fā)生的頻率有關(guān) 。

推薦閱讀