李 彬 董德尊 吳 際 夏 軍
(國防科學技術大學計算機學院 長沙 410073)
?
基于SMART技術的片上網絡低功耗策略P-SMART
李彬董德尊吳際夏軍
(國防科學技術大學計算機學院長沙410073)
(xtlil3@163.com)
摘要片上網絡(network-on-chip, NoC)消耗的功耗在整個芯片中所占比例不斷增大,并且隨著芯片工藝精度的提升和工作電壓的不斷降低,靜態功耗占片上網絡總功耗的比例也越來越大.當前芯片設計者致力于將未被使用的核設置為休眠狀態來降低功耗.然而,即便是最前沿的芯片設計,當核休眠時與它連接的路由器都是保持在正常狀態來進行報文傳輸.而與休眠核相連的片上網絡路由器由于沒有注入和吸收的報文,負載相對較低.在SMART(single-cycle multi-hop asynchronous repeated traversal)片上網絡中,報文能夠單周期從源路由器到目標路由器.基于單周期多跳旁路(SMART)技術,提出一種關閉低負載路由器虛通道的策略P-SMART,以在不影響網絡性能的情況下節省片上網絡功耗.實驗結果表明:相對于SMART技術,P-SMART的性能損失不超過2%,而功耗節省13.4%.
關鍵詞片上互連網絡;功耗;旁路;延遲;虛通道
片上多核處理器成為越來越主流的硬件體系結構.片上網絡(network-on-chip, NoC)作為片上多核系統的通信結構,能夠為片上多核體系結構提供更高的通信帶寬、更好的可擴展性.
片上網絡消耗著很大比例的片上功耗.例如,在所有核滿負荷工作時,Intel的 80-core chip[1]和MIT的 RAW chip[2]上的互連網絡分別消耗了片上總功耗的 28%和36%.在核使用率較低的情況下,互連網絡消耗的功耗比例更大.同時隨著工藝精度的提升和工作電壓的降低,靜態功耗占總功耗的比例也在不斷變大.根據IDC的研究[3],服務器中核的使用率只有10%~15%.在低利用率下,靜態功耗占互連網絡總功耗的比例預計會更大.
由于功耗已經成為高性能處理器設計的約束條件[4],設計高能效的片上互連網絡變得十分重要.有研究提出以關閉與休眠核連接的片上網絡路由器的方法減小片上網絡靜態功耗[5].這種方法可以選擇將部分路由器完全關閉,能夠較好地降低片上網絡功耗.在片上網絡路由器中,緩存消耗的功耗又占了整個路由器的很大一部分.有很多研究致力于降低路由器中的緩存[6-7],實現無緩存路由器.研究表明無緩存路由器相對于傳統的有緩存路由器最多能夠節省39%的片上網絡功耗[8].但在這些無緩存設計中,報文出現競爭時競爭失敗的報文被丟棄或是發生偏轉,帶來更大的時間和功耗開銷.
不論是關閉路由器[9]、關閉路由器中的部件[10-11],還是無緩存路由器[12-15]都將減少網絡中的可用資源,報文在網絡中的延遲都將受到影響.降低功耗的同時性能也有降低,而更高的網絡延遲會增加傳輸報文消耗的功耗.文獻[16]提出了一種基于Mesh網絡的單周期多跳異步中繼傳輸網絡SMART(single-cycle multi-hop asynchronous repeated traversal),報文能夠一跳穿過路由路徑中的多個路由器,減少了跳步數.跳步數的減少,相應的動態功耗也隨之下降.
本文基于SMART網絡,提出關閉相應路由器中輸入虛通道的策略P-SMART來降低功耗.當計算核進入休眠狀態時,與其相連的路由器沒有注入和吸收報文,緩存使用率相對較低.關閉這些路由器輸入端口的部分輸入緩存以及注入端口的輸入緩存,可以降低靜態功耗.但是單純的關閉虛通道會影響虛通道分配,SMART的運用,使得關閉部分虛通道,不會對后續的分配造成影響,所以我們將關閉虛通道與SMART結合起來,在低負載情況下既可以降低網絡延遲,又能夠節省網絡功耗.
實驗結果表明:在低負載情況下,P-SMART策略相對于現有的SMART技術,平均網絡性能損耗不超過2%,而功耗平均節省了16.8%.
1SMART
SMART策略的核心思想是在路由器中加入旁路以及異步中繼器,報文進入路由器后可以直接通過旁路穿過交叉開關離開路由器.增加異步中繼器是減小線延遲的標準方法,路由器輸出端口的中繼器為報文創建虛擬的單周期多跳通路提供可能.在SMART網絡中,同一維中的任意2個路由器之間都可以建立虛多跳通道.SMART路由器增加了3個控制位:寫緩存(buffer write enable,BW),在每個輸入端口確定是否鎖存輸入信號;旁路多路器選擇(bypass mux select,BM),在每個交叉開關輸入端,用來確定選擇本地被緩存的報文還是旁路的報文;交叉開關選擇(crossbar select,XB).SMART路由器的結構如圖1所示:

