版權(quán)歸原作者所有,如有侵權(quán),請(qǐng)聯(lián)系我們

[科普中國(guó)]-I/O加速技術(shù)

科學(xué)百科
原創(chuàng)
科學(xué)百科為用戶提供權(quán)威科普內(nèi)容,打造知識(shí)科普陣地
收藏

I/O加速技術(shù)是能夠提高數(shù)據(jù)的傳輸和處理能力的一款技術(shù),具有可操作性、可升級(jí)性。

簡(jiǎn)介I/O加速技術(shù)(英語(yǔ):I/O Acceleration Technology,縮寫(xiě)I/OAT)是英特爾在高端服務(wù)器主板上搭售的一個(gè)DMA引擎(嵌入式DMA控制器),憑借執(zhí)行直接存儲(chǔ)器訪問(wèn)(DMA)來(lái)卸載主處理器的內(nèi)存復(fù)制工作。它通常用于加速網(wǎng)絡(luò)流量的傳輸,但也支持任何類型的復(fù)制。

Microsoft Windows自面向Windows Server 2003SP1的可擴(kuò)展網(wǎng)絡(luò)包開(kāi)始支持使用I/OAT加速網(wǎng)絡(luò)。Linux內(nèi)核則是自2006年開(kāi)始使用,但此特性據(jù)稱由于缺乏性能優(yōu)勢(shì)和造成數(shù)據(jù)損壞的可能性,在之后被禁用。1

產(chǎn)生背景基于目前的商務(wù)信息化實(shí)際,近年來(lái)各國(guó)企業(yè)紛紛加大了對(duì)網(wǎng)絡(luò)和存儲(chǔ)基礎(chǔ)設(shè)施的投資。但不少CIO發(fā)現(xiàn):即使網(wǎng)絡(luò)帶寬投資提高了10倍,其應(yīng)用響應(yīng)速度和可靠性仍舊沒(méi)有明顯改善。網(wǎng)絡(luò)流量需求仍超過(guò)網(wǎng)絡(luò)服務(wù)器的支持能力,其中,成為制約系統(tǒng)性能的。在這樣的背景下,一款集成的平臺(tái)I/O解決方案——英特爾?I/O加速技術(shù)(英特爾?I/O Acceleration Technology)應(yīng)運(yùn)而生,它較好地幫助企業(yè)解決了這一系統(tǒng)性能問(wèn)題,不僅加快了數(shù)據(jù)傳輸速度,同時(shí)也提高了系統(tǒng)效率及可靠性。2

技術(shù)特點(diǎn)提高的DMA引擎,更快的數(shù)據(jù)傳輸,多達(dá)2倍多的數(shù)據(jù)吞吐,優(yōu)化的TCP堆棧,減少40%的CPU開(kāi)支,加速應(yīng)用反應(yīng),平臺(tái)層面的加速,可以無(wú)縫隙的升級(jí)到8千兆以太網(wǎng)端口,隨著CPU的改進(jìn),I/O的可操作性隨著上升,用可信賴的Windows和Linux TCP/IP堆棧,對(duì)IT來(lái)說(shuō)意味著更少的風(fēng)險(xiǎn),保持現(xiàn)有的LAN特征,如VLANs和teaming,具有標(biāo)準(zhǔn)特征的英特爾以太網(wǎng)適配器,在主板和網(wǎng)絡(luò)適配器方面不用增加任何額外的費(fèi)用。

英特爾I/O加速技術(shù)的表現(xiàn)為:可操作性、可升級(jí)性和可靠性。

首先是可操作性——I/O加速技術(shù)有利于減少CPU的資源浪費(fèi),使系統(tǒng)在處理多種緊急任務(wù)時(shí)可以獲得更多的資源。該技術(shù)主要通過(guò)優(yōu)化CPU、芯片組、網(wǎng)絡(luò)控制器和軟件的運(yùn)行效能來(lái)縮小操作性能方面的瓶徑。演示表明,英特爾?I/O加速技術(shù)能有效加快TCP/IP的處理,提高服務(wù)器平臺(tái)上加速數(shù)據(jù)的傳遞效率,減少系統(tǒng)的響應(yīng)時(shí)間。

