FTPA: 一種具有可配置核的靈活多核處理器結(jié)構(gòu)(三)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
3 性能評(píng)估
相對(duì)于現(xiàn)有的靈活多核處理器結(jié)構(gòu),F(xiàn)TPA在靈活性和通信開銷上都有巨大進(jìn)步,前者為FTPA 功耗和資源利用率的改進(jìn)提供了巨大的優(yōu)化空間,而后者則對(duì)性能帶來有效提升。 本節(jié)量化評(píng)估FTPA 的低通信開銷設(shè)計(jì)對(duì)程序性能的影響。3. 1 實(shí)驗(yàn)環(huán)境介紹
FTPA 采用EDGE 指令集,因此我們復(fù)用了TFlex 軟件模擬器的指令集定義部分,而重寫了微結(jié)構(gòu)部分。 SPEC2K 測試程序使用Scale[16]編譯器生成可執(zhí)行程序,超塊內(nèi)指令調(diào)度拓?fù)溥x項(xiàng)設(shè)為4,對(duì)應(yīng)每個(gè)物理核內(nèi)的4 個(gè)指令子隊(duì)列。 測試程序均采用Ref 輸入集。 鑒于軟件模擬器的速度限制,每個(gè)測試程序運(yùn)行50 M 個(gè)超塊。 FTPA 每個(gè)物理核的配置在表1 中列出。
3.2 實(shí)驗(yàn)結(jié)果及分析
使用時(shí)鐘精確的FTPA 模擬器,我們評(píng)估了16 個(gè)物理核組成的FTPA 邏輯核性能。 圖4 示出了FTPA 物理核分別配置為4 發(fā)射和16 發(fā)射時(shí)的性能對(duì)比,數(shù)據(jù)相對(duì)配置為1 發(fā)射時(shí)的性能進(jìn)行了歸一化處理。 從實(shí)驗(yàn)結(jié)果可以看到,對(duì)于SPEC2K 這樣的通用應(yīng)用,物理核從1 發(fā)射增加到4 發(fā)射對(duì)性能的影響顯著,平均提升33. 6% .但是,物理核從4 發(fā)射增加到16 發(fā)射,對(duì)性能的提升非常小,平均只有1. 5% 的提升。 該實(shí)驗(yàn)結(jié)果驗(yàn)證了FTPA 的4 發(fā)射物理核設(shè)計(jì)的合理性。
FTPA 通信開銷減小主要來自2 部分: 指令間通信和寄存器文件訪問,分別對(duì)應(yīng)第4 節(jié)物理核和邏輯核設(shè)計(jì)。 圖5 示出了2 種通信開銷的降低對(duì)性能的影響。 圖5 中第1 項(xiàng)數(shù)據(jù)是TFlex 的性能數(shù)據(jù),第2 項(xiàng)為實(shí)現(xiàn)4 發(fā)射物理核但仍采用全局共享寄存器文件的性能數(shù)據(jù)。 從該結(jié)果可以看出,超塊內(nèi)指令間通信開銷的減小為程序整體性能帶來了平均13. 3% 的提升。 第3 項(xiàng)顯示了采用寄存器私有化后FTPA 的性能,從結(jié)果可以看出,寄存器文件訪問通信的減少又帶來平均5. 2% 的性能提升。 從而,相比于TFlex,指令間數(shù)據(jù)通信和寄存器文件訪問通信開銷的減少,總共為FTPA帶來了平均19. 2% 的性能提升。
4 討論
在改進(jìn)通信開銷和靈活性的同時(shí),F(xiàn)TPA 也對(duì)處理器設(shè)計(jì)提出了新的挑戰(zhàn)。 下一步工作主要從2 方面展開: 首先是探索何時(shí)對(duì)計(jì)算資源、何時(shí)對(duì)共享資源進(jìn)行調(diào)整。 我們的思路是通過周期性統(tǒng)計(jì)IPC、執(zhí)行部件利用率和各級(jí)高速緩存命中率,來判斷對(duì)資源的調(diào)整時(shí)機(jī); 其次,本文量化評(píng)估的程序主要是SPEC2K 這樣的通用應(yīng)用,對(duì)單個(gè)超塊粒度而言,4 發(fā)射可以滿足大部分并行需求。 但是對(duì)于數(shù)據(jù)級(jí)并行應(yīng)用,4 發(fā)射物理核往往無法滿足性能需求。 我們的初步想法是在邏輯核層面再增加一級(jí),即首先由多個(gè)物理核組成一級(jí)邏輯核,每個(gè)超塊對(duì)應(yīng)一個(gè)一級(jí)邏輯核; 然后多個(gè)一級(jí)邏輯核再組成環(huán)形拓?fù)涞亩?jí)邏輯核,這樣在保證超塊內(nèi)并行性的同時(shí),在各級(jí)邏輯上也能保持高靈活性。
5 結(jié)論
本文針對(duì)處理器核可配置的靈活多核處理器結(jié)構(gòu)存在的問題,特別是在指令間通信開銷、邏輯核重構(gòu)開銷和靈活性3 方面的不足,設(shè)計(jì)了具有低通信開銷和高靈活性的FTPA 結(jié)構(gòu)。 結(jié)合對(duì)通用應(yīng)用的超塊并行性的分析,發(fā)現(xiàn)4 發(fā)射的物理核可以在滿足并行性的前提下,最小化超塊內(nèi)指令的數(shù)據(jù)通信開銷; 同時(shí),顯式數(shù)據(jù)流編碼的超塊,可以通過編譯器對(duì)指令放置進(jìn)行靜態(tài)調(diào)度,從而硬件上能夠?qū)⒅噶畲翱趧澐譃? 個(gè)獨(dú)立的子隊(duì)列,有效簡化指令發(fā)射邏輯的復(fù)雜度。 針對(duì)物理核中寄存器文件和一級(jí)高速緩存等共享資源對(duì)邏輯核靈活性的約束,F(xiàn)TPA 將寄存器文件對(duì)物理核私有化,同時(shí)將重構(gòu)開銷很大的一級(jí)高速緩存與容易擴(kuò)展的計(jì)算資源進(jìn)行邏輯上的分離,構(gòu)建了邏輯拓?fù)洵h(huán)形、物理Mesh 的靈活多核處理器結(jié)構(gòu)FTPA.
運(yùn)行SPEC2K 測試程序的結(jié)果顯示,在提供了很好的靈活性的同時(shí),相對(duì)于采用相同指令集的TFlex 結(jié)構(gòu),指令間通信和寄存器文件訪問通信開銷的減少,共為FTPA 帶來了平均19. 2% 的性能提升。
本文出自于中國科學(xué)院研究生院學(xué)報(bào),作者孫濤,安虹,毛夢捷,任永青,王濤,張海博。
參考文獻(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.