Fig. 1 SMART bypass router architecture.圖1 SMART旁路由器體系結構
在SMART網絡中,報文在同一個周期內申請多跳路由器和鏈路資源.它的實現方法是,報文在本地開關分配中獲得輸出端口之后,廣播一個旁路建立請求信號(SMART-hop setup request, SSR),發給當前路由器輸出端口下游的所有路由器,SSR攜帶著報文將要傳輸的跳步數信息.增加全局開關仲裁(switch allocation global, SA-G),在收到的多個SSR旁路請求和本地報文請求之間,根據優先級進行仲裁,通過仲裁結果設置3個控制信號:BW,BM和XB.SA-G仲裁確保路由器交叉開關的任意一個輸入輸出端只有一個報文被允許通過,將BW置為1就可以使沖突的報文緩存下來.單周期多跳通道是投機地建立,當報文的旁路請求總是不成功,像在傳統網絡中一樣一跳一跳地傳輸.在一個報文特定的多跳傳輸中,所有路由器中的旁路請求是以分布式的方式在單周期內同時仲裁.這就需要確保報文被鎖存在正確的路由器中,這是通過在路由器中設置相同優先級來實現.在SMART網絡中,報文能夠沿著同一維方向建立單周期任意跳數的通道,在需要轉維時停下來.

Fig. 2 SSR in SMART.圖2 SMART中的SSR
2P-SMART策略
本文基于第1節所述的SMART路由器旁路策略,關閉與休眠核連接路由器中部分輸入虛通道來降低片上網絡功耗.目標是在較小的性能損失下降低片上網絡的功耗.在SMART片上網絡中,旁路是投機建立的.我們優先讓本地路由器中的報文使用鏈路資源.當一個報文嘗試建立多跳旁路時,如果中間路由器有本地報文與它沖突,旁路不成功,下次再申請多跳旁路,直到它到達同維上的目標路由器.與傳統網絡相比,SMART網絡中報文的平均延遲低,同時虛通道的使用率也會低很多.
當負載較低時,片上系統將部分核置為休眠狀態,片上網絡中的報文較少.這種狀態下,與休眠核連接的路由器不會被核注入報文,同時也不會有需要被核吸收的報文,路由器不會是任何一個報文的目標路由器.當一個報文被注入片上網絡,進入源路由器,如果它在所有路由路徑中旁路申請都成功,它就只需要使用路由路徑中2個路由器的輸入虛通道:轉維路由器和目的路由器.部分報文不需轉維,沒有轉維路由器,而且從路由算法的角度,考慮到Mesh中確定性維序路由,報文或者不轉維,或者最多轉維一次,所以目的路由器的比例要高于轉維路由器.與休眠核連接的路由器僅作為旁路路由器或轉維路由器,不會被核注入報文,注入端口中的輸入虛通道不會被使用.
報文在網絡中傳輸的路由路徑可以分成2種情況:1)報文在同一維度上的傳輸,如圖3中報文從R12到R15;2)報文需要轉維,如圖3中報文從R0到R11需要在R3轉維.情況1中旁路成功時,報文只需使用到目的路由器的輸入虛通道,而目的路由器只可能是與非休眠核連接的路由器;旁路不成功,需要進入路由路徑中間的路由器的輸入虛通道,由于與休眠核連接的路由器沒有本地報文與旁路報文競爭,旁路報文不會停在與休眠核連接路由器的輸入虛通道.所以在情況1下,只有與非休眠核連接的路由器輸入虛通道被使用.情況2中旁路成功時,報文會進入目的路由器以及轉維路由器的輸入虛通道,轉維路由器可能是與休眠核連接的路由器如R4,也可能是其他路由器如R3,但目的路由器也只能是與非休眠核連接的路由器;旁路不成功時,和情況1相同,報文只會停在與休眠核連接的路由器輸入虛通道.

