FTPA: 一種具有可配置核的靈活多核處理器結(jié)構(gòu)(三)
3 性能評估
相對于現(xiàn)有的靈活多核處理器結(jié)構(gòu),F(xiàn)TPA在靈活性和通信開銷上都有巨大進(jìn)步,前者為FTPA 功耗和資源利用率的改進(jìn)提供了巨大的優(yōu)化空間,而后者則對性能帶來有效提升。 本節(jié)量化評估FTPA 的低通信開銷設(shè)計對程序性能的影響。3. 1 實驗環(huán)境介紹
FTPA 采用EDGE 指令集,因此我們復(fù)用了TFlex 軟件模擬器的指令集定義部分,而重寫了微結(jié)構(gòu)部分。 SPEC2K 測試程序使用Scale[16]編譯器生成可執(zhí)行程序,超塊內(nèi)指令調(diào)度拓?fù)溥x項設(shè)為4,對應(yīng)每個物理核內(nèi)的4 個指令子隊列。 測試程序均采用Ref 輸入集。 鑒于軟件模擬器的速度限制,每個測試程序運行50 M 個超塊。 FTPA 每個物理核的配置在表1 中列出。
3.2 實驗結(jié)果及分析
使用時鐘精確的FTPA 模擬器,我們評估了16 個物理核組成的FTPA 邏輯核性能。 圖4 示出了FTPA 物理核分別配置為4 發(fā)射和16 發(fā)射時的性能對比,數(shù)據(jù)相對配置為1 發(fā)射時的性能進(jìn)行了歸一化處理。 從實驗結(jié)果可以看到,對于SPEC2K 這樣的通用應(yīng)用,物理核從1 發(fā)射增加到4 發(fā)射對性能的影響顯著,平均提升33. 6% .但是,物理核從4 發(fā)射增加到16 發(fā)射,對性能的提升非常小,平均只有1. 5% 的提升。 該實驗結(jié)果驗證了FTPA 的4 發(fā)射物理核設(shè)計的合理性。
FTPA 通信開銷減小主要來自2 部分: 指令間通信和寄存器文件訪問,分別對應(yīng)第4 節(jié)物理核和邏輯核設(shè)計。 圖5 示出了2 種通信開銷的降低對性能的影響。 圖5 中第1 項數(shù)據(jù)是TFlex 的性能數(shù)據(jù),第2 項為實現(xiàn)4 發(fā)射物理核但仍采用全局共享寄存器文件的性能數(shù)據(jù)。 從該結(jié)果可以看出,超塊內(nèi)指令間通信開銷的減小為程序整體性能帶來了平均13. 3% 的提升。 第3 項顯示了采用寄存器私有化后FTPA 的性能,從結(jié)果可以看出,寄存器文件訪問通信的減少又帶來平均5. 2% 的性能提升。 從而,相比于TFlex,指令間數(shù)據(jù)通信和寄存器文件訪問通信開銷的減少,總共為FTPA帶來了平均19. 2% 的性能提升。
4 討論
在改進(jìn)通信開銷和靈活性的同時,F(xiàn)TPA 也對處理器設(shè)計提出了新的挑戰(zhàn)。 下一步工作主要從2 方面展開: 首先是探索何時對計算資源、何時對共享資源進(jìn)行調(diào)整。 我們的思路是通過周期性統(tǒng)計IPC、執(zhí)行部件利用率和各級高速緩存命中率,來判斷對資源的調(diào)整時機; 其次,本文量化評估的程序主要是SPEC2K 這樣的通用應(yīng)用,對單個超塊粒度而言,4 發(fā)射可以滿足大部分并行需求。 但是對于數(shù)據(jù)級并行應(yīng)用,4 發(fā)射物理核往往無法滿足性能需求。 我們的初步想法是在邏輯核層面再增加一級,即首先由多個物理核組成一級邏輯核,每個超塊對應(yīng)一個一級邏輯核; 然后多個一級邏輯核再組成環(huán)形拓?fù)涞亩夁壿嫼?,這樣在保證超塊內(nèi)并行性的同時,在各級邏輯上也能保持高靈活性。
5 結(jié)論
本文針對處理器核可配置的靈活多核處理器結(jié)構(gòu)存在的問題,特別是在指令間通信開銷、邏輯核重構(gòu)開銷和靈活性3 方面的不足,設(shè)計了具有低通信開銷和高靈活性的FTPA 結(jié)構(gòu)。 結(jié)合對通用應(yīng)用的超塊并行性的分析,發(fā)現(xiàn)4 發(fā)射的物理核可以在滿足并行性的前提下,最小化超塊內(nèi)指令的數(shù)據(jù)通信開銷; 同時,顯式數(shù)據(jù)流編碼的超塊,可以通過編譯器對指令放置進(jìn)行靜態(tài)調(diào)度,從而硬件上能夠?qū)⒅噶畲翱趧澐譃? 個獨立的子隊列,有效簡化指令發(fā)射邏輯的復(fù)雜度。 針對物理核中寄存器文件和一級高速緩存等共享資源對邏輯核靈活性的約束,F(xiàn)TPA 將寄存器文件對物理核私有化,同時將重構(gòu)開銷很大的一級高速緩存與容易擴(kuò)展的計算資源進(jìn)行邏輯上的分離,構(gòu)建了邏輯拓?fù)洵h(huán)形、物理Mesh 的靈活多核處理器結(jié)構(gòu)FTPA.
運行SPEC2K 測試程序的結(jié)果顯示,在提供了很好的靈活性的同時,相對于采用相同指令集的TFlex 結(jié)構(gòu),指令間通信和寄存器文件訪問通信開銷的減少,共為FTPA 帶來了平均19. 2% 的性能提升。
本文出自于中國科學(xué)院研究生院學(xué)報,作者孫濤,安虹,毛夢捷,任永青,王濤,張海博。
參考文獻(xiàn)
[1 ] Hill M D,Marty M R. Amdahl"s law in the multicore era[J].IEEE Computer,2008,41( 7) : 33-38.
[2 ] Sherwood T,Perelman E,Hamerly G,et al. Discovering andexploiting program phases[J]. IEEE Micro,2003,23 ( 6 ) :84-93.
[3 ] Ipek E, Kirman M, Kirman N, et al. Core fusion:accommodating software diversity in chip multiprocessors[C]∥Tullsen D ( ed ) . Proceedings of ISCA"07. New York:ACM Press,2007: 186-197.
[4 ] Tarjan D,Boyer M,Skadron K. Federation: boosting perthreadperformance of througHPut-oriented manycorearchitectures[J]. ACM Transactions on Architecture andCode Optimization,2010,7( 4) : ( article 19) 1-38.
[5 ] Zhong H,Lieberman S A,Mahlke S A. Extending multicorearchitectures to exploit hybrid parallelism in single-threadapplications[C]∥Louri A ( ed) . Proceedings of HPCA"07.Washington: IEEE CS,2007: 25-36.
[6 ] Watanabe Y,Davis J D,Wood D A. WiDGET: wisconsindecoupled grid execution tiles [C] ∥ Seznec A ( ed ) .Proceedings of ISCA"10. New York: ACM Press,2010: 2-13.
[7 ] Kim C,Sethumadhavan S,Govindan M,et al. Composablelightweight processors[C]∥Bellas N ( ed ) . Proceedings ofMICRO"07. Washington: IEEE CS,2007: 381-394.
[8 ] Gulati D,Kim C, Sethumadhavan S, et al. Multitaskingworkload scheduling on flexible-core chip multiprocessors[C]∥Moshovos A ( ed ) . Proceedings of PACT"08. New York:ACM Press,2008: 187-196.
[9 ] Gebhart M,Maher B A,Coons K E,et al. An evaluation ofthe TRIPS computer system [C] ∥ Soffa M L ( ed ) .Proceedings of ASPLOS"09. New York: ACM Press,2009: 1-12.
[10] Burger D,Keckler S,McKinley K,et al. Scaling to the endof silicon with EDGE architectures[J]. IEEE Computer,2004,37( 7) : 44-55.
[11] Mahlke S A,Lin D C,Chen W Y,et al. Effective compilersupport for predicated execution using the hyperblock[C]∥Hwu W ( ed) . Proceedings of MICRO"92. Washington: IEEECS,1992: 45-54.
[12] Ranganathan N,Burger D,Keckler S W. Analysis of theTRIPS prototype block predictor[C]∥ Tullsen D ( ed ) .Proceedings of ISPASS"09. Washington: IEEE CS,2009:195-206.
[13] Robatmili B,Coons K E,Burger D, et al. Strategies formapping data flow blocks to distributed hardware [C]∥Gonzalez A ( ed ) . Proceedings of MICRO"08. Washington:IEEE CS,2008: 23-34.
[14] Chaudhry,Cypher S,Ekman R, et al. ROCK: A highperformanceSPARC CMT processor[J]. IEEE Micro,2009,29( 2) : 6-16.
[15] Ren Y,An H,Sun T,et al. Dynamic resource tuning forflexible core chip multiprocessors [C]∥ Hus C ( ed ) .Proceedings of ICA3PP"10. Heidelberg: Springer-VerlagBerlin,2010: 32-41.
[16] University of Massachusetts. Scale Compiler Toolset. http: ∥www. cs. utexas. edu / users / cart / Scale / index. html.