999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種面向重尾分布的SSD磁盤調(diào)度算法

2016-01-08 05:31:26魏元豪,吳小華,吳慶波
計算機(jī)工程與科學(xué) 2015年6期

一種面向重尾分布的SSD磁盤調(diào)度算法*

魏元豪1,吳小華2,吳慶波1,邵立松1

(1.國防科學(xué)技術(shù)大學(xué)計算機(jī)學(xué)院,湖南 長沙 410073;2.二炮裝備研究院四所,北京 100085)

摘要:存儲設(shè)備上的大量文件其長度呈重尾態(tài)分布,IO請求的響應(yīng)延遲和請求大小有著密切關(guān)系,并且固態(tài)硬盤的IO操作不對稱。基于以上幾點,在內(nèi)核NOOP調(diào)度算法的基礎(chǔ)上提出一種針對重尾數(shù)據(jù)分布下的IO調(diào)度算法。該算法通過減少大量小片請求的等待時間,提高固態(tài)硬盤的性能。經(jīng)實驗驗證,相比內(nèi)核的NOOP調(diào)度算法,平均響應(yīng)時間減少17%。

關(guān)鍵詞:IO調(diào)度;固態(tài)硬盤;重尾分布

中圖分類號:TP333 文獻(xiàn)標(biāo)志碼:A

doi:10.3969/j.issn.1007-130X.2015.06.002

收稿日期:*2014-03-28;修回日期:2014-05-14

作者簡介:

通信地址:410073 湖南省長沙市國防科學(xué)技術(shù)大學(xué)計算機(jī)學(xué)院

Address:College of Computer,National University of Defense Technology,Changsha 410073,Hunan,P.R.China

An I/O scheduling algorithm of SSD based on heavy-tailed distributions

WEI Yuan-hao1,WU Xiao-hua2,WU Qing-bo1,SHAO Li-song1

(1.College of Computer,National University of Defense Technology,Changsha 410073;

2.The Fourth Research Institute of the Second Artillery Equipment Academy,Beijing 100085,China)

Abstract:The size of the files stored in the network server has heavy-tailed feature. Access latency is dependent on the size of the accessed files, and the IO operations of Solid State Disk (SSD) are asymmetric. Therefore, based on the kernel NOOP scheduling algorithm, we propose an I/O scheduling algorithm of SSD based on the heavy-tailed distributions to improve the performance of SSD access by reducing the waiting time for lots of small files. Experimental results show that the proposed algorithm can reduce response time by 17% on average compared with the kernel NOOP scheduling algorithm.

Key words:IO scheduler;SSD;heavy-tailed distributions

1引言

網(wǎng)絡(luò)和存儲設(shè)備上存在的大量數(shù)據(jù)呈現(xiàn)出重尾分布規(guī)律[1],決定了IO請求中必然大量存在小片數(shù)據(jù)的請求,偶發(fā)大塊數(shù)據(jù)請求[2]。固態(tài)硬盤SSD(Solid State Disk)存在讀寫不對稱和寫懲罰缺陷[3]。內(nèi)核中的Deadline和CFQ(Completely Fair Queuing)調(diào)度算法過于繁雜,不適用于固態(tài)硬盤[4]。NOOP(NO OPeration)調(diào)度算法不考慮扇區(qū)位置,直接派發(fā)請求,適用于隨機(jī)IO設(shè)備,但沒有針對數(shù)據(jù)的重尾特性加入相應(yīng)優(yōu)化機(jī)制。文獻(xiàn)[5]中設(shè)計的FIOS(Force Control I/O Server)調(diào)度算法,同時兼顧了調(diào)度的公平性和SSD的性能。但是,作者更多地是從SSD角度出發(fā)設(shè)計調(diào)度算法,沒有針對特定的應(yīng)用場景對調(diào)度算法加以優(yōu)化。文獻(xiàn)[6]中設(shè)計的整個IO系統(tǒng)仍然是從SSD的內(nèi)部結(jié)構(gòu)出發(fā)的。

