專利名稱:一種總線競爭對程序性能影響的預(yù)測方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種Intel Bensley平臺前端總線競爭對程序性能影響的預(yù)測方法。
背景技術(shù):
Intel Bensley平臺是目前高性能計算服務(wù)器的主流平臺。但是由于其多個核心共享總線 的緣故,并不是所有的程序在該平臺上都有很好的性能。對于一個串行計算程序,為了發(fā)揮 服務(wù)器的作用,可以改寫成為MPI程序。在改寫之前,我們會希望可以事先預(yù)測該MPI程序的 性能。但是,目前沒有一個有效的模型來預(yù)測Intel Bensley平臺上由于前端總線(FSB)競爭 對程序性能的影響,所以無法準確從一個串行計算程序的性能來推導(dǎo)出改寫成MPI程序的程序 性能。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于針對主流的Intel Bensley平臺雙路四核服務(wù)器,分析給出由于總 線競爭對高性能計算程序性能的影響。
這里提到的FSB競爭對程序性能的影響模型,就是要通過MPI程序加載單進程時的系統(tǒng)地 址總線壓力(F。)和數(shù)據(jù)總線壓力(D。),推導(dǎo)出同一MPI程序加載2、 4、 8進程時由于FSB競爭 導(dǎo)致的程序性能的影響。假設(shè)該平臺的FSB壓力最大值為F 。
由于對于Intel Bensley雙路四核平臺,有2個socket,每個socket有一個Clovertown 處理器。每個Clovertown處理器有兩個晶片(Die),每個晶片上有兩個核心(Core)。對應(yīng)Linux 下的CPU邏輯號分別為0、 2、 4、 6、 1、 3、 5、 7。其中0246和1357分別在兩個socket上, 02、 46、 13、 57分別在四個晶片上。
為分析這個模型,首先我們分析單一基本塊程序FSB競爭對性能影響模型,然后再給出復(fù) 雜高性能計算程序的FSB競爭對其性能的影響模型。
1.單一基本塊程序FSB競爭對性能影響模型 為方便討論,我們做了如下兩個定義
額外加載n A
相同進程,
綁定i山..丄表一示一在一個空閑系統(tǒng)中 i山..丄上,并同時運行。
性能降幅(Speeddown):它表示由于總線競爭導(dǎo)致的程序性能的損失
分別綁定在處理器核心 計算方法為
下面給出各種情況下的性能降幅計算模型 1)從綁定0到綁定04:
2)從綁定0到綁定01
<formula>formula see original document page 3</formula>
當F s土F時 當F >i/r時3)從綁定0到綁定0145
4)從綁定0到綁定01234567 <formula>formula see original document page 4</formula>
(1)
2.復(fù)雜高性能計算程序的FSB競爭對其性能影響模型
為了方便討論,同樣引入先前定義的性能降幅(Speeddown)。不過,對于MPI應(yīng)用,當啟 用N個MPI進程時,并行部分的計算量為原來的1/N。所以,MPI應(yīng)用的性能降幅定義為
w7]
對于MPI應(yīng)用,他的運算時間近似于其所有熱點基本塊的運算時間之和。由于在一臺同構(gòu) 的SMP服務(wù)器上運行,當啟用多個進程時,對于任意一個熱點基本塊,我們可以近似認為每個 進程的該熱點基本塊同時開始運行,同時結(jié)束。所以,整個應(yīng)用的性能降幅就近似等于每個 基本塊的性能降幅之和。
(2)
無附圖 '
具體實施例方式
對特定的Intel Bensley雙路四核平臺,使用Stream測得其最大的地址總線壓力和數(shù)據(jù)總 線壓力。對于復(fù)雜高性能計算程序,分割成數(shù)個基本塊,使用Intel Vtune測量單進程時的地 址總線壓力和數(shù)據(jù)總線壓力。使用公式(l)計算出每個基本塊的性能降幅,再利用公式(2)計 算得到八核八進程時的程序性能。
權(quán)利要求
1.一種Intel Bensley平臺前端總線競爭對高性能計算程序性能影響的預(yù)測方法的方法。其特征是一種利用單進程程序特征,預(yù)測出由于前端總線競爭導(dǎo)致的單節(jié)點多進程時的程序性能的影響的方法。
2.根據(jù)權(quán)利要求1所述的,其特征是可以僅僅測量高性能計算程序在單進程時的地址總線壓力和數(shù)據(jù)總線壓力,采用以下計算公式,預(yù)測出其在Intel Bensley在雙路四核下8進程時由于前端總線競爭導(dǎo)致的性能損失。對于程序的每個基本塊<formula>formula see original document page 2</formula> 當2F?!?"4&時<formula>formula see original document page 2</formula>,當2F?!狝〉^時對于有N個基本塊的高性能計算程序<formula>formula see original document page 2</formula>
全文摘要
一種Intel Bensley平臺前端總線競爭對高性能計算程序性能影響的預(yù)測方法的方法。可以僅僅測量高性能計算程序在單進程時的地址總線壓力和數(shù)據(jù)總線壓力,預(yù)測出其在Intel Bensley在雙路四核下8進程時由于前端總線競爭導(dǎo)致的性能損失。
文檔編號G06F9/46GK101582042SQ20081002472
公開日2009年11月18日 申請日期2008年5月12日 優(yōu)先權(quán)日2008年5月12日
發(fā)明者毛曉煒 申請人:毛曉煒