Linux系統(tǒng)調(diào)優(yōu)02——隊列調(diào)優(yōu)原理_第1頁
Linux系統(tǒng)調(diào)優(yōu)02——隊列調(diào)優(yōu)原理_第2頁
Linux系統(tǒng)調(diào)優(yōu)02——隊列調(diào)優(yōu)原理_第3頁
Linux系統(tǒng)調(diào)優(yōu)02——隊列調(diào)優(yōu)原理_第4頁
Linux系統(tǒng)調(diào)優(yōu)02——隊列調(diào)優(yōu)原理_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、 Linux系統(tǒng)性能調(diào)優(yōu) 隊列調(diào)優(yōu)原理1本章目標(biāo)了解隊列原理的基本概念了解隊列條調(diào)優(yōu)的的基本原則與核心思想2隊列原理隊列原理的核心思想Littles Law:在1961年由John Little以數(shù)學(xué)形式表現(xiàn)出來:便于技術(shù)人員實現(xiàn)性能管理及對性能調(diào)優(yōu)建立量化的衡量與操作標(biāo)準(zhǔn);Littles Law L=AWL隊列長度:系統(tǒng)中等待處理的請求數(shù)量;等同于(number of request) queue lenth;A到達率:若以秒為計算單位,則表示每秒有多少請求到達;W等待時間:處理完成一個請求所需要的時間;等同于延遲、響應(yīng)時間或駐留時間;3隊列原理在實際應(yīng)用中的體現(xiàn)Littles Law L=

2、AW的體現(xiàn):例如iostat可以告知每秒鐘讀寫的量以及請求數(shù)量。4隊列原理的實現(xiàn)方式與調(diào)優(yōu)原則隊列的實現(xiàn)方式:隊列基于優(yōu)先級實現(xiàn)并有兩種實現(xiàn)方式:針對資源建立多個隊列;隊列饑餓的現(xiàn)象將普遍存在;只使用一個隊列;在隊列頭部合并一些緊急任務(wù);不管使用哪種方式;通過一定的邏輯性防止隊列饑餓;真實的隊列算法通常會合并讀寫兩種操作到隊列中;隊列調(diào)優(yōu)的基本原則:挑選優(yōu)秀的隊列算法來更邏輯、合理和高效地處理請求;控制隊列長度:短隊列有利于節(jié)省內(nèi)存和減少中斷,長隊列有利于有效排列和處理請求:一般只能調(diào)整L與W,A無法控制;等待時間與隊列長短有直接關(guān)系,因此盡可能地控制等待時間;往往通過調(diào)優(yōu)只能實現(xiàn)對后端到達率

3、的控制且用戶請求和系統(tǒng)處理能力始終存在差異;在大多數(shù)情況下需要作出取舍:讀相對于寫應(yīng)具備更高的優(yōu)先級,因此隊列優(yōu)化應(yīng)該盡可能先滿足讀的需求;5影響隊列的因素等待時間(W)關(guān)于等待時間W:包括“隊列時間”和“服務(wù)時間”隊列時間:資源從不可用到可用的時間服務(wù)時間:處理請求所用的時間因此:L=A(Q+S)隊列調(diào)優(yōu)的策略:減少隊列時間和服務(wù)時間同時服務(wù)時間通常包含系統(tǒng)時間(T sys)和用戶時間(T usr)T usr 任務(wù)真正在CPU上得到處理的時間;T sys 用于kernel處理上的時間;若程序大量占用系統(tǒng)時間(中斷,IO,系統(tǒng)調(diào)用),則表明程序效率低,故原則上通過優(yōu)化應(yīng)用程序盡量將系統(tǒng)時間縮短