本文在分析了應(yīng)用層以及通用塊層請求塊大小統(tǒng)計規(guī)律的基礎(chǔ)上,面向數(shù)據(jù)的重尾分布特性,以NOOP算法為基礎(chǔ)設(shè)計并實現(xiàn)適用于固態(tài)硬盤的HTIOS(Heavy-Tailed distributions IO Scheduler)調(diào)度算法。該算法將優(yōu)先響應(yīng)讀請求和小片寫請求,對大塊寫請求依據(jù)大小排序處理,減少存儲系統(tǒng)的平均IO響應(yīng)時間。第2節(jié)概述HTIOS算法的設(shè)計基礎(chǔ),第3節(jié)算法實現(xiàn),第4節(jié)給出了實驗驗證。

2算法設(shè)計依據(jù)

2.1數(shù)據(jù)的重尾分布規(guī)律

重尾分布被證明是復(fù)雜系統(tǒng)中普遍存在的、本質(zhì)的而且不可消除的特性[7]。文獻(xiàn)[8]證明了UNIX文件系統(tǒng)中的文件長度具有重尾分布特性。文獻(xiàn)[9]以香農(nóng)信息理論為基礎(chǔ)證明了網(wǎng)絡(luò)文件長度呈重尾態(tài)分布。大量文獻(xiàn)已經(jīng)證明,在網(wǎng)絡(luò)空間存在的海量數(shù)據(jù)是呈重尾態(tài)分布的。而重尾態(tài)分布具有以下分布規(guī)律:(1)樣本空間中大量的小抽樣觀察值和少量的大抽樣觀察值并存;(2)大抽樣值決定抽樣的均值和方差;(3)重尾分布表現(xiàn)出強(qiáng)烈的局部突發(fā)性[1]。

網(wǎng)絡(luò)空間的數(shù)據(jù)分布規(guī)律縮放到單個的Web服務(wù)器數(shù)據(jù)仍然是成立的[8]。由于應(yīng)用的特殊性,Web服務(wù)器存在大量的HTML文件、圖片和少量的動畫,這樣客觀形成一個重尾場景。我們研究國內(nèi)主要媒體及電商的Web服務(wù)器均可以得到類似的分布規(guī)律。例如天貓網(wǎng)的Web服務(wù)器數(shù)據(jù)分布圖1所示。

Figure 1 Length distribution of Tmall Web files 圖1 天貓網(wǎng)Web服務(wù)器文件長度分布

這就表明這種重尾數(shù)據(jù)應(yīng)用場景確實存在,而針對這種應(yīng)用場景優(yōu)化系統(tǒng)軟件也是有必要的。

2.2操作系統(tǒng)IO層次

Linux操作系統(tǒng)的IO層次可以概括為如圖2所示的結(jié)構(gòu)。文件系統(tǒng)層在文件級別實現(xiàn)對數(shù)據(jù)的管理,而文件又被組織為不同粒度的邏輯塊。如ext4文件系統(tǒng)的邏輯塊大小為4 KB。IO請求經(jīng)過文件系統(tǒng)層被均勻切分為4 KB粒度的塊請求。由于小文件通常在 KB級別,大量小文件在10 KB以下。所以,對小文件的IO請求在通用塊層被合并的概率很小。而大文件通常在MB級別,大的視頻文件可以在GB級別。所以,對大文件的IO請求在通用塊層很容易被相鄰合并成大塊的數(shù)據(jù)請求。

Figure 2 Linux system’s IO hiberarchy 圖2 Linux系統(tǒng)IO層次

我們將從電商網(wǎng)站下載獲得的數(shù)據(jù)作為樣本空間,將樣本空間置于SSD上并做隨機(jī)IO。測試用固態(tài)硬盤為Kingston SVP200S37A/120 GB。得到的通用塊層的(塊請求)request大小分布圖如圖3所示。