Fig. 3 Example of a single-cycle multi-hop path in core sleeping system.圖3 在核休眠時的單周期多跳通道
與休眠核連接的路由器收到來自其他路由器中報文旁路的請求,不會有來自注入端的報文與它競爭輸出端口,與在其他路由器中相比,沒有核注入的報文競爭路由器輸出端口.報文旁路不成功,進入休眠核連接路由器的輸入緩存的幾率比其他路由器小一些.綜上,負載較低、部分核被置于休眠狀態時,與休眠核連接的路由器中輸入虛通道占用率要比其他路由器低,因此適當減少與休眠核連接路由器中的可用虛通道數量不會對報文在網絡中的延遲產生較大影響.我們提出在基于SMART的Mesh網絡中,關閉與休眠核連接的路由器中部分虛通道來減低片上網絡功耗的方法P-SMART,對網絡性能的影響不大.與文獻[5]中提出的關閉部分休眠核連接路由器的方法比較,雖然只是關閉了部分虛通道,但目標路由器是所有與休眠核連接的路由器.緩存占整個路由器功耗的比例較大,關閉虛通道的方法能夠獲得較好的功耗節省效果.
P-SMART需要在原有的路由器體系結構上做一些改變.首先,核在被置為休眠狀態后,需要通知與它連接的路由器,這些路由器再將輸入端的部分虛通道關閉;然后就是怎樣關閉以及關哪些虛通道.
我們將每個路由器中的輸入虛通道分為2類:1)基本的虛通道;2)可以關閉的虛通道(圖4中灰色部分虛通道),并在可關閉的虛通道前面加上一個開關,這個開關由核休眠信號控制.當核被置為休眠狀態后,它就傳輸一個通知報文給路由器,路由器將可關閉的虛通道全部關掉.每個輸入端口都配置一定比例的2類虛通道.由于核休眠后,不再往路由器注入報文,路由器注入端口全部為可關閉的虛通道.而在本文中將其他端口中的可關閉虛通道比例設置為0.5,并未探究最優的關停比例.而在休眠核被重新激活后,同樣發送信號給路由器將虛通道激活.在關閉與休眠核連接路由器中的可關閉虛通道后,路由器之間的虛通道數目出現差異.這在傳統路由器網絡中,會給虛通道分配帶來一定的麻煩,但在單周期多跳旁路的網絡中并沒有影響.在傳統的路由器中,虛通道分配是給報文在相鄰的下級路由器選擇一個空的虛通道.而在SMART旁路網絡中,報文從源路由器發出后可能停在路由路徑中的任意一個路由器的輸入虛通道,傳統的虛通道分配無效,所以在虛通道分配階段,只要下級路由器有空,虛通道就分配成功.在到達它需要停的路由器后,再選擇進入哪個虛通道,所以虛通道數目的差異不會給虛通道分配帶來影響.在原有的SMART的基礎上,只需要增加比較簡單的開關,就能夠實現關閉與休眠核連接路由器中部分輸入虛通道的功能.