4、;若程序大量占用用戶時間則說明程序?qū)PU的使用較高;在Linux中,通過time命令可以獲得T usr和T sys的信息;但 T usr + T sys不一定等于Real Time;排隊時間;進程試圖和Kernel交互時會等待并sleep;6降低等待時間的原則與方法隊列調(diào)優(yōu)的重要方法:找到程序執(zhí)行的“熱點”:例如:# strace -fc elinks -dump 顯示系統(tǒng)調(diào)用以及隨之產(chǎn)生的folk子進程系統(tǒng)調(diào)用角度# ltrace -Sfc elinks -dump 顯示系統(tǒng)和庫的調(diào)用以及隨之所產(chǎn)生的folk子進程庫調(diào)用角度(任何一個用戶層程序試圖訪問Kernel層(ring 0)時的過程

5、稱為system call,任何應(yīng)用程序和內(nèi)核交互都要通過system call,應(yīng)用程序一般通過glibc來和system call進行交互來間接實現(xiàn)對Kernel的訪問。)7降低等待時間的原則與方法隊列調(diào)優(yōu)的重要方法:8完成量另外一個重要概念完成量:前提概念:Bandwidth(帶寬): data + overhead指在給定時間之內(nèi)通過的固定大小為單位的數(shù)據(jù)單位總量同等條件下實際通過的固定大小單位的數(shù)據(jù)總量Throughput(吞吐量): data only (e.g., Mbps)在給定時間內(nèi)通過的有用的數(shù)據(jù)量Overhead(開銷): cost of doing work (e.g.

6、, Mbps)傳輸有用數(shù)據(jù)時產(chǎn)生的消耗Complete Rate(完成率):處理完成的請求數(shù)量;因此:帶寬 = 吞吐量 + 開銷;因此“吞吐量”理論上即“完成量”;完成量和開銷有直接關(guān)系:帶寬固定的情況下,開銷越小,完成量越大;為了提高完成量,減少開銷是最有效的手段;9完成量另外一個重要概念完成量:完成量的計算(單位時間的完成量=總完成量/觀察時間): CompletionsX = - Observation period減少損耗意味著增加吞吐量以及增加完成量(completions)。提高完成率的核心思想提高完成量,降低和減少開銷:采用更高效的協(xié)議;采用更高效的算法;減少可能產(chǎn)生其他開銷的各

7、種因素;(例如,若希望減少開銷為應(yīng)用程序選用UDP協(xié)議,如果在網(wǎng)絡(luò)丟包的情況下應(yīng)用程序?qū)l(fā)起重傳請求。比較復(fù)雜的應(yīng)用程序可能會因此產(chǎn)生比使用TCP更多的開銷。)10完成量對隊列調(diào)優(yōu)的影響針對完成量調(diào)優(yōu)的目標(biāo):前提概念:到達率Arrival rate (A): rate at which work is requested (e.g., packets/s)到達的請求數(shù)量;觀察周期Observation period: discrete time spent observing resources (e.g., 1 s)觀察時間;穩(wěn)定狀態(tài)Steady state: condition in w

8、hich A=C穩(wěn)定狀態(tài),即A=C的狀態(tài);最終的調(diào)優(yōu)目標(biāo):到達率的平均值=完成量的平均值11定義合適的觀察周期確定適當(dāng)?shù)挠^察周期:觀察周期的設(shè)置應(yīng)遵從原則:以1s作為觀察期并收集觀察數(shù)據(jù),通過Littles法則來對比觀察結(jié)果,觀測到的值是否和計算值一致?若是則證明觀測期設(shè)置是合理的,否則就需要調(diào)整觀測期到更長時間。12隊列調(diào)優(yōu)的整體思想因此,隊列調(diào)優(yōu)的思想:Littles Law的變體:L=AW;L=A( Q + S );L=A( Q + ( St + Su ) );根據(jù)Littles Law所體現(xiàn)的調(diào)優(yōu)思想:調(diào)整隊列L:對隊列的調(diào)整主要在于限制隊列的長度到一定的值;對隊列進行重新調(diào)整以適應(yīng)讀操作;盡可能低優(yōu)化到達率A: 通過將負載分擔(dān)到多個資源(SMP,RAID)以實現(xiàn)降低訪問量; 采用更有效和更小開銷的協(xié)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論