[發(fā)明專利]執(zhí)行資源的動態(tài)分區(qū)有效
| 申請?zhí)枺?/td> | 201910100193.0 | 申請日: | 2019-01-31 |
| 公開(公告)號: | CN110096341B | 公開(公告)日: | 2023-07-11 |
| 發(fā)明(設(shè)計(jì))人: | 杰爾姆·F·小杜魯克;盧克·杜蘭特;R·M·納瓦羅;A·梅內(nèi)塞斯;杰夫·塔基;廣田源太郎;貝里安·帕里斯 | 申請(專利權(quán))人: | 輝達(dá)公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46;G06F9/50 |
| 代理公司: | 北京市磐華律師事務(wù)所 11336 | 代理人: | 高偉;趙楠 |
| 地址: | 美國加利*** | 國省代碼: | 暫無信息 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 執(zhí)行 資源 動態(tài) 分區(qū) | ||
本發(fā)明公開了執(zhí)行資源的動態(tài)分區(qū)。本發(fā)明的實(shí)施例提供用以向在圖形處理單元中的線程組分配執(zhí)行資源的技術(shù)。包括在所述圖形處理單元中的計(jì)算工作分配器接收來自進(jìn)程的指示,其指示將啟動第一線程組。計(jì)算工作分配器確定與所述進(jìn)程相關(guān)聯(lián)的第一子上下文具有至少一個處理器信用。在一些實(shí)施例中,如果TPC中的一個已經(jīng)獲取了充足的空間,即使在沒有處理器信用的情況下也可以啟動CTA。計(jì)算工作分配器標(biāo)識第一處理器,其包括在多個處理器中并具有的處理負(fù)載小于或等于與包括在多個處理器中的其他處理器相關(guān)聯(lián)的處理器負(fù)載。計(jì)算工作分配器啟動所述第一線程組以在所述第一處理器上執(zhí)行。
背景技術(shù)
技術(shù)領(lǐng)域
本發(fā)明的實(shí)施例一般地涉及計(jì)算機(jī)處理;并且,更具體地說,涉及對執(zhí)行資源的動態(tài)分區(qū)。
相關(guān)技術(shù)描述
現(xiàn)代圖形處理單元(GPU)通常被配置成并行執(zhí)行大量線程。在這樣做時,通常將GPU限制為總是在一個上下文中操作,其中所有線程在相同的上下文下執(zhí)行。這一限制意味著,在特定時間執(zhí)行的所有線程共享相同的GPU狀態(tài)和相同的虛擬地址空間。這種操作模型適用于展現(xiàn)大量并行性的進(jìn)程,其中該進(jìn)程可以利用GPU的大部分可用處理資源。然而,許多應(yīng)用程序執(zhí)行多個進(jìn)程,其中每個進(jìn)程僅表現(xiàn)足夠的并行性以利用GPU的一小部分可用處理資源,并且每個進(jìn)程需要不同的GPU狀態(tài)和不同的虛擬地址空間。因此,執(zhí)行多個進(jìn)程的應(yīng)用程序經(jīng)常在GPU上低效運(yùn)行。
為了解決該問題,一些GPU執(zhí)行模型在單一上下文中操作,其中該上下文具有多個子上下文,并且將每個子上下文指派給不同的進(jìn)程。在這種方法中,所有子上下文在相同的上下文中操作,但是每個子上下文具有不同的GPU狀態(tài)和不同的虛擬地址空間。在一個特定實(shí)現(xiàn)中,將每個子上下文靜態(tài)地指派給一個或更多個特定紋理處理集群(TPC),其中每個TPC包括兩個或更多個流多處理器(SM),從而使每個TPC能夠同時執(zhí)行指定數(shù)量的線程。此外,將被保留用作本地線程存儲器的每個子上下文的虛擬地址空間的子集被靜態(tài)地指派給允許子上下文使用的每個TPC。
上述實(shí)現(xiàn)的一個缺點(diǎn)是將TPC和存儲器空間指派給與不同進(jìn)程相關(guān)聯(lián)的不同子上下文的過程是靜態(tài)的,這限制了系統(tǒng)跨不同TPC和存儲器資源進(jìn)行負(fù)載均衡的能力。除此之外,與不同子上下文相關(guān)聯(lián)的不同進(jìn)程可能需要不同量的處理和存儲器資源。此外,特定進(jìn)程的處理和存儲器要求可以隨時間改變。但是,由于分配給不同子上下文的TPC和所指派的存儲器是靜態(tài)的,因此隨著條件或要求的變化,不能增加或減少這些資源。例如,在指派給一組負(fù)載很重的TPC的子上下文中執(zhí)行的進(jìn)程可以啟動新的協(xié)作線程陣列(CTA)。但是,新的CTA只能在一組高負(fù)載的TPC集上啟動,因?yàn)槟切㏕PC是分配給該進(jìn)程的TPC,即使分配給其他進(jìn)程的其他TPC更輕載或空閑。因此,將資源靜態(tài)劃分到不同的子上下文也可能導(dǎo)致對GPU資源的低效分配和執(zhí)行。
如前所述,本領(lǐng)域需要在處理器內(nèi)更有效地分配執(zhí)行資源的技術(shù)。
發(fā)明內(nèi)容
本發(fā)明的實(shí)施例闡述了一種用于將執(zhí)行資源分配給圖形處理單元內(nèi)的線程組的計(jì)算機(jī)實(shí)現(xiàn)的方法。該方法包括從進(jìn)程接收將要啟動第一組線程的指示。該方法進(jìn)一步包括確定與該過程相關(guān)聯(lián)的第一子上下文具有至少一個處理器信用。該方法進(jìn)一步包括標(biāo)識包括在多個處理器中的第一處理器,該第一處理器的處理負(fù)載小于或等于與包括在多個處理器中的所有其他處理器相關(guān)聯(lián)的處理器負(fù)載。該方法進(jìn)一步包括啟動第一組線程以在第一處理器上執(zhí)行。
本發(fā)明的實(shí)施例提出了一種用于將本地存儲器指派給圖形處理單元內(nèi)的線程組的計(jì)算機(jī)實(shí)現(xiàn)的方法。該方法包括接收已經(jīng)指派與第一子上下文相關(guān)聯(lián)的單一線程組在第一處理器上執(zhí)行的指示。該方法進(jìn)一步包括標(biāo)識在對應(yīng)于第一子上下文的本地存儲器塊指派表中的第一記錄。該方法進(jìn)一步包括標(biāo)識當(dāng)前未指派的第一本地存儲器塊。該方法進(jìn)一步包括在第一記錄中存儲第一值,該第一值指示第一本地存儲器塊被指派給第一子上下文和第一處理器。
本發(fā)明的其他實(shí)施例包括但不限于用于執(zhí)行所公開技術(shù)的一個或更多個方面的并行處理子系統(tǒng),以及用于執(zhí)行所公開技術(shù)的一個或更多個方面的系統(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/201910100193.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 以注射方式執(zhí)行死刑的自動執(zhí)行車的執(zhí)行床
- 過程執(zhí)行裝置、過程執(zhí)行方法以及過程執(zhí)行程序
- 用以執(zhí)行跳舞電子游戲的執(zhí)行系統(tǒng)及其執(zhí)行方法
- 策略執(zhí)行系統(tǒng)及其執(zhí)行方法
- 腳本執(zhí)行系統(tǒng)和腳本執(zhí)行方法
- 命令執(zhí)行設(shè)備、命令執(zhí)行系統(tǒng)、命令執(zhí)行方法以及命令執(zhí)行程序
- 程序執(zhí)行裝置、程序執(zhí)行系統(tǒng)以及程序執(zhí)行方法
- 處理執(zhí)行設(shè)備和由該處理執(zhí)行設(shè)備執(zhí)行的方法
- 有序任務(wù)的執(zhí)行方法、執(zhí)行裝置和執(zhí)行系統(tǒng)
- 執(zhí)行器(閥門執(zhí)行器)
- 動態(tài)矢量譯碼方法和動態(tài)矢量譯碼裝置
- 動態(tài)口令的顯示方法及動態(tài)令牌
- 動態(tài)庫管理方法和裝置
- 動態(tài)令牌的身份認(rèn)證方法及裝置
- 令牌、動態(tài)口令生成方法、動態(tài)口令認(rèn)證方法及系統(tǒng)
- 一種動態(tài)模糊控制系統(tǒng)
- 一種基于動態(tài)信號的POS機(jī)和安全保護(hù)方法
- 圖像動態(tài)展示的方法、裝置、系統(tǒng)及介質(zhì)
- 一種基于POS機(jī)聚合碼功能分離顯示動態(tài)聚合碼的系統(tǒng)
- 基于動態(tài)口令的身份認(rèn)證方法、裝置和動態(tài)令牌





