[發(fā)明專利]批量同步圖形處理單元編程無(wú)效
| 申請(qǐng)?zhí)枺?/td> | 200980134286.X | 申請(qǐng)日: | 2009-06-26 |
| 公開(公告)號(hào): | CN102132249A | 公開(公告)日: | 2011-07-20 |
| 發(fā)明(設(shè)計(jì))人: | K·周;H·齊明;B·郭 | 申請(qǐng)(專利權(quán))人: | 微軟公司 |
| 主分類號(hào): | G06F9/44 | 分類號(hào): | G06F9/44;G06F9/38;G06F15/76 |
| 代理公司: | 上海專利商標(biāo)事務(wù)所有限公司 31100 | 代理人: | 陳斌 |
| 地址: | 美國(guó)華*** | 國(guó)省代碼: | 美國(guó);US |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 批量 同步 圖形 處理 單元 編程 | ||
1.一種在計(jì)算環(huán)境中的方法,包括:
檢測(cè)批量同步程序中的壁壘(102),每一壁壘定界超級(jí)步;以及
將所述超級(jí)步編譯(108)成供圖形處理單元(104)執(zhí)行的流代碼內(nèi)核(1061-106n)。
2.如權(quán)利要求1所述的方法,其特征在于,編譯所述超級(jí)步包括在每一壁壘處添加保存線程上下文的代碼。
3.如權(quán)利要求1所述的方法,其特征在于,所述編譯還包括使用分配的臨時(shí)流組合所述內(nèi)核中的至少一些。
4.如權(quán)利要求3所述的方法,其特征在于,使用分配的臨時(shí)流包括采用圖優(yōu)化方案。
5.如權(quán)利要求1所述的方法,其特征在于,還包括提供將線程的總數(shù)用作參數(shù)來(lái)執(zhí)行GPU代碼塊的spaWn語(yǔ)句。
6.如權(quán)利要求1所述的方法,其特征在于,還包括提供用于將控制處理器代碼插入包含超級(jí)步的require構(gòu)造,所述require構(gòu)造用于在啟動(dòng)所述包含超級(jí)步之前執(zhí)行所述控制處理器代碼。
7.如權(quán)利要求1所述的方法,其特征在于,還包括提供在所述批量同步程序中使用來(lái)指定獨(dú)立的語(yǔ)句塊的par構(gòu)造。
8.如權(quán)利要求1所述的方法,其特征在于,還包括提供在所述批量同步程序中使用的一組原語(yǔ),包括提供數(shù)據(jù)并行原語(yǔ)、等級(jí)調(diào)整原語(yǔ)、或線程操縱原語(yǔ),或數(shù)據(jù)并行原語(yǔ)、等級(jí)調(diào)整原語(yǔ)或線程操縱原語(yǔ)的任意組合。
9.如權(quán)利要求8所述的方法,其特征在于,提供所述一組原語(yǔ)包括提供reduce原語(yǔ),scan原語(yǔ),compact原語(yǔ),split原語(yǔ)或sort原語(yǔ),或reduce、scan、compact、split或sort原語(yǔ)的任意組合。
10.如權(quán)利要求8所述的方法,其特征在于,提供一組原語(yǔ)包括提供用于拆分線程的原語(yǔ)、用于對(duì)線程排序的原語(yǔ),或用于拆分線程的原語(yǔ)和用于對(duì)線程排序的原語(yǔ)兩者。
11.如權(quán)利要求8所述的方法,其特征在于,提供一組原語(yǔ)包括提供用于銷毀線程的原語(yǔ)、用于分叉線程的原語(yǔ),或用于銷毀線程的原語(yǔ)和用于分叉線程的原語(yǔ)兩者。
12.如權(quán)利要求1所述的方法,其特征在于,編譯所述超級(jí)步包括:內(nèi)聯(lián)對(duì)包含壁壘的函數(shù)的調(diào)用,執(zhí)行優(yōu)化來(lái)降低數(shù)據(jù)依賴性,將CPU代碼和GPU代碼分開并生成內(nèi)核和內(nèi)核啟動(dòng)代碼,將對(duì)CPU變量的引用轉(zhuǎn)換為內(nèi)核參數(shù),尋找在定義超級(jí)步外部使用的值并生成保存和加載這些值的代碼,以及生成臨時(shí)流分配。
13.一種在計(jì)算環(huán)境中的系統(tǒng),包括編譯器(108),所述編譯器(108)基于壁壘同步來(lái)將包括語(yǔ)句、構(gòu)造和原語(yǔ)的源代碼處理成流內(nèi)核(1061-106n),并且將所述內(nèi)核組合成能被配置成供圖形處理單元(104)執(zhí)行的代碼。
14.如權(quán)利要求13所述的系統(tǒng),其特征在于,所述語(yǔ)句中的一個(gè)包括用于在所述源代碼中定界超級(jí)步的barrier語(yǔ)句,并且所述構(gòu)造中的一個(gè)包括用于在所述源代碼中將控制處理器代碼插入包含超級(jí)步中的require構(gòu)造,所述編譯器編譯所述源代碼以便在啟動(dòng)對(duì)應(yīng)于所述包含超級(jí)步的指令之前執(zhí)行對(duì)應(yīng)于所述控制處理器代碼的指令。
15.如權(quán)利要求13所述的系統(tǒng),其特征在于,所述原語(yǔ)包括reduce原語(yǔ),scan原語(yǔ),compact原語(yǔ),split原語(yǔ)或sort原語(yǔ),用于拆分線程的原語(yǔ),用于對(duì)線程排序的原語(yǔ),用于銷毀線程的原語(yǔ)或用于分叉線程的原語(yǔ),或reduce原語(yǔ)、scan原語(yǔ)、compact原語(yǔ)、split原語(yǔ)或sort原語(yǔ)、用于拆分線程的原語(yǔ)、用于對(duì)線程排序的原語(yǔ)、用于銷毀線程的原語(yǔ)或用于分叉線程的原語(yǔ)的任意組合。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于微軟公司,未經(jīng)微軟公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200980134286.X/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。





