[發(fā)明專利]異構(gòu)平臺(tái)的混合系統(tǒng)中運(yùn)行分布式程序的方法和系統(tǒng)有效
| 申請(qǐng)?zhí)枺?/td> | 201380013717.3 | 申請(qǐng)日: | 2013-03-04 |
| 公開(公告)號(hào): | CN104160377B | 公開(公告)日: | 2018-03-02 |
| 發(fā)明(設(shè)計(jì))人: | M·H·道森;P·杜布;L·L·鄺;高雨青;X·R·格林;M·H·T·哈克;伊藤愛;G·約翰遜;N·K·凌;劉巖斌;孟曉橋;P·B·納加拉賈;S·R·西拉姆;譚偉;張立 | 申請(qǐng)(專利權(quán))人: | 國際商業(yè)機(jī)器公司 |
| 主分類號(hào): | G06F9/46 | 分類號(hào): | G06F9/46 |
| 代理公司: | 北京市中咨律師事務(wù)所11247 | 代理人: | 于靜,張亞非 |
| 地址: | 美國*** | 國省代碼: | 暫無信息 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 混合 系統(tǒng) 中的 方法 調(diào)用 優(yōu)先 執(zhí)行 | ||
技術(shù)領(lǐng)域
本申請(qǐng)一般地涉及具有異構(gòu)處理器的計(jì)算機(jī)和混合計(jì)算系統(tǒng),更具體地說,涉及在處理器上執(zhí)行代碼以便提高混合系統(tǒng)中的性能。
背景技術(shù)
計(jì)算系統(tǒng)可以包含異構(gòu)處理器。例如,諸如圖形處理單元(GPU)、現(xiàn)場(chǎng)可編程門陣列(FPGA)之類的通用和專用處理器可以共同組成計(jì)算系統(tǒng)。混合系統(tǒng)的另一個(gè)實(shí)例是來自位于紐約阿蒙克的國際機(jī)器公司的zEnterprise BladeCenter Extension(zBX)基礎(chǔ)架構(gòu),該基礎(chǔ)架構(gòu)包括系統(tǒng)Z196、X86刀片和Power7刀片;Z196和刀片通過專用網(wǎng)絡(luò)連接。隨著處理海量數(shù)據(jù)和嚴(yán)苛CPU周期的商業(yè)工作負(fù)載的出現(xiàn),越來越多的成功應(yīng)用可以受益于在混合系統(tǒng)上運(yùn)行。
在這些混合系統(tǒng)中,數(shù)據(jù)局部性是確定軟件性能的一個(gè)因素。數(shù)據(jù)局部性指應(yīng)用請(qǐng)求的數(shù)據(jù)優(yōu)先地來自使用數(shù)據(jù)的位置的本地文件系統(tǒng)。存在利用數(shù)據(jù)局部性提高分布式軟件性能的已知解決方案。但是,這些解決方案沒有考慮與混合系統(tǒng)關(guān)聯(lián)的其它類型的局部性。
發(fā)明內(nèi)容
可以提供用于在具有異構(gòu)平臺(tái)的混合系統(tǒng)中運(yùn)行分布式程序的方法和系統(tǒng)。在一個(gè)方面,一種用于在具有異構(gòu)平臺(tái)的混合系統(tǒng)中運(yùn)行分布式程序的方法可以包括在處理器上執(zhí)行的程序的運(yùn)行時(shí)中捕獲程序的方法調(diào)用。所述方法還可以包括針對(duì)一種或多種平臺(tái)特定的實(shí)現(xiàn),查找與所捕獲的方法調(diào)用關(guān)聯(lián)的符號(hào)引用。所述方法還可以包括基于與所述一種或多種平臺(tái)特定的實(shí)現(xiàn)關(guān)聯(lián)的親和性度量,從所述一種或多種平臺(tái)特定的實(shí)現(xiàn)中選擇一種平臺(tái)特定的實(shí)現(xiàn),所述親和性度量指示所述一種或多種平臺(tái)特定的實(shí)現(xiàn)在所述混合系統(tǒng)中的相應(yīng)一個(gè)或多個(gè)平臺(tái)上運(yùn)行的高效程度。所述方法還可以包括返回對(duì)所選擇的平臺(tái)特定的實(shí)現(xiàn)的直接引用。所述方法還還可以包括使用所返回的對(duì)所選擇的平臺(tái)特定的實(shí)現(xiàn)的直接引用替換與所捕獲的方法調(diào)用關(guān)聯(lián)的所述符號(hào)引用。
在另一個(gè)方面,一種用于基于親和性的優(yōu)先(preferential)調(diào)用技術(shù)的在具有異構(gòu)平臺(tái)的混合系統(tǒng)中提高分布式應(yīng)用性能的方法可以包括在運(yùn)行時(shí)攔截在處理器上執(zhí)行的程序中的代碼段。所述方法還可以包括確定所述混合系統(tǒng)中用于執(zhí)行所述代碼段的平臺(tái),所述平臺(tái)被確定為在所述混合系統(tǒng)中的多個(gè)平臺(tái)中以最佳效率運(yùn)行所述代碼段。可以在被確定為以最佳效率運(yùn)行所述代碼段的所述平臺(tái)上動(dòng)態(tài)地執(zhí)行所述代碼段。
在一個(gè)方面,一種用于在混合系統(tǒng)中運(yùn)行分布式程序的系統(tǒng)可以包括所述混合系統(tǒng)中運(yùn)行應(yīng)用程序的處理器。基于親和性的優(yōu)先調(diào)用模塊可以可操作以在運(yùn)行時(shí)攔截程序的方法調(diào)用。所述基于親和性的優(yōu)先調(diào)用模塊可以還可操作以針對(duì)一種或多種平臺(tái)特定的實(shí)現(xiàn),查找與所捕獲的方法調(diào)用關(guān)聯(lián)的符號(hào)引用。所述基于親和性的優(yōu)先調(diào)用模塊可以還可操作以基于與所述一種或多種平臺(tái)特定的實(shí)現(xiàn)關(guān)聯(lián)的親和性度量,從所述一種或多種平臺(tái)特定的實(shí)現(xiàn)中選擇一種平臺(tái)特定的實(shí)現(xiàn)。所述親和性度量指示所述一種或多種平臺(tái)特定的實(shí)現(xiàn)在所述混合系統(tǒng)中的相應(yīng)一個(gè)或多個(gè)平臺(tái)上運(yùn)行的高效程度。所述基于親和性的優(yōu)先調(diào)用模塊可以還可操作以使用對(duì)所選擇的平臺(tái)特定的實(shí)現(xiàn)的直接引用替換與所捕獲的方法調(diào)用關(guān)聯(lián)的所述符號(hào)引用。
還可以提供一種存儲(chǔ)指令程序的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述指令程序可由機(jī)器執(zhí)行以便執(zhí)行在此描述的一種或多種方法。
下面參考附圖詳細(xì)描述各種實(shí)施例的進(jìn)一步特性以及結(jié)構(gòu)和操作。在附圖中,相同的參考標(biāo)號(hào)指示相同或功能類似的元件。
附圖說明
圖1示出本公開的一個(gè)實(shí)施例中的優(yōu)先方法調(diào)用的一個(gè)具體實(shí)例;
圖2示出本公開的一個(gè)實(shí)施例中的親和性表的一個(gè)實(shí)例數(shù)據(jù)結(jié)構(gòu);
圖3示出其中將一個(gè)實(shí)施例中的本公開的優(yōu)先方法調(diào)用應(yīng)用于JavaTM加速原型的一個(gè)實(shí)例方案;
圖4示出可以利用本公開的優(yōu)先方法調(diào)用的另一個(gè)實(shí)例方案;
圖5示出其中在運(yùn)行時(shí)將數(shù)學(xué)密集型功能卸載到Power平臺(tái)的一個(gè)實(shí)例方案;
圖6示出可以在本公開的一個(gè)實(shí)施例中實(shí)現(xiàn)優(yōu)先方法執(zhí)行系統(tǒng)的一個(gè)實(shí)例計(jì)算機(jī)或處理系統(tǒng)的示意圖。
具體實(shí)施方式
在本公開中,混合系統(tǒng)通常指包含通用和專用計(jì)算平臺(tái)的異構(gòu)分布式系統(tǒng)。因?yàn)榛旌舷到y(tǒng)可以用作靈活平臺(tái)以便在性價(jià)比方面優(yōu)化工作負(fù)載,所以軟件應(yīng)用可以受益于在混合系統(tǒng)中運(yùn)行。例如,對(duì)于在上運(yùn)行的應(yīng)用,盡管在安全性和可靠性方面具有優(yōu)先級(jí)的組件可以放在Z196芯片上,但在計(jì)算方面具有優(yōu)先級(jí)的組件可以放在X86或Power7微處理器刀片上。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于國際商業(yè)機(jī)器公司,未經(jīng)國際商業(yè)機(jī)器公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201380013717.3/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 一種數(shù)據(jù)庫讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