Fig. 4 power-gate virtual channel.圖4 關停虛通道
3實驗評估
本節對P-SMART進行實驗評估.我們在片上網絡模擬器Booksim2.0中模擬實現本文中提出的設計.Booksim2.0是基于周期flit(切片)級建模的模擬器,是當前比較主流的片上網絡模擬器.實驗用到3種片上網絡:基本路由器網絡、SMART和P-SMART.實驗評測對象為64核8×8 mesh拓撲結構,baseline中實驗配置為:每個輸入端口8個輸入虛通道,虛通道深度為1個切片,路由器為4周期流水,鏈路延遲為1個周期.SMART和P-SMART配置相同.在3種流量模式(Uniform random,Trans-pose,Bit-complement)下測試網絡性能.路由算法為DOR(dimension order routing).在SMART中,每個虛通道中的緩存資源是私有的,也就是只給一個報文使用,虛通道的深度只需要報文最大報文數量,虛通道深度設為一個報文.在每個路由器中,與處理核連接的注入端口虛通道關停比例為100%,其他端口比例為50%.P-SMART中,除注入端口外的4個端口的可關閉虛通道比例設置為12,核休眠的比例是18,14或12. 3種網絡路由器的其他配置均相同.圖5所示為SMART和P-SMART性能比較.如圖6所示,圖6(a)(b)(c)中最上面的圖給出的是核休眠比例為18時不同路由器結構在不同流量模式下的性能圖.2種旁路路由器低注入率下的延遲較基本路由器低;而P-SMART相對SMART延遲增加不明顯,只是飽和吞吐率下降.而在實際片上系統中,當負載較低、片上網絡流量較少時,才會將核休眠.我們只在較低注入率下(低于0.14)比較它們的性能,在核休眠比例為14和12時顯示出相近的結果.

Fig. 5 Performance evaluation results under uniform traffic patterns.圖5 uniform流量模式下性能評測結果



Fig. 6 Performance evaluation results under synthetic loads.圖6 合成負載下性能評測結果
我們用Dsent對合成負載的網絡功耗進行評測.只對P-SMART和SMART進行比較.圖7顯示的是在不同的核休眠比例下,動態功耗以及總功耗隨著注入率增加的變化情況,流量模式為uniform.在注入率低于0.12時,核休眠的比例為18,14,12,總功耗分別降低8.7%,13.4%,28.2%.
4總結
本文提出在單周期多跳旁路片上網絡中,關閉與休眠核連接的路由器中部分輸入虛通道,減少路由器中緩存功耗.我們分析得出,在旁路片上網絡中,當部分路由器連接的核被置為休眠狀態時,它們的輸入虛通道使用率會比普通的路由器低許多.而在片上網絡路由器中,緩存消耗的能量占整個路由器消耗能量的比例比較大.我們將這部分路由器中的部分輸入緩存關閉,減小路由器消耗的功耗,對網絡性能的影響不大.本文主要研究片上網絡低功耗,片上網絡中基于合成負載的模擬實驗是一般性的研究方法,我們用不同流量模式的綜合負載進行實驗評測.實驗結果表明:休眠核比例分別為18,14,12,在注入率低于0.12時,3種不同的流量模式下關閉虛通道增加的網絡延遲基本都低于2%,片上網絡總功耗分別降低8.7%,13.4%,28.2%.對于緩存消耗功耗比例較大的片上網絡路由器,能夠得到可觀的能效收益,相對來說網絡性能的降低并不明顯.
參考文獻
[1]Intel Corporation. Teraflops Research Chip[EBOL]. 2007 [2016-03-01]. https:www.intel.com
[2]Kim J S, Taylor M B, Miller J, et al. Energy characterization of a tiled architecture processor with on-chip networks[C]Proc of the ISLPED’03. New York: ACM, 2003: 424-427
[3]IDC. Future of Virtualization[EBOL]. 2007 [2016-03-01]. http:www.vmware.comfilespdfanalystsFuture-of-virtuali-zationIDC.pdf
[4]Gowan M K, Biro L, Jackson D. Power considerations in the design of the Alpha 21264 microprocessor[C]Proc of the 35th Design Automation Conf (DAC). New York: ACM, 2003: 726-731
[5]Samih A, Ren W, Krishna A, et al. Energy-efficient interconnect via router parking[C]Proc of the 19th Int Symp on High Performance Computer Architecture (HPCA). Los Alamitos, CA: IEEE Computer Society, 2013: 8-19
[6]Gómez C, Gómez M E, López P, et al. Reducing packet dropping in a bufferless NoC[C]Proc of the 14th Int Euro-Par Conf on Parallel Processing. Berlin: Springer, 2008: 899-909
[7]Moscibroda T, Mutlu O. A case for bufferless routing in on-chip networks[C]Proc of the 36th Annual Int Symp on Computer Architecture. New York: ACM, 2003: 424-427
[8]Jiang N, Becker D U, Michelogiannakis G, et al. A detailed and flexible cycle-accurate network-on-chip simulator[C]Proc of Performance Analysis of Systems and Software. New York: ACM, 2013: 86-96
[9]Dally W, Towles B. Principles and Practices of Inter-connection Networks[M]. San Francisco: Morgan Kaufmann, 2003
[10]Shang L, Peh L, Jha N K. Dynamic voltage scaling with links for power optimization of interconnection networks[C]Proc of the 9th Int Symp on High Performance Computer-Architecture (HPCA). Los Alamitos, CA: IEEE Computer Society, 2003: 91-102
[11]Borkar S. Thousand core chips: A technology perspective[C]Proc of the 44th Design Automation Conf (DAC). New York: ACM, 2007: 746-749
[12]Soteriou V, Peh L S. Exploring the design space of selfregulating power-aware onoff interconnection networks[J]. IEEE Trans on Parallel and Distributed Systems, 2007,18(3): 393-408
[13]Kim G, Kim J, Yoo S. Flexibuffer: Reducing leakage power in on-chip network routers[C]Proc of the 48th Design Automation Conf (DAC). New York: ACM, 2011: 936-941
[14]Moscibroda T, Mutlu O. A case for bufferless routing in on-chip networks[C]Proc of ISCA’09. New York: ACM, 2009: 8-19
[15]Matsutani H, Koibuchi M, Wang D, et al. Adding slowsilent virtual channels for low-power on-chip networks[C]Proc of NOC’09. New York: ACM, 2009: 23-32
[16]Krishna T, Chen C-H O, Kwon W C, et al. Breaking the on-chip latency barrier using SMART[C]Proc of the 19th Int Symp on High Performance Computer Architecture (HPCA). Los Alamitos, CA: IEEE Computer Society, 2013: 378-389

Li Bin, born in 1990. MS candidate. His main research interests include high performance interconnection network.

Dong Dezun, born in 1980. PhD, associate professor. Senior member of China Computer Federation. His main reseach interests include high performance inter-connection network.

Wu Ji, born in 1988. PhD candidate. His main reseach interests include high performance interconnection network.

Xia Jun, born in 1976. PhD, associate professor. Senior member of China Computer Federation. His main reseach interests include high parallel and distributed computing,and high performance computer systems.
收稿日期:2016-03-11;修回日期:2016-05-16
基金項目:國家自然科學基金項目(61272482);全國百篇優秀博士論文基金項目(201450);教育部高等學校博士學科點專項科研基金項目(20124307120026)
通信作者:董德尊(dong@nudt.edu.cn)
中圖法分類號TP393
P-SMART: An Energy-Efficient NoC Router Based on SMART
Li Bin, Dong Dezun, Wu Ji, and Xia Jun
(CollegeofComputer,NationalUniversityofDefenseTechnology,Changsha410073)
AbstractAs the number of on-chip cores in chip multiprocessors (CMPs) increase, size of network-on-chips (NoCs) and network latency increase. NoCs consume an increasing fraction of the chip power as technology and voltage continue to scale down, and static power consumes a larger fraction of the total power. Currently, processor designers strive to send under-utilized cores into deep sleep states in order to improve overall energy efficiency. However, even in state-of-the-art CMP designs, when a core going to sleep the router attached to it remains active in order to continue packet forwarding. The router attached to a sleeping core has low traffic load, due to no packets to or from sleeping core. An on-chip network called SMART (single-cycle multi-hop asynchronous repeated traversal) that aims to present a single-cycle data-path all the way from the source to the destination. This paper, we propose reducing the VC(virtual channel) of router that is attached to sleeping core, based on SMART NoC, reducing power consumption and bringing little performance penalty. We evaluate our network using synthetic traffics. Our evaluation results show that VC power gating increases network latency less than 2% when the workload is low, and compared with no bypass path network, the power is reduced about 13.4%.
Key wordsnetwork-on-chip (NoC); power consumption; bypass path; latency; virtual channel
This work was supported by the National Natural Science Foundation of China (61272482), the Foundation for the Author of National Excellent Doctoral Dissertation of China (201450), and the Specialized Research Fund for the Doctoral Program of Higher Education of China (20124307120026).