本發(fā)明涉及固態(tài)硬盤,尤其是涉及一種基于多路徑預定的閃存片上網(wǎng)絡架構(gòu)。
背景技術:
1、為了滿足現(xiàn)代數(shù)據(jù)密集型應用日益增長的需求,固態(tài)硬盤(ssd)的性能和容量不斷提高。但ssd內(nèi)部的通信(即ssd控制器和nand閃存芯片之間的通信)仍然是許多應用的關鍵性能瓶頸,特別是具有大量隨機io請求的工作負載。ssd采用多通道共享總線架構(gòu),多個flash芯片共用同一條路徑,這可能導致多個io請求訪問同一通道上的nand閃存芯片。這些io請求在同一通道上串行傳輸,極大地限制了ssd的并行性。因此,處理好路徑?jīng)_突是提高ssd并行性和性能的關鍵。
2、ssd供應商主要通過增加ssd中的通道數(shù)量來減少路徑?jīng)_突。然而,這不是一個可擴展的解決方案,因為增加通道的數(shù)量會使ssd控制器更加復雜,例如,ssd控制器需要更多的io引腳來服務更多的并行通道,從而增加ssd的總體成本。
3、目前,現(xiàn)有技術中通過增加每個ssd通道的帶寬,并在傳統(tǒng)的總線型拓撲結(jié)構(gòu)的基礎上增加垂直通道,以解決路徑?jīng)_突問題。但是該技術需要對ssd進行相對較大的修改,實現(xiàn)過程中的開銷昂貴,且在數(shù)據(jù)傳輸時并沒有很好的利用路徑多樣性。
4、另一項技術通過使用2d-mesh拓撲結(jié)構(gòu)增加路徑多樣性,通過路徑預定并采用非極小全自適應路由算法以緩解路徑?jīng)_突問題。但是這項技術采用的路由算法的預定成功率有待提高,且當路徑預定失敗時,需要等待忙碌路徑釋放后再重新進行預定,且路徑預定失敗的時間開銷與傳統(tǒng)總線型ssd發(fā)生路徑?jīng)_突問題相當。除此之外,該技術在具有大量細粒度讀(如嵌入向量的大小128b)的負載下性能會顯著下降,因為該設計并沒考慮到跳數(shù)對于路徑預定時間的重大影響,這導致路徑預定時間與數(shù)據(jù)傳輸時間相當,嚴重影響到細粒度讀取負載下的性能。
5、因此,亟需一種拓展傳統(tǒng)拓撲結(jié)構(gòu)機制,通過路徑預定機制,減少路徑?jīng)_突,同時提升ssd在密集細粒度讀取負載下的性能。
技術實現(xiàn)思路
1、本發(fā)明的目的是提供一種基于多路徑預定的閃存片上網(wǎng)絡架構(gòu),在數(shù)據(jù)傳輸前進行多路徑預定,減少數(shù)據(jù)傳輸路徑?jīng)_突次數(shù),并減少細粒度讀總體傳輸時間,提高路徑預定成功率。
2、為實現(xiàn)上述目的,本發(fā)明提供的一種基于多路徑預定的閃存片上網(wǎng)絡架構(gòu),包括以構(gòu)建模塊作為節(jié)點,且各節(jié)點間采用二維網(wǎng)格拓撲結(jié)構(gòu)連接;基于多路徑預定路由算法,利用構(gòu)建模塊為隊列中每個io請求分配閃存控制器,并進行路徑預定,直至所有io請求完成,釋放預定的路徑;
3、其中,構(gòu)建模塊,由閃存芯片和路由器芯片組成,每個構(gòu)建模塊中閃存芯片通過注入彈出端口與路由器芯片通信,各構(gòu)建模塊間的路由器芯片通過雙向鏈路連接。
4、優(yōu)選的,路徑預訂包括通過發(fā)送偵察包識別和保留路徑,并根據(jù)偵察包的模式,確定目標構(gòu)建模塊上路由芯片接收偵察包后的行為。
5、優(yōu)選的,偵察包的模式包括保留模式和取消模式:
6、當偵察包的模式為保留模式時,路由器芯片內(nèi)部通過多路徑預訂路由算法,計算得到偵察包的發(fā)送端口,并將偵察包的編碼、進入端口和發(fā)送端口記錄在路由芯片的路徑預定表中;
7、當偵察包的模式為取消模式時,則偵察包路徑預定失敗,從路徑預定表中刪除該表項,并根據(jù)路徑預定表中的信息回溯到上一個構(gòu)建模塊。
8、優(yōu)選的,為隊列中每個io請求保留一條沒有沖突的路徑包括按照目標構(gòu)建模塊與閃存控制器距離,從小到大依次檢查閃存控制器,為給定的io請求分配閃存控制器,并通過該閃存控制器向目標構(gòu)建模塊發(fā)送偵察包。
9、優(yōu)選的,多路徑預訂路由算法,包括:
10、獲取閃存片上網(wǎng)絡架構(gòu)中空閑閃存控制器的數(shù)量n;
11、在請求隊列按順序取n個請求并獲取相應請求的數(shù)據(jù)傳輸大小,根據(jù)數(shù)據(jù)量閾值m,將n個請求劃分為第一優(yōu)先隊列和第二優(yōu)先隊列;
12、按目標構(gòu)建模塊與閃存控制器的水平距離,依次為第一優(yōu)先隊列和第二優(yōu)先隊列的請求分配閃存控制器,直至所有請求完成路徑預定。
13、因此,本發(fā)明采用上述一種基于多路徑預定的閃存片上網(wǎng)絡架構(gòu),具有以下技術效果:
14、(1)采用2d-mesh拓撲結(jié)構(gòu)有效豐富了數(shù)據(jù)傳輸?shù)穆窂蕉鄻有?,利用路由芯片與閃存芯片分離的策略避免了對閃存芯片的額外處理,并且充分利用了路徑多樣性,為io請求識別和保留無沖突的路徑。
15、(2)采用路徑預定技術從根本上解決了路徑?jīng)_突的問題,并且采用多路徑預定路由算法,優(yōu)先考慮減少細粒度請求的路徑預定跳數(shù),有效減少了總的路徑預定時間,完善了現(xiàn)有技術在細粒度請求主導的負載下性能差的問題。
16、下面通過附圖和實施例,對本發(fā)明的技術方案做進一步的詳細描述。
1.一種基于多路徑預定的閃存片上網(wǎng)絡架構(gòu),其特征在于,包括以構(gòu)建模塊作為節(jié)點,且各節(jié)點間采用二維網(wǎng)格拓撲結(jié)構(gòu)連接;基于多路徑預定路由算法,利用構(gòu)建模塊為隊列中每個io請求分配閃存控制器,并進行路徑預定,直至所有io請求完成,釋放預定的路徑;
2.根據(jù)權(quán)利要求1所述的一種基于多路徑預定的閃存片上網(wǎng)絡架構(gòu),其特征在于,路徑預訂包括通過發(fā)送偵察包識別和保留路徑,并根據(jù)偵察包的模式,確定目標構(gòu)建模塊上路由芯片接收偵察包后的行為。
3.根據(jù)權(quán)利要求2所述的一種基于多路徑預定的閃存片上網(wǎng)絡架構(gòu),其特征在于,偵察包的模式包括保留模式和取消模式:
4.根據(jù)權(quán)利要求1所述的一種基于多路徑預定的閃存片上網(wǎng)絡架構(gòu),其特征在于,為隊列中每個io請求保留一條沒有沖突的路徑包括按照目標構(gòu)建模塊與閃存控制器距離,從小到大依次檢查閃存控制器,為給定的io請求分配閃存控制器,并通過該閃存控制器向目標構(gòu)建模塊發(fā)送偵察包。
5.根據(jù)權(quán)利要求1所述的一種基于多路徑預定的閃存片上網(wǎng)絡架構(gòu),其特征在于,多路徑預訂路由算法,包括: