[發(fā)明專利]一種虛擬化IO性能優(yōu)化方法及系統(tǒng)有效
| 申請?zhí)枺?/td> | 201610659376.2 | 申請日: | 2016-08-11 |
| 公開(公告)號: | CN106325974B | 公開(公告)日: | 2020-02-07 |
| 發(fā)明(設(shè)計(jì))人: | 楊敏;劉相樂 | 申請(專利權(quán))人: | 浪潮(北京)電子信息產(chǎn)業(yè)有限公司 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455;G06F9/48 |
| 代理公司: | 11227 北京集佳知識產(chǎn)權(quán)代理有限公司 | 代理人: | 羅滿 |
| 地址: | 100085 北京市海*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 目標(biāo)隊(duì)列 請求封裝 計(jì)算資源 系統(tǒng)整體 響應(yīng)延遲 性能優(yōu)化 一次處理 客戶機(jī) 宿主機(jī) 虛擬化 閾值時(shí) 保存 檢測 | ||
本發(fā)明公開了一種基于virtio_blk的虛擬化IO性能優(yōu)化方法及系統(tǒng),包括:接收到bio請求時(shí),通過BASE_BIO模塊將bio請求存入目標(biāo)隊(duì)列;當(dāng)目標(biāo)隊(duì)列保存的bio請求數(shù)目大于預(yù)定閾值時(shí),檢測目標(biāo)隊(duì)列保存的bio請求是否存在相鄰請求;若存在,則將相鄰請求封裝為virtblk_requet,并執(zhí)行kick操作;若不存在,則將每個(gè)bio請求封裝為對應(yīng)的virtblk_request,并執(zhí)行kick操作;可見,在執(zhí)行kick操作時(shí),讓qemu一次處理多個(gè)bio請求,減少了kick執(zhí)行的次數(shù),將更多的計(jì)算資源用于IO的處理,大大降低了客戶機(jī)到宿主機(jī)的IO響應(yīng)延遲,提高了系統(tǒng)整體的IOPS性能。
技術(shù)領(lǐng)域
本發(fā)明涉及虛擬化技術(shù)領(lǐng)域,更具體地說,涉及一種基于virtio_blk的虛擬化IO性能優(yōu)化方法及系統(tǒng)。
背景技術(shù)
隨著互聯(lián)網(wǎng)時(shí)代信息、數(shù)據(jù)爆炸式增長,也帶動了存儲市場需求的不斷增長和變化。為了更好的滿足不同客戶的需求(如同時(shí)提供nas和san服務(wù)),統(tǒng)一存儲的概念也應(yīng)運(yùn)而生,基于虛擬化平臺實(shí)現(xiàn)統(tǒng)一存儲也成為主流技術(shù)之一。虛擬化平臺主要包括CPU虛擬化、內(nèi)存虛擬化以及IO虛擬化。其中CPU虛擬化、內(nèi)存虛擬化技術(shù)已經(jīng)可以通過硬件的方式去實(shí)現(xiàn),實(shí)現(xiàn)技術(shù)已經(jīng)很成熟。因此,IO虛擬化成為虛擬機(jī)IO性能最核心的技術(shù),virtio應(yīng)運(yùn)而生。virtio一套是基于半虛擬化平臺的IO虛擬化框架,該框架支持各種設(shè)備,如網(wǎng)絡(luò)設(shè)備、SCSI設(shè)備,而virtio_blk就是用來提供塊設(shè)備服務(wù)的。
因此,如何基于virtio_blk提高虛擬化IO性能,是本領(lǐng)域技術(shù)人員需要解決的問題。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于virtio_blk的虛擬化IO性能優(yōu)化方法及系統(tǒng),以實(shí)現(xiàn)提高IO性能。
為實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例提供了如下技術(shù)方案:
一種基于virtio_blk的虛擬化IO性能優(yōu)化方法,包括:
接收到bio請求時(shí),通過BASE_BIO模塊將bio請求存入目標(biāo)隊(duì)列;
當(dāng)所述目標(biāo)隊(duì)列保存的bio請求數(shù)目大于預(yù)定閾值時(shí),檢測所述目標(biāo)隊(duì)列保存的bio請求是否存在相鄰請求;
若存在,則將相鄰請求封裝為virtblk_requet,并執(zhí)行kick操作;若不存在,則將每個(gè)bio請求封裝為對應(yīng)的virtblk_request,并執(zhí)行kick操作。
其中,檢測到所述目標(biāo)隊(duì)列保存的bio請求存在相鄰請求之后,還包括:
按照預(yù)定規(guī)則,將相鄰請求動態(tài)移動到所述目標(biāo)隊(duì)列的前端。
其中,所述按照預(yù)定規(guī)則,將相鄰請求動態(tài)移動到所述目標(biāo)隊(duì)列的前端,包括:
根據(jù)檢測到的每個(gè)相鄰請求的請求數(shù)目,設(shè)定每個(gè)相鄰請求的優(yōu)先級,并根據(jù)每個(gè)相鄰請求的優(yōu)先級,動態(tài)調(diào)整每個(gè)相鄰請求在所述目標(biāo)隊(duì)列的保存位置。
其中,檢測到所述目標(biāo)隊(duì)列保存的bio請求不存在相鄰請求之后,還包括:
設(shè)置與每個(gè)bio請求對應(yīng)的計(jì)時(shí)器;
若檢測到計(jì)時(shí)器超時(shí),則將與超時(shí)的計(jì)數(shù)器對應(yīng)的bio請求的處理優(yōu)先級設(shè)置為最高。
其中,所述檢測所述目標(biāo)隊(duì)列保存的bio請求是否存在相鄰請求,包括:
檢測所述目標(biāo)隊(duì)列保存的bio請求是否存在位于同一扇區(qū)、同一磁道、同一柱面或者同一磁盤中的一者的bio請求;
若存在,則將位于同一扇區(qū)、同一磁道、同一柱面或者同一磁盤中的bio請求作為一組相鄰請求。
一種基于virtio_blk的虛擬化IO性能優(yōu)化系統(tǒng),包括:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于浪潮(北京)電子信息產(chǎn)業(yè)有限公司,未經(jīng)浪潮(北京)電子信息產(chǎn)業(yè)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610659376.2/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 隊(duì)列請求處理方法和裝置
- 隊(duì)列調(diào)度方法及裝置
- 一種隊(duì)列清空方法以及相關(guān)設(shè)備
- 一種數(shù)據(jù)處理方法、裝置及計(jì)算機(jī)可讀存儲介質(zhì)
- 一種接口擁塞時(shí)延的計(jì)算方法及裝置
- 任務(wù)處理方法、裝置、系統(tǒng)、服務(wù)器及存儲介質(zhì)
- 一種報(bào)文調(diào)度方法及裝置
- 數(shù)據(jù)發(fā)送方法、裝置、設(shè)備和介質(zhì)
- 一種數(shù)據(jù)聚合方法、裝置和計(jì)算機(jī)可讀存儲介質(zhì)
- 一種映射連接的交互方法以及裝置
- 計(jì)算資源控制設(shè)備和計(jì)算資源控制方法
- 一種適用于平衡云平臺計(jì)算資源的方法
- 一種大規(guī)模計(jì)算集群的動態(tài)資源調(diào)度方法
- 一種計(jì)算資源智能分配方法及系統(tǒng)
- 基于雙體系架構(gòu)的可信計(jì)算平臺的靜態(tài)度量方法和裝置
- 一種資源處理方法及裝置
- 一種數(shù)據(jù)處理方法、裝置以及計(jì)算機(jī)可讀存儲介質(zhì)
- 一種云平臺計(jì)算資源調(diào)度方法及系統(tǒng)
- 并行處理的方法、系統(tǒng)、電子裝置和存儲介質(zhì)
- 一種基于資源標(biāo)簽的計(jì)算資源調(diào)度方法





