提供了基于IO延遲時間分布優(yōu)化中斷處理任務(wù)的方法。計算機(jī)系統(tǒng)包括第一處理單元和第二處理單元,所述計算機(jī)系統(tǒng)同存儲設(shè)備相耦合;所述方法包括:接收用于訪問所述存儲設(shè)備的第一IO請求;記錄所述第一IO請求的開始時間;響應(yīng)于接收到來自所述存儲設(shè)備的指示所述第一IO請求處理完成的中斷請求,記錄所述第一IO請求的結(jié)束時間;計算所述第一IO請求的結(jié)束時間與所述第一IO請求的開始時間的第一時間差;計算一預(yù)定時間期間內(nèi)所述第一時間差的分布;以及基于所述第一時間差的分布,優(yōu)化與所述存儲設(shè)備的IO請求相關(guān)聯(lián)的中斷處理任務(wù)的執(zhí)行。
【技術(shù)實(shí)現(xiàn)步驟摘要】
本專利技術(shù)涉及固態(tài)存儲設(shè)備(Solid Storage Device, SSD),更具體地,本專利技術(shù)涉及存儲設(shè)備向主機(jī)發(fā)出的中斷。
技術(shù)介紹
同機(jī)械式硬盤相類似,固態(tài)存儲設(shè)備(SSD)也是用于計算機(jī)系統(tǒng)的大容量、非易失性存儲設(shè)備。固態(tài)存儲設(shè)備一般以閃存(Flash)作為存儲介質(zhì)。高性能的固態(tài)存儲設(shè)備被用于高性能計算機(jī)。高性能計算機(jī)通常具有多個中央處理器(CPU, Centrol Process Unit),而每個CPU可包括多個CPU核。在現(xiàn)代操作系統(tǒng)中,幾乎每一個中斷處理操作都被分成了兩部分,即中斷服務(wù)程序(ISR)和下半部分處理程序(Bottom Half Handler);或者說中斷處理的上半部分(Top Half)和下半部分(Bottom Half);在一些場合中,也被稱為第一級中斷處理程序(FLIH, First-Level Interrupt Handler)和第二級中斷處理程序(SLIH, Second-LevelInterrupt Handlers)。兩者之間的區(qū)別是在中斷處理的上半部分,中斷是被禁止的,精確地說是至少有一個中斷(當(dāng)前中斷)在一個CPU上(當(dāng)前CPU)是被禁止的,在某些情況下,可能當(dāng)前CPU的全部中斷都被禁止;而在中斷處理的下半部分,系統(tǒng)中的中斷都是允許的,新的中斷可以隨時搶占下半部分處理程序。通過將中斷處理劃分為兩部分,并且讓上半部分處理函數(shù)只做最少最快的工作一例如將數(shù)據(jù)從設(shè)備緩沖區(qū)拷貝到內(nèi)存,而將后續(xù)的更耗時間的工作留給下半部分處理程序去執(zhí)行,有效地減少了中斷阻塞的時間,從而提高了系統(tǒng)的中斷處理效率。在美國專利申請US2011/0087814A1中,提供了通過中斷親和性機(jī)制來增強(qiáng)多處理器系統(tǒng)中的10 (Input Output)性能的方案。參看圖I,主機(jī)100包括CPU 101、102、103和104,應(yīng)用程序111、112、113和114分別運(yùn)行在各自的CPU上。高速緩存121、122、123和124分別同CPU 101、102、103和104相耦合,用于存儲分別用于應(yīng)用程序111、112、113和114的指令和數(shù)據(jù)。而具有較大容量的存儲器131、132、133和134分別耦合到高速緩存121、122、123 和 124。主機(jī)總線適配器(HBA, Host Bus Adapter)150 通過 10 APICCAdvancedProgrammable Interr upt Controller,高級可編程中斷控制器)集線器140稱合到主機(jī)100,并配置為同存儲域網(wǎng)絡(luò)(SAN, Storage Area, Network) 160通信。SAN 160連接到多個諸如硬盤的計算機(jī)存儲設(shè)備170。中斷親和性機(jī)制意味著,當(dāng)1/0 APIC集線器140接收到來自HBA 150的中斷時,確定由主機(jī)100的多個CPU中的哪一個來處理中斷。例如,記錄發(fā)出10請求的CPU標(biāo)識符,當(dāng)接收到對應(yīng)于該10請求的中斷時,基于記錄的CPU標(biāo)識符來選擇處理中斷的CPU。一些計算機(jī)具有 NUMA (Non-Uniform Memory Access)或 NUIO (Non-UniformInput Output)結(jié)構(gòu)。在美國專利申請US2005/0060460A1中提供了在NUMA系統(tǒng)中為多個節(jié)點(diǎn)中的10設(shè)備指派中斷的方案。參看圖2,NUMA系統(tǒng)200包括通過互連網(wǎng)絡(luò)彼此耦合的節(jié)點(diǎn)201、211、221和231。每個節(jié)點(diǎn)201、211、221和231可包括處理器和存儲器。給定節(jié)點(diǎn)的存儲器相對于該節(jié)點(diǎn)的處理器是本地的,而其他節(jié)點(diǎn)的存儲器相對于該處理器是遠(yuǎn)程的。系統(tǒng)200包括IO設(shè)備202、212和242,以及用于IO設(shè)備202、212和242的中斷服務(wù)例程(ISR, Interrupt Service Routine) 203、213 和 223。系統(tǒng) 200 還包括中斷分配軟件222,用于將中斷服務(wù)例程203、213和223分配給IO設(shè)備202、212和242。中斷服務(wù)例程的分配可基于下列因素設(shè)備所連接的節(jié)點(diǎn),用于設(shè)備的ISR所位于的節(jié)點(diǎn),以及節(jié)點(diǎn)的處理器。在 www. acpi. info/D0ffNL0ADS/ACPIspec50. pdf 可獲得的 “Advanced Configurationand Power Interface Specification”(2011 年 12 月 6 日)提供了獲取 NUMA 系統(tǒng)的各個NUMA域信息。然而,高性能固態(tài)存儲設(shè)備的10處理能力顯著提高,10請求的數(shù)量和數(shù)據(jù)量的增力口,給CPU的處理造成了負(fù)擔(dān)。因而,需要進(jìn)一步優(yōu)化對中斷請求的處理。
技術(shù)實(shí)現(xiàn)思路
根據(jù)本專利技術(shù)的第一方面,提供了一種用于處理計算機(jī)系統(tǒng)中的存儲設(shè)備的中斷請 求的方法,所述計算機(jī)系統(tǒng)包括多個處理單元,所述存儲設(shè)備通過PCIE總線耦合到所述多個處理單元中的一個,所述方法包括獲取所述存儲設(shè)備的標(biāo)識符;依據(jù)所述存儲設(shè)備的標(biāo)識符,確定所述存儲設(shè)備所耦合的第一處理單元;將與所述存儲設(shè)備相關(guān)聯(lián)的中斷處理任務(wù)的上半部分設(shè)置為在所述第一處理單元上執(zhí)行;將所述中斷處理任務(wù)的下半部分設(shè)置為在第二處理單元上執(zhí)行;其中所述第一處理單元與所述第二處理單元共享高速緩沖存儲器。根據(jù)本專利技術(shù)的第二方面,提供了一種用于處理計算機(jī)系統(tǒng)中的存儲設(shè)備的中斷請求的方法,所述計算機(jī)系統(tǒng)包括多個處理器插槽,每個處理器插槽上布置有多核處理器,所述多核處理器具有多個處理器核,所述存儲設(shè)備通過PCIE總線耦合到所述多個處理器插槽中的一個,所述方法包括獲取所述存儲設(shè)備的標(biāo)識符;依據(jù)所述存儲設(shè)備的標(biāo)識符,確定所述存儲設(shè)備所耦合的第一處理器插槽;將與所述存儲設(shè)備相關(guān)聯(lián)的中斷處理任務(wù)的上半部分設(shè)置為在布置于所述第一處理器插槽上的多核處理器的第一處理器核上執(zhí)行;將所述中斷處理任務(wù)的下半部分設(shè)置為在布置于所述第一處理器插槽上的多核處理器的第二處理器核上執(zhí)行;其中所述第一處理器核與所述第二處理器核共享高速緩沖存儲器。根據(jù)本專利技術(shù)的第二方面提供的方法,進(jìn)一步包括,顯示所述存儲設(shè)備與所述第一處理器插槽和/或所述第一處理器核的耦合關(guān)系。根據(jù)本專利技術(shù)的第一方面或第二方面提供的方法,進(jìn)一步包括,顯示所述存儲設(shè)備與所述第一處理單元的耦合關(guān)系。根據(jù)本專利技術(shù)的第二方面所提供的方法,還包括將訪問所述存儲設(shè)備的應(yīng)用程序設(shè)置為在布置于所述第一處理器插槽上的多核處理器的第三處理器核上執(zhí)行,所述第一處理器核、所述第二處理器核以及所述第三處理器核共享高速緩沖存儲器。根據(jù)本專利技術(shù)的第一方面或第二方面提供的方法,還包括獲取并顯示所述PCIE總線的通道(Lane)數(shù)量。根據(jù)本專利技術(shù)的第一方面或第二方面提供的方法,還包括獲取并顯示所述存儲設(shè)備的具有第一延遲時間的IO訪問的數(shù)量,以及所述存儲設(shè)備的具有第二延遲時間的IO訪問的數(shù)量,所述第一延遲時間不同于所述第二延遲時間。根據(jù)本專利技術(shù)的第一方面或第二方面提供的方法,還包括獲取并顯示所述存儲設(shè)備的具有第一延遲時間范圍的IO訪問的數(shù)量,以及所述存儲設(shè)備的具有第二延遲時間范圍的IO訪問的數(shù)量,所述第一延遲時間范圍不同于所述第二延遲時間范圍。根據(jù)本專利技術(shù)的第一方面提供的方法,將訪問所述存儲設(shè)備的應(yīng)用程序設(shè)置為在第二處理器上執(zhí)行。根據(jù)本專利技術(shù)的第一方面提供的本文檔來自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
一種用于處理計算機(jī)系統(tǒng)中的存儲設(shè)備的中斷請求的方法,所述計算機(jī)系統(tǒng)包括第一處理單元和第二處理單元,所述計算機(jī)系統(tǒng)同存儲設(shè)備相耦合;所述方法包括:接收用于訪問所述存儲設(shè)備的第一IO請求;記錄所述第一IO請求的開始時間;響應(yīng)于接收到來自所述存儲設(shè)備的指示所述第一IO請求處理完成的中斷請求,記錄所述第一IO請求的結(jié)束時間;計算所述第一IO請求的結(jié)束時間與所述第一IO請求的開始時間的第一時間差;計算一預(yù)定時間期間內(nèi)所述第一時間差的分布;以及基于所述第一時間差的分布,優(yōu)化與所述存儲設(shè)備的IO請求相關(guān)聯(lián)的中斷處理任務(wù)的執(zhí)行。
【技術(shù)特征摘要】
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:唐志波,路向峰,
申請(專利權(quán))人:北京憶恒創(chuàng)源科技有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。