基于NUMA架構的多線程程序性能和能耗研究
發(fā)布時間:2020-03-21 18:43
【摘要】:在云計算環(huán)境下,非一致性內存訪問NUMA(Non-Uniform Memory Access)架構運用的越來越廣泛。當單線程多任務的程序運行在NUMA系統(tǒng)上時,會遇到數據本地性和共享資源沖突兩個問題。而當多線程程序運行在NUMA系統(tǒng)上時,會使上述的兩個問題變得更加復雜:1)多線程程序的共享數據會導致不同節(jié)點之間產生遠端訪問,破壞NUMA系統(tǒng)本地性;2)當多個線程同時讀取同一個NUMA節(jié)點上的內存數據時,會競爭該節(jié)點上的共享資源,導致嚴重的緩存以及互聯(lián)總線沖突。另外,多線程程序還會帶來關鍵線程的問題。具有更多遠端內存訪問的線程成為系統(tǒng)中的關鍵線程,這些關鍵線程會影響整個程序的性能并增加程序運行期間的能量消耗。以往的研究主要關注提升NUMA系統(tǒng)的性能,很少考慮節(jié)省NUMA系統(tǒng)的能耗。圍繞上述若干問題,針對“基于NUMA架構的多線程程序性能和能耗研究”課題,開展了以下四個方面的研究:針對NUMA系統(tǒng)中出現(xiàn)的內存訪問延遲過高的現(xiàn)象,提供給程序員一個工具檢測并分析NUMA系統(tǒng)中的性能瓶頸。通過分析系統(tǒng)中的延遲信息,該工具能做出三種判斷:1)如果共享數據的訪問延遲要高于私有數據的訪問延遲,那么系統(tǒng)中的共享數據會導致較大數目的遠端訪問;2)如果系統(tǒng)中存在異常高的內存訪問延遲,那么系統(tǒng)中很有可能發(fā)生共享資源沖突;3)如果各線程之間的遠端內存訪問數目差異較大,那么遠端內存訪問數目最多的線程會成為影響整個程序性能的關鍵線程。在檢測并分析出這些性能瓶頸之后,采用簡便和通用的NUMA系統(tǒng)優(yōu)化技術能夠提升多線程程序的性能。針對關鍵線程導致NUMA系統(tǒng)性能下降的現(xiàn)象,提出一種對稱式調度機制來均衡多線程之間的遠端內存訪問數目。在NUMA環(huán)境中,程序數據對于某些線程來說是本地數據,對于其他線程來說則是遠端數據。具有遠端內存訪問較多的線程會比其他線程運行地更慢,成為影響整個多線程程序性能的關鍵線程。通過對稱式線程調度機制,將線程對稱地匹配到所有的處理器節(jié)點上,可以平衡所有線程的遠端內存訪問次數,使每個線程具有相似的本地和遠端數據訪問數目。這樣,所有的線程幾乎會同時達到線程同步點,避免關鍵線程拖累性能的情況發(fā)生。針對多線程程序在NUMA系統(tǒng)上運行時性能和能耗的關系,提出一個性能提升和能耗增長的線性負相關性模型。在模型中分別考慮以下兩種假設:實際加速比趨近于常量,以及實際加速比趨近于線性加速比;谛阅芎湍芎闹g關系,可以指導NUMA系統(tǒng)進行動態(tài)調優(yōu):根據多線程程序性能可擴展性的好壞,增加/減少該程序所使用的節(jié)點數,可以在滿足能耗預算/性能要求前提下提升性能或者節(jié)省能耗。進一步研究發(fā)現(xiàn),影響性能和能耗之間關系的因素包括:遠端內存訪問開銷、線程間同步開銷和負載非均衡開銷。其中,由關鍵和非關鍵線程完成時間不一致引起的同步開銷是導致程序性能/能耗可擴展性變差的主要原因之一。針對NUMA系統(tǒng)上關鍵線程和非關鍵線程的完成時間不同,提出一種動態(tài)頻率調整策略來降低整個系統(tǒng)的能耗。在NUMA系統(tǒng)中,關鍵線程需要訪問更多的遠端內存,運行時間比非關鍵線程更長。因此,程序的執(zhí)行時間是由關鍵線程決定的。在不延長程序整體執(zhí)行時間的前提下,通過降低非關鍵線程所在的CPU核心頻率,使關鍵線程和非關鍵線程同時達到多線程程序的同步點,可以節(jié)省非關鍵線程的能量消耗。通過使用基于關鍵線程的預測機制,進而能夠有效地實施動態(tài)頻率調整策略,從而節(jié)省更多的能耗。
【學位授予單位】:華中科技大學
【學位級別】:博士
【學位授予年份】:2016
【分類號】:TP332
本文編號:2593769
【學位授予單位】:華中科技大學
【學位級別】:博士
【學位授予年份】:2016
【分類號】:TP332
【參考文獻】
相關期刊論文 前10條
1 任彤;傅杰;靳國杰;;基于NUMA架構的解釋器訪存優(yōu)化設計與實現(xiàn)[J];高技術通訊;2015年07期
2 廖彬;傅杰;靳國杰;王一光;王磊;章隆兵;王劍;;NUMA結構的高效實時穩(wěn)定的垃圾回收算法[J];高技術通訊;2015年02期
3 顧堅;劉偉;;面向NUMA集群的代數多重網格算法優(yōu)化[J];計算機科學;2014年06期
4 王睿伯;盧錫城;盧凱;王紹剛;;面向CC-NUMA體系結構的事務內存沖突規(guī)避方法[J];計算機學報;2011年04期
5 王躍清;黃燁;王翰虎;陳梅;;混合結構數據庫中基于頁遷移的存儲分層算法[J];計算機應用;2010年11期
6 潘國騰;竇強;謝倫國;;基于目錄的Cache一致性協(xié)議的可擴展性研究[J];計算機工程與科學;2008年06期
7 許立;羅軍;盧凱;;具有節(jié)點親近能力的NUMA調度算法[J];計算機工程;2006年01期
8 楊夢夢,盧凱,盧錫城;內存管理系統(tǒng)對NUMA的支持及優(yōu)化[J];計算機工程;2005年16期
9 龐立會,陳渝;一種CC-NUMA系統(tǒng)模擬環(huán)境的研究與實現(xiàn)[J];計算機工程;2005年03期
10 陳渝,nudt.edu.cn,李春江,楊學軍,陳福接;CC-NUMA并行系統(tǒng)通信優(yōu)化的變換技術[J];軟件學報;2000年04期
,本文編號:2593769
本文鏈接:http://www.sikaile.net/kejilunwen/jisuanjikexuelunwen/2593769.html
最近更新
教材專著