其二是可升級(jí)性——英特爾I/O加速技術(shù)提供的網(wǎng)絡(luò)加速功能可在千兆以太網(wǎng)端口上進(jìn)行無(wú)縫升級(jí)。利用一個(gè)標(biāo)準(zhǔn)千兆網(wǎng)絡(luò)適配器的電和熱特性,它可以很節(jié)省成本地升級(jí)到8千兆和萬(wàn)兆以太網(wǎng)端口。

其三是可靠性——英特爾I/O加速技術(shù)是一個(gè)安全和靈活的選擇,因?yàn)樗痪o密嵌入目前主流的操作系統(tǒng)上,如微軟的Windows Server* 2003和Linux*。相對(duì)于依靠第三方硬件供應(yīng)商所做的網(wǎng)絡(luò)堆棧更新,這種內(nèi)嵌方式可以避免支持相關(guān)的風(fēng)險(xiǎn)。

據(jù)了解,2006年,隨著英特爾服務(wù)器平臺(tái)Bensley和全新雙核英特爾至強(qiáng)處理器系列新品的正式發(fā)布,I/O加速技術(shù)作為一款系統(tǒng)級(jí)解決方案和一項(xiàng)全新能力,已被集成到新一代服務(wù)器平臺(tái)中去。2

DMA引擎直接內(nèi)存訪問(wèn)DirectMemoryAccess,DMA)是計(jì)算機(jī)科學(xué)中的一種內(nèi)存訪問(wèn)技術(shù)。它允許某些電腦內(nèi)部的硬件子系統(tǒng)(電腦外設(shè)),可以獨(dú)立地直接讀寫(xiě)系統(tǒng)內(nèi)存,而不需中央處理器(CPU)介入處理 。在同等程度的處理器負(fù)擔(dān)下,DMA是一種快速的數(shù)據(jù)傳送方式。很多硬件的系統(tǒng)會(huì)使用DMA,包含硬盤(pán)控制器、繪圖顯卡、網(wǎng)卡和聲卡。

DMA是所有現(xiàn)代電腦的重要特色,它允許不同速度的硬件設(shè)備來(lái)溝通,而不需要依于中央處理器的大量中斷負(fù)載。否則,中央處理器需要從來(lái)源把每一片段的數(shù)據(jù)復(fù)制到寄存器,然后把它們?cè)俅螌?xiě)回到新的地方。在這個(gè)時(shí)間中,中央處理器對(duì)于其他的工作來(lái)說(shuō)就無(wú)法使用。

DMA傳輸常使用在將一個(gè)內(nèi)存區(qū)從一個(gè)設(shè)備復(fù)制到另外一個(gè)。當(dāng)中央處理器初始化這個(gè)傳輸動(dòng)作,傳輸動(dòng)作本身是由DMA控制器來(lái)實(shí)行和完成。典型的例子就是移動(dòng)一個(gè)外部?jī)?nèi)存的區(qū)塊到芯片內(nèi)部更快的內(nèi)存去。像是這樣的操作并沒(méi)有讓處理器工作拖延,使其可以被重新調(diào)度去處理其他的工作。DMA傳輸對(duì)于高性能嵌入式系統(tǒng)算法和網(wǎng)絡(luò)是很重要的。 舉個(gè)例子,個(gè)人電腦的ISADMA控制器擁有8個(gè)DMA通道,其中的7個(gè)通道是可以讓計(jì)算機(jī)的中央處理器所利用。每一個(gè)DMA通道有一個(gè)16位地址寄存器和一個(gè)16位計(jì)數(shù)寄存器。要初始化數(shù)據(jù)傳輸時(shí),設(shè)備驅(qū)動(dòng)程序一起設(shè)置DMA通道的地址和計(jì)數(shù)寄存器,以及數(shù)據(jù)傳輸?shù)姆较?,讀取或?qū)懭?。然后指示DMA硬件開(kāi)始這個(gè)傳輸動(dòng)作。當(dāng)傳輸結(jié)束的時(shí)候,設(shè)備就會(huì)以中斷的方式通知中央處理器。1

本詞條內(nèi)容貢獻(xiàn)者為:

何星 - 副教授 - 上海交通大學(xué)