[發(fā)明專利]計算任務(wù)狀態(tài)封裝無效
| 申請?zhí)枺?/td> | 201210448677.2 | 申請日: | 2012-11-09 |
| 公開(公告)號: | CN103207810A | 公開(公告)日: | 2013-07-17 |
| 發(fā)明(設(shè)計)人: | 杰爾姆·F·小杜魯克;蘭基·V·姍;肖恩·J·特賴希勒 | 申請(專利權(quán))人: | 輝達(dá)公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46;G06F9/48 |
| 代理公司: | 北京市磐華律師事務(wù)所 11336 | 代理人: | 徐丁峰;謝栒 |
| 地址: | 美國加利*** | 國省代碼: | 美國;US |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 計算 任務(wù) 狀態(tài) 封裝 | ||
技術(shù)領(lǐng)域
本發(fā)明總地涉及計算任務(wù)的執(zhí)行,并且更具體地涉及對計算任務(wù)狀態(tài)的封裝。
背景技術(shù)
在多處理器系統(tǒng)中計算任務(wù)的傳統(tǒng)執(zhí)行從命令流接收處理任務(wù),其對狀態(tài)信息進(jìn)行編碼以配置與將要處理的數(shù)據(jù)交織的多個處理器。按照數(shù)據(jù)出現(xiàn)在流中的順序處理所述數(shù)據(jù)。當(dāng)流中后面的數(shù)據(jù)的處理與完成對流中早先的數(shù)據(jù)的處理無關(guān)時,與數(shù)據(jù)出現(xiàn)在流中的順序相比所述數(shù)據(jù)可被無序地處理。好處在于當(dāng)充足的處理資源可用于多個處理任務(wù)時可并發(fā)地執(zhí)行非相關(guān)處理任務(wù)。
因此,本領(lǐng)域所需要的是一種用于封裝計算任務(wù)狀態(tài)以實現(xiàn)計算任務(wù)的無序(out-of-order)調(diào)度和執(zhí)行的系統(tǒng)和方法。
發(fā)明內(nèi)容
一種用于封裝計算任務(wù)狀態(tài)的系統(tǒng)和方法實現(xiàn)了計算任務(wù)的無序調(diào)度和執(zhí)行。調(diào)度電路基于優(yōu)先級把計算任務(wù)組織成組。然后可使用不同的調(diào)度方案來選擇計算任務(wù)用于執(zhí)行。每個組被維持作為指向計算任務(wù)的指針的鏈表,所述計算任務(wù)被編碼為存儲在存儲器中的任務(wù)元數(shù)據(jù)(TMD)。TMD封裝那些為初始化、調(diào)度和執(zhí)行計算任務(wù)所需的狀態(tài)和參數(shù)。
用于封裝計算任務(wù)的本發(fā)明的方法的多個實施例包括分配用于存儲任務(wù)元數(shù)據(jù)結(jié)構(gòu)的存儲器。所述方法還包括:在所述任務(wù)元數(shù)據(jù)結(jié)構(gòu)中存儲初始化參數(shù),所述初始化參數(shù)配置流多處理器以執(zhí)行計算任務(wù);在所述任務(wù)元數(shù)據(jù)結(jié)構(gòu)中存儲調(diào)度參數(shù),所述調(diào)度參數(shù)控制所述計算任務(wù)的調(diào)度;在所述任務(wù)元數(shù)據(jù)結(jié)構(gòu)中存儲執(zhí)行參數(shù),所述執(zhí)行參數(shù)控制流多處理器對所述計算任務(wù)的執(zhí)行;以及執(zhí)行所述計算任務(wù)。
本發(fā)明的多個實施例包括一種用于封裝計算任務(wù)的系統(tǒng),所述系統(tǒng)包括:存儲器,被配置成存儲對應(yīng)于所述計算任務(wù)的任務(wù)元數(shù)據(jù)結(jié)構(gòu);以及多線程處理器。多線程處理器被配置成:分配所述存儲器的一部分來存儲所述任務(wù)元數(shù)據(jù)結(jié)構(gòu);在所述任務(wù)元數(shù)據(jù)結(jié)構(gòu)中存儲初始化參數(shù),所述初始化參數(shù)配置流多處理器以執(zhí)行計算任務(wù);在所述任務(wù)元數(shù)據(jù)結(jié)構(gòu)中存儲調(diào)度參數(shù),所述調(diào)度參數(shù)控制所述計算任務(wù)的調(diào)度;以及在所述任務(wù)元數(shù)據(jù)結(jié)構(gòu)中存儲執(zhí)行參數(shù),所述執(zhí)行參數(shù)控制多線程處理器對所述計算任務(wù)的執(zhí)行。多線程處理器還被配置成執(zhí)行所述計算任務(wù)。
計算任務(wù)到TMD中的封裝實現(xiàn)了計算任務(wù)的調(diào)度以無序執(zhí)行。另外,計算任務(wù)可并發(fā)地執(zhí)行,并且控制計算任務(wù)的執(zhí)行的參數(shù)可被編碼在TMD中。初始化和執(zhí)行調(diào)度參數(shù)被用來配置流多處理器和存儲器資源以執(zhí)行每個TMD。
附圖說明
因此,可以詳細(xì)地理解上述列舉的本發(fā)明的特征,并且可以參考實施例得到對如上面所概括的本發(fā)明更具體的描述,其中一些實施例在附圖中示出。然而,應(yīng)該注意的是,附圖僅示出了本發(fā)明的典型實施例,因此不應(yīng)被認(rèn)為是對其范圍的限制,因為本發(fā)明可以承認(rèn)其他等效的實施例。
圖1是示出了經(jīng)配置以實現(xiàn)本發(fā)明一個或多個方面的計算機(jī)系統(tǒng)的框圖;
圖2是根據(jù)本發(fā)明一個實施例的用于圖1的計算機(jī)系統(tǒng)的并行處理子系統(tǒng)的框圖;
圖3是根據(jù)本發(fā)明一個實施例的圖2的任務(wù)/工作單元的框圖;
圖4A是根據(jù)本發(fā)明的一個實施例的圖3的任務(wù)/工作單元的另一個框圖;
圖4B示出了根據(jù)本發(fā)明的一個實施例的用于在圖4A的任務(wù)元數(shù)據(jù)(TMD)緩存中加載條目的方法的流程圖;
圖5A是根據(jù)本發(fā)明的一個實施例的圖3和4A的TMD的內(nèi)容的示意圖;
圖5B示出了根據(jù)本發(fā)明的一個實施例的指向圖5A的隊列的條目的指針;
圖6示出了根據(jù)本發(fā)明的一個實施例的用于在圖3、4A和5的柵格(grid)TMD中封裝計算任務(wù)狀態(tài)的方法;以及
圖7示出了根據(jù)本發(fā)明的一個實施例的用于在圖3、4A和5的隊列TMD中封裝計算任務(wù)狀態(tài)的方法。
具體實施方式
在下面的描述中,將闡述大量的具體細(xì)節(jié)以提供對本發(fā)明更透徹的理解。然而,對本領(lǐng)域的技術(shù)人員顯而易見的是本發(fā)明可以在沒有一個或多個這些具體細(xì)節(jié)的情況下得以實施。在其他例子中,沒有描述公知的特征以避免對本發(fā)明造成混淆。
系統(tǒng)概述
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于輝達(dá)公司,未經(jīng)輝達(dá)公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210448677.2/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 任務(wù)協(xié)作裝置及方法
- 用于量化任務(wù)價值的任務(wù)管理方法及裝置
- 用于運行任務(wù)的系統(tǒng)、方法和裝置
- 一種分布式任務(wù)調(diào)度系統(tǒng)及方法
- 任務(wù)信息處理方法
- 一種同步任務(wù)異步執(zhí)行的方法和調(diào)度系統(tǒng)
- 數(shù)據(jù)處理方法、裝置、電子設(shè)備及計算機(jī)可讀介質(zhì)
- 一種自動分配和推送的任務(wù)管理平臺及方法
- 程序執(zhí)行控制的裝置及方法、終端和存儲介質(zhì)
- 基于會話的任務(wù)待辦方法、系統(tǒng)、電子設(shè)備及存儲介質(zhì)