Figure 3 Size of generic block layer request distribution 圖3 通用塊層request大小分布

由此實驗知,經(jīng)過文件系統(tǒng)對應(yīng)用層IO請求的4 KB粒度均勻化,以及通用塊層的相鄰合并后,request大小依然表現(xiàn)出應(yīng)用層的數(shù)據(jù)重尾分布特性。因此,在IO調(diào)度層對IO請求做出優(yōu)化是合理的。

2.3request塊大小與響應(yīng)時間關(guān)系

在上述實驗環(huán)境下,對樣本空間做隨機(jī)讀寫。并對request延遲進(jìn)行統(tǒng)計,放大10倍后的結(jié)果如圖4所示。

Figure 4 Relationship between request delay and size 圖4 request延遲及大小分布關(guān)系

圖4測試結(jié)果表明,請求大小和請求延遲有著非常緊密的統(tǒng)計關(guān)系。絕大多數(shù)的小片數(shù)據(jù)請求響應(yīng)延遲很短。對圖4再做5倍放大,結(jié)果如圖5所示。圖5中1 320~1 360中間有大量的小片request請求被大塊request阻塞延遲,并與隨后的大塊request請求造成更大的擁塞波峰。進(jìn)一步針對SSD的讀實驗結(jié)果如圖6所示。結(jié)果顯示,讀請求延遲的變化不大。

Figure 5 5 times enlarged Figure 4 圖5 5倍放大圖4

Figure 6 Delay of read request 圖6 讀請求延遲

以上實驗表明,重尾數(shù)據(jù)下突發(fā)性的大塊數(shù)據(jù)寫請求會造成SSD響應(yīng)延遲陡然增大,極易出現(xiàn)局部性能崩塌。因此,調(diào)度算法中應(yīng)該針對這一特征進(jìn)行優(yōu)化。

3HTIOS調(diào)度算法

基于第2節(jié)的分析,本文在HTIOS調(diào)度算法中針對重尾數(shù)據(jù)分布下突發(fā)性的大塊寫請求予以優(yōu)化。

3.1排序優(yōu)化

不同大小的請求按不同順序處理,其平均響應(yīng)延遲差距巨大。圖7模擬請求先后順序不同造成的延遲差異。

Figure 7 Sort optimization 圖7 排序優(yōu)化效果

令大塊數(shù)據(jù)請求延遲為t,而小片數(shù)據(jù)請求延遲為r,則不難計算出前者的平均延遲為(4t+6r)/4,而后者為(t+9r)/4。當(dāng)t遠(yuǎn)大于r的時候,排序優(yōu)化效果就會非常明顯。

由第2節(jié)實驗知,讀請求和小片寫請求延遲都很小,HTIOS算法中將這兩類請求優(yōu)先派發(fā)。重尾數(shù)據(jù)分布下的突發(fā)性大塊數(shù)據(jù)請求,其響應(yīng)延遲陡然增加。所以,針對大塊的寫請求在HTIOS中依據(jù)大小排序,并依序派發(fā)。

為避免大塊寫請求過度饑餓,本文借鑒Deadline算法,加入饑餓閾值。當(dāng)大塊寫請求被饑餓次數(shù)到達(dá)閾值時,泄流大塊寫請求。基于請求大小的排序隊列優(yōu)先處理小請求,而如果不斷有小請求加入,大塊請求會長時間得不到響應(yīng),甚至餓死。本文借鑒Deadline算法引入超時時間,為寫請求加入時間戳。HTIOS調(diào)度算法檢測并派發(fā)超時請求,保證不會有請求被餓死。

3.2算法實現(xiàn)

HTIOS調(diào)度算法流程如圖8所示。如果有超時請求,調(diào)度器直接將超時請求派發(fā)出去;沒有超時請求時,優(yōu)先派發(fā)讀請求或小片寫請求。只有當(dāng)大塊寫請求饑餓或者沒有高優(yōu)先級請求時,調(diào)度器才派發(fā)大塊寫請求。

