[發明專利]在不同類型線程中分配內核資源的方法、裝置及其處理器有效
| 申請號: | 201310619787.5 | 申請日: | 2013-11-29 |
| 公開(公告)號: | CN103617088B | 公開(公告)日: | 2018-07-24 |
| 發明(設計)人: | 梅思行;廖暢;盧佳文;冀謙祥 | 申請(專利權)人: | 深圳中微電科技有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50 |
| 代理公司: | 深圳市科吉華烽知識產權事務所(普通合伙) 44248 | 代理人: | 劉顯揚 |
| 地址: | 518057 廣東省深圳市南山區高*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 處理器 不同類型 線程 分配 內核 資源 方法 裝置 及其 | ||
1.一種在處理器不同類型線程中分配內核資源的方法,其特征在于,所述處理器中并行運行CPU任務和GPU任務,所述CPU任務由操作系統分解為CPU線程并分配內核進行處理,所述CPU線程還登記到用于控制處理GPU線程的硬件線程管理單元中,GPU任務被分解為GPU線程并登記排列在所述硬件線程管理單元中等待分配內核進行處理;所述方法還包括如下步驟:
A)判斷所述硬件線程管理單元中登記的總的線程數量是否大于由所述操作系統登記到所述硬件線程管理單元中的CPU線程數量,如是,執行步驟B);否則,返回處理CPU線程;
B)分配空閑的內核對所述登記在硬件線程管理單元中的GPU線程進行處理,當空閑線程分配完且有CPU線程釋放其內核時,該內核直接由硬件線程管理單元控制,并配置給在所述硬件線程管理單元中等待的GPU線程。
2.根據權利要求1所述的在處理器不同類型線程中分配內核資源的方法,其特征在于,還包括如下步驟:
C)當在所述硬件線程管理單元中等待的GPU線程執行完成或所述GPU線程需要返回數據到操作系統時,當前所述CPU線程返回的內核由所述操作系統分配,不再直接由硬件線程管理單元控制。
3.根據權利要求2所述的在處理器不同類型線程中分配內核資源的方法,其特征在于,UPU在上電引導之后,分配設定數量的內核用于操作系統控制的CPU線程;每個線程在運行時均在所述硬件線程管理單元中登記;
其中,所述UPU是在CPU任務和GPU任務之間動態共享其硬件資源的處理器。
4.根據權利要求3所述的在處理器不同類型的線程中分配內核資源的方法,其特征在于,所述設定數量為UPU內核總數的一半。
5.根據權利要求4所述的在處理器不同類型線程中分配內核資源的方法,其特征在于,所述GPU任務通過GPU API或GPU DRIVER產生多個在硬件線程管理單元中等待的GPU線程,所述GPU線程同時登記在硬件線程管理單元中。
6.根據權利要求5所述的在處理器不同類型線程中分配內核資源的方法,其特征在于,所述步驟A)中,包括比較由所述操作系統登記到所述硬件線程管理單元的有效CPU線程數量和登記到所述硬件線程管理單元的總的有效線程數量是否相等。
7.一種實現如權利要求1所述方法的在處理器不同類型線程中分配內核資源的裝置,其特征在于,所述處理器中并行運行CPU任務和GPU任務,所述CPU任務由操作系統分解為CPU線程并分配內核進行處理,所述CPU線程還登記到用于控制處理GPU線程的硬件線程管理單元中,GPU任務被分解為GPU線程并登記排列在所述硬件線程管理單元中等待分配內核進行處理;所述裝置包括:
線程數量判斷模塊:用于判斷所述硬件線程管理單元中登記的總的線程數量是否大于由所述操作系統登記到所述硬件線程管理單元中的CPU線程數量,如是,調用空閑線程分配模塊;
空閑線程分配模塊:用于分配空閑的內核對所述登記在硬件線程管理單元中的GPU線程進行處理,當空閑線程分配完且有CPU線程釋放其內核時,該內核直接由硬件線程管理單元控制,并配置給在所述硬件線程管理單元中等待的GPU線程。
8.根據權利要求7所述的裝置,其特征在于,還包括線程釋放判斷模塊,用于當在所述硬件線程管理單元中等待的GPU線程執行完成或所述GPU線程需要返回數據到操作系統時,當前所述CPU線程返回的內核由所述操作系統分配,不再直接由硬件線程管理單元控制。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳中微電科技有限公司,未經深圳中微電科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310619787.5/1.html,轉載請聲明來源鉆瓜專利網。