Figure 8 Flowchart of HTIOS 圖8 HTIOS算法流程圖

4性能測評

測試環(huán)境為:Linux 2.6.32內(nèi)核,Sparc處理器,4 GB內(nèi)存,固態(tài)硬盤為Kingston SVP200S37A/ 120 GB。實驗中的負(fù)載為每個進(jìn)程400次的隨機(jī)IO操作,實驗設(shè)計并發(fā)量分別為20、40、60。

內(nèi)核中四種調(diào)度器,只有NOOP調(diào)度器是為隨機(jī)存儲設(shè)備設(shè)計的。NOOP與其他三種調(diào)度器的平均延遲對比如圖9所示,可見NOOP存在一定優(yōu)勢。

Figure 9 Performance comparison of kernel IO algorithm 圖9 內(nèi)核IO調(diào)度算法性能對比

如圖10所示為HTIOS調(diào)度算法相比NOOP的優(yōu)化效果。

Figure 10 Performance comparison between HTIOS and NOOP 圖10 HTIOS與NOOP性能對比

三種并發(fā)量下HTIOS調(diào)度算法比NOOP算法的優(yōu)化比分別為9%、17%和15%。在低并發(fā)量時,調(diào)度隊列相對較空閑,所以大塊請求對小片請求的遲滯作用較小。在較高并發(fā)環(huán)境下調(diào)度隊列相對繁忙,故而大塊數(shù)據(jù)請求極易阻塞后續(xù)小片數(shù)據(jù)請求。所以,并發(fā)量為20時的優(yōu)化比,較之并發(fā)量為40時的優(yōu)化比略小。過度擁擠的調(diào)度隊列,空間被大多數(shù)小請求占據(jù),大塊請求無論何時發(fā)生都會擁塞后面小請求。故而優(yōu)化效果隨著并發(fā)量的逐漸增加呈減小趨勢。實驗結(jié)果中,并發(fā)量增加到60后優(yōu)化比有所下降。

5結(jié)束語

固態(tài)硬盤提高了存儲系統(tǒng)的性能,打破了機(jī)械硬盤的物理屏障。重尾態(tài)數(shù)據(jù)的突發(fā)性大塊寫請求,極易造成其后的小片數(shù)據(jù)請求被長時間遲滯。本文針對數(shù)據(jù)的重尾分布特性,設(shè)計并實現(xiàn)了HTIOS

調(diào)度算法。不同并發(fā)量的負(fù)載測試表明,HTIOS調(diào)度算法可以有效地減小固態(tài)硬盤在重尾態(tài)數(shù)據(jù)下的平均響應(yīng)時間,因此,有效地改善了重尾數(shù)據(jù)下固態(tài)硬盤存儲系統(tǒng)的IO性能。

參考文獻(xiàn):

[1]Crovella M E,Taqqu M S,Bestavros A. Heavy-tailed probability distributions in the World Wide Web[M]//A Practical Guide to Heavy Tails:Statistical Technique and Applications,1998:3-25.

[2]Crovella M E. Self-similarity in World Wide Web traffic:Evidence and possible causes[C]//Proc of IEEE/ACM Transactions on Networking,1997:835-846.

[3]Kang J U,Kim J S,Park C,et al. A multi-channel architecture for high-performance NAND flash-based storage system[J]. Journal of Systems Architecture,2007,53:644-658.

[4]Love R. Linux kernel development [M]. Beijing:China Machine Press,2013.

[5]Park S,Shen Kai. FIOS:A fair,efficient flash I/O scheduler[C]//Proc of the 10th VSENIX Conference on File and Starage Technologies,2012:1-15.

[6]Kang S,Park H,Yoo C. Performance enhancement of I/O scheduler for solid state devices[C]//Proc of IEEE International Conference on Consumer Electronics,2011:31-32.

[7]Shao Li-song.Research on Internet end-to-end congestion control algorithms[D].Changsha:National University of Defense Technilogy,2006.(in Chinese)

[8]Kihong P,Kim G,Crovella M. On the relationship between file sizes,transport protocols,and self-similar network traffic[C]//Proc of the 1996 International Conference on Network Protocols,1996:171-180.

[9]Fabrikant A,Koutsoupias E,Papadimitriou C H.Heuristically optimized trade-offs:A new paradigm for power-laws in the Internet[C]//Proc of Internet Colloqium on Automata,Languages,and Programming(ICALP),2002:110-122.

[10]Park S,Kim Y,Urgaonkar B,et al. A comprehensive study of energy efficiency and performance of flash-based SSD [J]. Journal of Systems Architecture,2011,57:354-365.

參考文獻(xiàn):附中文

[7]邵立松. 互聯(lián)網(wǎng)端到端擁塞控制算法研究[D].長沙:國防科學(xué)技術(shù)大學(xué),2006.

魏元豪(1986-),男,河南鶴壁人,碩士生,研究方向為固態(tài)硬盤性能優(yōu)化。E-mail:weiyuanhao@126.com

WEI Yuan-hao,born in 1986,MS candidate,his research interest includes performance optimization of solid state drive.

主站蜘蛛池模板: www.亚洲一区| 91无码网站| 中文字幕 91| 亚洲伊人久久精品影院| 国产成人综合日韩精品无码不卡| 黄片在线永久| 91日本在线观看亚洲精品| 欧美在线伊人| 欧美亚洲日韩不卡在线在线观看| 久久久受www免费人成| 亚洲欧洲日韩综合色天使| 国产成人一二三| 久久黄色视频影| 亚洲无码精彩视频在线观看| 人妻中文久热无码丝袜| 国产黄色爱视频| 欧美啪啪视频免码| 女人18毛片一级毛片在线| 国产日韩欧美一区二区三区在线| 欧美福利在线| 国产香蕉一区二区在线网站| 亚洲九九视频| 高清色本在线www| 国产一级精品毛片基地| 久久香蕉欧美精品| 欧美午夜精品| 久久精品无码专区免费| 亚洲中久无码永久在线观看软件| 久久久久久久蜜桃| 漂亮人妻被中出中文字幕久久| 国产爽爽视频| a级毛片免费网站| 麻豆精品在线播放| 99人妻碰碰碰久久久久禁片| 国产乱子伦一区二区=| 狼友视频国产精品首页| 日韩免费中文字幕| 欧美一级片在线| 中文字幕 91| 国模极品一区二区三区| 丁香六月激情综合| 国产免费怡红院视频| 亚洲欧洲自拍拍偷午夜色无码| 亚洲色偷偷偷鲁综合| 国产好痛疼轻点好爽的视频| 亚洲国产综合自在线另类| 亚洲成人手机在线| 欧美日韩国产综合视频在线观看| 亚洲国产日韩一区| 最新无码专区超级碰碰碰| 国产精品亚洲欧美日韩久久| 国产成人亚洲日韩欧美电影| 国产综合精品日本亚洲777| 中文字幕av一区二区三区欲色| 色亚洲激情综合精品无码视频| 久久精品免费国产大片| 久久久精品国产SM调教网站| 国产91精品久久| 欧美性精品不卡在线观看| 国产乱人伦偷精品视频AAA| 精品成人一区二区| 在线看免费无码av天堂的| 好吊妞欧美视频免费| 亚洲成网777777国产精品| 国产SUV精品一区二区| 老色鬼久久亚洲AV综合| 亚洲视频免| 国产男女免费视频| 亚洲视频在线网| 亚洲—日韩aV在线| 婷婷六月综合网| 一级毛片在线播放| 欧美日韩高清| 熟妇无码人妻| 国产正在播放| 欧美精品二区| 九月婷婷亚洲综合在线| 色综合a怡红院怡红院首页| 亚洲成人网在线观看| 无码一区18禁| 国产精品视频猛进猛出| 亚洲欧美不卡|