亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

在處理器不同類型線程中分配內(nèi)核資源的方法、裝置及其處理器的制造方法

文檔序號:6521110閱讀:243來源:國知局
在處理器不同類型線程中分配內(nèi)核資源的方法、裝置及其處理器的制造方法
【專利摘要】本發(fā)明涉及一種在處理器不同類型線程中分配內(nèi)核資源的方法,所述方法還包括如下步驟:判斷所述硬件線程管理單元中登記的線程數(shù)量是否大于由所述操作系統(tǒng)登記到所述硬件線程管理單元中的線程數(shù)量,如是,執(zhí)行步驟B);否則,返回;分配空閑的內(nèi)核對所述登記在硬件線程管理單元中的GPU線程進行處理,當(dāng)空閑線程分配完且有CPU線程釋放其內(nèi)核時,該內(nèi)核直接由硬件線程管理單元控制,并配置給在所述硬件線程管理單元中等待的GPU線程。本發(fā)明還涉及一種實現(xiàn)上述方法的裝置及其處理器。實施本發(fā)明的在處理器不同類型線程中分配內(nèi)核資源的方法、裝置及其處理器,具有以下有益效果:使得不同類型的線程之間能夠到達動態(tài)的負(fù)載平衡。
【專利說明】在處理器不同類型線程中分配內(nèi)核資源的方法、裝置及其處理器
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及處理器,更具體地說,涉及一種在處理器不同類型線程中分配內(nèi)核資源的方法、裝置及其處理器。
【背景技術(shù)】
[0002]在典型的多功能計算機平臺(處理器)中,CPU和GPU是單獨的硬件,其間通過并行的總線連接,并分別通過各自的軟件驅(qū)動。這兩個硬件之間,對于一個或多個任務(wù)而言,并沒有共享的成分。這是由于這兩個硬件是單獨的。當(dāng)執(zhí)行一個CPU任務(wù)時(這些任務(wù)最后將分解為線程執(zhí)行),由該CPU的操作系統(tǒng)對其進行操作;當(dāng)執(zhí)行一個GPU任務(wù)(這些任務(wù)最后同樣將分解為線程執(zhí)行),由該GPU內(nèi)部的硬件控制執(zhí)行。因此,在傳統(tǒng)的多功能計算機平臺上,可能出現(xiàn)上述CPU和GPU中任何一個較忙,而另一個空閑的狀態(tài)。這使得其出現(xiàn)在不同類型的線程之間負(fù)載不平衡的情況。

【發(fā)明內(nèi)容】

[0003]本發(fā)明要解決的技術(shù)問題在于,針對現(xiàn)有技術(shù)的上述在不同類型的任務(wù)或線程之間出現(xiàn)負(fù)載不平衡的缺陷,提供一種在不同的任務(wù)或線程之間達到較好的負(fù)載平衡的在處理器不同類型線程中分配內(nèi)核資源的方法、裝置及其處理器。
[0004]本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:構(gòu)造一種在處理器不同類型線程中分配內(nèi)核資源的方法,所述處理器中并行運行CPU任務(wù)和GPU任務(wù),所述CPU任務(wù)由操作系統(tǒng)分解為CPU線程并分配內(nèi)核進行處理,所述CPU線程還登記到用于控制處理GPU線程的硬件線程管理單元中,GPU任務(wù)被分解為GPU線程并登記排列在所述硬件線程管理單元中等待分配內(nèi)核進行處理;所述方法還包括如下步驟:
A)判斷所述硬件線程管理單元中登記的線程數(shù)量是否大于由所述操作系統(tǒng)登記到所述硬件線程管理單元中的線程數(shù)量,如是,執(zhí)行步驟B);否則,返回處理CPU線程;
B)分配空閑的內(nèi)核對所述登記在硬件線程管理單元中的GPU線程進行處理,當(dāng)空閑線程分配完且有CPU線程釋放其內(nèi)核時,該內(nèi)核直接由硬件線程管理單元控制,并配置給在所述硬件線程管理單元中等待的GPU線程。
[0005]更進一步地,還包括如下步驟:
C)當(dāng)在所述硬件線程管理單元中等待的GPU線程執(zhí)行完成或所述GPU線程需要返回數(shù)據(jù)到操作系統(tǒng)時,當(dāng)前所述CPU線程返回的內(nèi)核由所述操作系統(tǒng)分配,不再直接由在硬件線程管理單元控制。
[0006]更進一步地,所述UPU在上電引導(dǎo)之后,分配設(shè)定數(shù)量的內(nèi)核用于操作系統(tǒng)控制的CPU線程;每個線程在運行時均在所述硬件線程管理單元中登記。
[0007]更進一步地,所述設(shè)定數(shù)量為UPU內(nèi)核總數(shù)的一半。
[0008]更進一步地,所述GPU任務(wù)通過GPU API或GPU DRIVER產(chǎn)生多個在硬件線程管理單元中等待的GPU線程,所述GPU線程同時登記在硬件線程管理單元中。
[0009]更進一步地,所述步驟A)中,包括比較由所述操作系統(tǒng)登記到所述硬件線程管理單元的有效線程數(shù)量和登記到所述硬件線程管理單元的總的有效線程數(shù)量是否相等。
[0010]本發(fā)明還涉及一種實現(xiàn)上述方法的裝置,所述處理器中并行運行CPU任務(wù)和GPU任務(wù),所述CPU任務(wù)由操作系統(tǒng)分解為CPU線程并分配內(nèi)核進行處理,所述CPU線程還登記到用于控制處理GPU線程的硬件線程管理單元中,GPU任務(wù)被分解為GPU線程并登記排列在所述硬件線程管理單元中等待分配內(nèi)核進行處理;所述裝置包括:
線程數(shù)量判斷模塊:用于判斷所述硬件線程管理單元中登記的線程數(shù)量是否大于由所述操作系統(tǒng)登記到所述硬件線程管理單元中的線程數(shù)量,如是,調(diào)用空閑線程分配模塊;空閑線程分配模塊:用于分配空閑的內(nèi)核對所述登記在硬件線程管理單元中的GPU線程進行處理,當(dāng)空閑線程分配完且有CPU線程釋放其內(nèi)核時,該內(nèi)核直接由硬件線程管理單元控制,并配置給在所述硬件線程管理單元中等待的GPU線程。
[0011]更進一步地,還包括線程釋放判斷模塊,用于當(dāng)在所述硬件線程管理單元中等待的GPU線程執(zhí)行完成或所述GPU線程需要返回數(shù)據(jù)到操作系統(tǒng)時,當(dāng)前所述CPU線程返回的內(nèi)核由所述操作系統(tǒng)分配,不再直接由硬件線程管理單元控制。
[0012]更近一步地,還包括初始CPU線程設(shè)置模塊和GPU線程產(chǎn)生模塊;所述初始CPU線程設(shè)置模塊用于在UPU在上電引導(dǎo)之后,分配設(shè)定數(shù)量的內(nèi)核用于操作系統(tǒng)控制的CPU線程;每個線程在運行時均在所述硬件線程管理單元中登記;所述GPU線程產(chǎn)生模塊用于GPU任務(wù)通過GPU API或GPU DRIVER產(chǎn)生多個在硬件線程管理單元中等待的GPU線程,所述GPU線程同時登記在硬件線程管理單元中。
[0013]本發(fā)明還涉及一種處理器,所述處理器為在CPU任務(wù)和GPU任務(wù)之間動態(tài)共享其硬件資源的UPU,所述處理器采用上述方法中的任意一項分配其內(nèi)核資源。
[0014]實施本發(fā)明的在處理器不同類型線程中分配內(nèi)核資源的方法、裝置及其處理器,具有以下有益效果:由于在處理器上電時,所有的內(nèi)核資源均由操作系統(tǒng)控制,且在GPU線程出現(xiàn)時分配一定數(shù)量的內(nèi)核資源對所述GPU線程進行處理;同時,在GPU線程隊列不斷增加的情況下,使用原先配置到CPU線程的內(nèi)核資源對GPU線程進行處理,使得整個處理器的內(nèi)核資源在GPU線程和CPU線程之間動態(tài)地配置,從而使得不同類型的線程之間能夠到達動態(tài)的負(fù)載平衡。
【專利附圖】

【附圖說明】
[0015]圖1是本發(fā)明在處理器不同類型線程中分配內(nèi)核資源的方法、裝置及其處理器實施例中分配內(nèi)核的方法流程圖;
圖2是所述實施例中登記的線程示意圖;
圖3是所述實施例中裝置結(jié)構(gòu)示意圖。
【具體實施方式】
[0016]下面將結(jié)合附圖對本發(fā)明實施例作進一步說明。
[0017]如圖1所示,在本發(fā)明的在處理器不同類型線程中分配內(nèi)核資源的方法、裝置及其處理器實施例中,該在處理器不同類型線程中分配內(nèi)核資源的方法包括如下步驟: 步驟SlOl處理器上電、引導(dǎo),操作系統(tǒng)控制所有內(nèi)核資源:在本實施例中,處理器中具有多個獨立的內(nèi)核(由硬件構(gòu)成的、用于對線程進行計算或處理的內(nèi)核),這些內(nèi)核可以分配給不同的線程(進行線程處理),并同時運行。在本實施例中,處理器中可能存在兩種線程,一種是傳統(tǒng)意義上由CPU進行處理的任務(wù)得到的線程,稱為CPU線程;一種是傳統(tǒng)意義上由GPU進行處理的任務(wù)得到的線程,稱為GPU線程。當(dāng)然,在本實施例中,并不刻意區(qū)分線程的類型,從處理器的角度而言,所有的任務(wù)都是一樣的,只不過調(diào)用不同的功能模塊處理而已。當(dāng)處理器中并行運行CPU任務(wù)和GPU任務(wù)時,CPU任務(wù)由操作系統(tǒng)分解為CPU線程并分配內(nèi)核進行處理,這些CPU線程還登記到用于控制處理GPU線程的硬件線程管理單元中;GPU任務(wù)一開始也是被視為CPU任務(wù)處理,當(dāng)操作系統(tǒng)發(fā)現(xiàn)其實際上是GPU任務(wù)時,調(diào)用不同的功能模塊將其分解為GPU線程并登記排列在所述硬件線程管理單元中等待分配內(nèi)核進行處理。在本步驟中,當(dāng)系統(tǒng)上電引導(dǎo)后,一般來講,系統(tǒng)中馬上要執(zhí)行任務(wù)都是通常的CPU任務(wù),因此,所有的內(nèi)核資源都是處于操作系統(tǒng)的控制之下的。
[0018]步驟S102分解CPU任務(wù)為CPU線程,在操作系統(tǒng)中排列,等待處理:在本步驟中,執(zhí)行CPU任務(wù),將其分解為CPU線程,并形成隊列,在操作系統(tǒng)中等待分配內(nèi)核資源并處理。這些動作均是在操作系統(tǒng)的控制之下進行的,分配在操作系統(tǒng)控制下的內(nèi)核資源處理上述(PU線程。由于內(nèi)核資源如何處理一個線程與本實施例中描述的內(nèi)容關(guān)系不大,所以在此不再對其進行詳細(xì)描述。
[0019]步驟S103將上述線程登記到硬件線程管理和控制單元:在本步驟中,在本步驟中,上述得到的CPU線程除了在操作系統(tǒng)中形成隊列并處理之外,還將上述步驟中得到的CPU線程登記到處理器的硬件線程管理和控制單元(THDC)中。
[0020]步驟S104是否有GPU任務(wù):在本步驟中,判斷是否存在GPU任務(wù)需要處理,也就是說,判斷當(dāng)前處理的任務(wù)是否GPU任務(wù),如是,執(zhí)行步驟S105 ;否則,執(zhí)行步驟S106。判斷一個任務(wù)是否是GPU任務(wù)的具體方法包括判斷該線程是否調(diào)用了專用于產(chǎn)生GPU線程的功能模塊,例如,GPU API或GPU DRIVER。這是由于一個GPU任務(wù)必然需要類似的模塊來產(chǎn)生GPU線程。
[0021]步驟S105產(chǎn)生GPU線程,使其在硬件線程管理和控制單元中形成隊列等待處理,同時,將其登記:在本步驟中,調(diào)用上述的GPU API (GPU應(yīng)用接口)或GPU DRIVER (GPU驅(qū)動器)使得GPU任務(wù)分解為GPU線程,得到的GPU線程在硬件線程管理和控制單元中形成隊列等待處理,同時,將其在THDC登記;也就是說,GPU任務(wù)通過GPU API或GPU DRIVER產(chǎn)生多個在硬件線程管理單元中等待的GPU線程,這些GPU線程同時登記在硬件線程管理單元中。
[0022]步驟S106登記的線程數(shù)是否大于來自系統(tǒng)的線程數(shù):判斷硬件線程管理單元中登記的總的線程數(shù)量是否大于由操作系統(tǒng)登記到所述硬件線程管理單元中的線程數(shù)量,如是,執(zhí)行下一步驟;否則,返回執(zhí)行步驟S102,也就是仍然回到處理CPU線程或任務(wù)中,并不會使得內(nèi)核資源重新配置;在本步驟中,判斷登記的總的線程數(shù)量是否大于由操作系統(tǒng)登記而來的線程數(shù)量的具體方法是比較由操作系統(tǒng)登記到所述硬件線程管理單元的有效線程數(shù)量和登記到硬件線程管理單元的總的有效線程數(shù)量是否相等。請參見圖2,圖2中給出了一個登記線程的結(jié)構(gòu)示意圖,由圖2中可以得知,登記總的有效線程數(shù)量只能大于或等于由操作系統(tǒng)登記的有效線程數(shù)量,不可能小于該值,所以,只要比較其是否相等,就可以判斷出是否由GPU線程存在。二者相等時,必然不存在GPU線程,而二者不等時,必然有GPU線程存在。
[0023]步驟S107分配空閑的內(nèi)核給GPU線程,并在CPU線程釋放內(nèi)核資源時,將釋放的內(nèi)核配置到GPU線程:分配空閑的內(nèi)核對所述登記在硬件線程管理單元中的GPU線程進行處理,當(dāng)空閑線程分配完且有CPU線程釋放其內(nèi)核時,將該內(nèi)核配置給在所述硬件線程管理單元中等待的GPU線程。也就是說,在本步驟中,當(dāng)存在空閑的內(nèi)核資源由THDC控制時,自然先將這些內(nèi)核資源分配到GPU線程,對其進行處理。當(dāng)已經(jīng)沒有空閑內(nèi)核資源或本來THDC就沒有控制內(nèi)核資源時,首先是等待現(xiàn)在正在運行的內(nèi)核被釋放,即使是CPU線程釋放的內(nèi)核支援,且有其他的CPU線程在等待執(zhí)行,這些被釋放的內(nèi)核資源也不會被分配到CPU線程,而是使得CPU線程等待,將這些內(nèi)核的控制權(quán)由原先的操作系統(tǒng)轉(zhuǎn)移到上述THDC,使得THDC能夠控制該內(nèi)核,并將其分配到GPU線程,使得該內(nèi)核資源處理GPU線程。從而實現(xiàn)內(nèi)核資源在不同的類型的線程之間的重新配置,使得處理器在處理不同的類型的線程時能夠?qū)崿F(xiàn)動態(tài)的內(nèi)核調(diào)整,進而達到動態(tài)的負(fù)載平衡。
[0024]在本實施例中,上述處理器通常是UPU,其上電后可以將所有的內(nèi)核交給操作系統(tǒng)控制,等到GPU任務(wù)開始執(zhí)行時再對這些內(nèi)核進行分配。其好處是對于傳統(tǒng)的CPU任務(wù)處理較快,但是,由于在執(zhí)行GPU任務(wù)時需要重新分配,所以其對于GPU任務(wù)的處理速度稍慢。為了加快GPU任務(wù)的處理速度,在本實施例中,一種情況下,也可以在處理器上電引導(dǎo)之后,分配設(shè)定數(shù)量的內(nèi)核用于操作系統(tǒng)控制的CPU線程;同樣地,每個線程在等待時均在所述硬件線程管理單元中登記。這個設(shè)定數(shù)量可以為UPU內(nèi)核總數(shù)的一半,以兼顧CPU任務(wù)和GPU任務(wù)的處理速度。
[0025]總之,在本實施例中,該UPU的調(diào)度器具有CPU特殊內(nèi)核功能,即利用UPU的獨特硬件特性,動態(tài)地調(diào)度操作系統(tǒng)軟件隊列能夠CPU任務(wù)和UPU硬件線程管理和控制單元(THDC)中的GPU任務(wù)。當(dāng)UPU上電引導(dǎo)之后,所有的硬件線程資源(即內(nèi)核資源)均由操作系統(tǒng)控制,同時,所有的線程(包括CPU和GPU線程)均會送入到THDC中。當(dāng)只有CPU任務(wù)(或線程)運行時,THDC僅僅繼續(xù)保持這些記錄了送入線程的記錄,所有的內(nèi)核資源均作為SMP核由操作系統(tǒng)控制。當(dāng)一個GPU任務(wù)被作為一個CPU任務(wù)開始運行時(這是UPU的一個重要特點),該任務(wù)通過GPU ADI CALLS或GPU DRIVER,創(chuàng)建多個GPU線程到THDC中;使得在THDC中的記載線程數(shù)量的清單上所記載的線程多于原先記載的線程數(shù)量(原先可能只有CPU線程)。這樣,當(dāng)一個由操作系統(tǒng)本身控制的SMP核運行線程完成或由用戶空間返回內(nèi)核空間時,該線程將釋放上述內(nèi)核,同時,標(biāo)記該線程的、在THDC中的線程清單將進入等待的狀態(tài),該內(nèi)核資源的控制權(quán)將由操作系統(tǒng)轉(zhuǎn)移到THDC,THDC將不再將該內(nèi)核資源分配給其他CPU線程或原先的CPU線程,而是將其分配到在THDC中等待的GPU線程,使得該GPU線程得到該內(nèi)核的處理時隙。當(dāng)在THDC中的GPU目錄(或清單)變得越來越多的時候,越來越多的退出的CPU線程所占用的內(nèi)核資源被按照上述的方法配置到GPU線程中,以便對其進行處理,直到GPU的隊列減少或CPU線程出現(xiàn)瓶頸(例如,有返回CPU的數(shù)據(jù)等等),才會有內(nèi)核資源被分配到CPU線程。
[0026]請參見圖3,在本實施例中,還涉及一種實現(xiàn)上述方法的裝置,該裝置包括:線程數(shù)量判斷模塊31、空閑線程分配模塊32、線程釋放判斷模塊33、初始CPU線程設(shè)置模塊34和GPU線程產(chǎn)生模塊35。其中線程數(shù)量判斷模塊31用于判斷所述硬件線程管理單元中登記的線程數(shù)量是否大于由所述操作系統(tǒng)登記到所述硬件線程管理單元中的線程數(shù)量,如是,調(diào)用空閑線程分配模塊;空閑線程分配模塊32用于分配空閑的內(nèi)核對所述登記在硬件線程管理單元中的GPU線程進行處理,當(dāng)空閑線程分配完且有CPU線程釋放其內(nèi)核時,將該內(nèi)核配置給在所述硬件線程管理單元中等待的GPU線程;線程釋放判斷模塊33用于當(dāng)在所述硬件線程管理單元中等待的GPU線程執(zhí)行完成或所述GPU線程需要返回數(shù)據(jù)到操作系統(tǒng)時,當(dāng)前所述CPU線程返回的內(nèi)核由所述操作系統(tǒng)分配,不再直接分配給在硬件線程管理單元中等待的GPU線程;初始CPU線程設(shè)置模塊34用于在UPU在上電引導(dǎo)之后,分配設(shè)定數(shù)量的內(nèi)核用于操作系統(tǒng)控制的CPU線程;每個線程在運行時均在所述硬件線程管理單元中登記;GPU線程產(chǎn)生模塊35用于GPU任務(wù)通過GPU API或GPU DRIVER產(chǎn)生多個在硬件線程管理單元中等待的GPU線程,所述GPU線程同時登記在硬件線程管理單元中。
[0027]此外,本實施例還涉及一種處理器,所述處理器為在CPU任務(wù)和GPU任務(wù)之間動態(tài)共享其硬件資源的UPU,所述處理器采用上述方法中的任意一項分配其內(nèi)核資源。
[0028]以上所述實施例僅表達了本發(fā)明的幾種實施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對本發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進,這些都屬于本發(fā)明的保護范圍。因此,本發(fā)明專利的保護范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。
【權(quán)利要求】
1.一種在處理器不同類型線程中分配內(nèi)核資源的方法,其特征在于,所述處理器中并行運行CPU任務(wù)和GPU任務(wù),所述CPU任務(wù)由操作系統(tǒng)分解為CPU線程并分配內(nèi)核進行處理,所述CPU線程還登記到用于控制處理GPU線程的硬件線程管理單元中,GPU任務(wù)被分解為GPU線程并登記排列在所述硬件線程管理單元中等待分配內(nèi)核進行處理;所述方法還包括如下步驟: A)判斷所述硬件線程管理單元中登記的線程數(shù)量是否大于由所述操作系統(tǒng)登記到所述硬件線程管理單元中的線程數(shù)量,如是,執(zhí)行步驟B);否則,返回處理CPU線程; B)分配空閑的內(nèi)核對所述登記在硬件線程管理單元中的GPU線程進行處理,當(dāng)空閑線程分配完且有CPU線程釋放其內(nèi)核時,該內(nèi)核直接由硬件線程管理單元控制,并配置給在所述硬件線程管理單元中等待的GPU線程。
2.根據(jù)權(quán)利要求1所述的在處理器不同類型線程中分配內(nèi)核資源的方法,其特征在于,還包括如下步驟: C)當(dāng)在所述硬件線程管理單元中等待的GPU線程執(zhí)行完成或所述GPU線程需要返回數(shù)據(jù)到操作系統(tǒng)時,當(dāng)前所述CPU線程返回的內(nèi)核由所述操作系統(tǒng)分配,不再直接由硬件線程管理單元控制。
3.根據(jù)權(quán)利要求2所述的在處理器不同類型線程中分配內(nèi)核資源的方法,其特征在于,所述UPU在上電引導(dǎo)之后,分配設(shè)定數(shù)量的內(nèi)核用于操作系統(tǒng)控制的CPU線程;每個線程在運行時均在所述硬件線程管理單元中登記。
4.根據(jù)權(quán)利要求3所述的在處理器不同類型的線程中分配內(nèi)核資源的方法,其特征在于,所述設(shè)定數(shù)量為UPU內(nèi)核總數(shù)的一半。
5.根據(jù)權(quán)利要求4所述 的在處理器不同類型線程中分配內(nèi)核資源的方法,其特征在于,所述GPU任務(wù)通過GPU API或GPU DRIVER產(chǎn)生多個在硬件線程管理單元中等待的GPU線程,所述GPU線程同時登記在硬件線程管理單元中。
6.根據(jù)權(quán)利要求5所述的在處理器不同類型線程中分配內(nèi)核資源的方法,其特征在于,所述步驟A)中,包括比較由所述操作系統(tǒng)登記到所述硬件線程管理單元的有效線程數(shù)量和登記到所述硬件線程管理單元的總的有效線程數(shù)量是否相等。
7.一種實現(xiàn)如權(quán)利要求1所述方法的在處理器不同類型線程中分配內(nèi)核資源的裝置,其特征在于,所述處理器中并行運行CPU任務(wù)和GPU任務(wù),所述CPU任務(wù)由操作系統(tǒng)分解為(PU線程并分配內(nèi)核進行處理,所述CPU線程還登記到用于控制處理GPU線程的硬件線程管理單元中,GPU任務(wù)被分解為GPU線程并登記排列在所述硬件線程管理單元中等待分配內(nèi)核進行處理;所述裝置包括: 線程數(shù)量判斷模塊:用于判斷所述硬件線程管理單元中登記的線程數(shù)量是否大于由所述操作系統(tǒng)登記到所述硬件線程管理單元中的線程數(shù)量,如是,調(diào)用空閑線程分配模塊; 空閑線程分配模塊:用于分配空閑的內(nèi)核對所述登記在硬件線程管理單元中的GPU線程進行處理,當(dāng)空閑線程分配完且有CPU線程釋放其內(nèi)核時,該內(nèi)核直接由硬件線程管理單元控制,并配置給在所述硬件線程管理單元中等待的GPU線程。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,還包括線程釋放判斷模塊,用于當(dāng)在所述硬件線程管理單元中等待的GPU線程執(zhí)行完成或所述GPU線程需要返回數(shù)據(jù)到操作系統(tǒng)時,當(dāng)前所述CPU線程返回的內(nèi)核由所述操作系統(tǒng)分配,不再直接由硬件線程管理單元控制。
9. 根據(jù)權(quán)利要求8所述的裝置,其特征在于,還包括初始CPU線程設(shè)置模塊和GPU線程產(chǎn)生模塊;所述初始(PU線程設(shè)置模塊用于在UPU在上電引導(dǎo)之后,分配設(shè)定數(shù)量的內(nèi)核用于操作系統(tǒng)控制的CPU線程;每個線程在運行時均在所述硬件線程管理單元中登記;所述GPU線程產(chǎn)生模塊用于GPU任務(wù)通過GPU API或GPU DRIVER產(chǎn)生多個在硬件線程管理單元中等待的GPU線程,所述GPU線程同時登記在硬件線程管理單元中。
10.一種處理器,所述處理器為在CPU任務(wù)和GPU任務(wù)之間動態(tài)共享其硬件資源的UPU,其特征在于,所述處理器采用如權(quán)利要求1-6中任意一項的方法分配其內(nèi)核資源。
【文檔編號】G06F9/50GK103617088SQ201310619787
【公開日】2014年3月5日 申請日期:2013年11月29日 優(yōu)先權(quán)日:2013年11月29日
【發(fā)明者】梅思行, 廖暢, 盧佳文, 冀謙祥 申請人:深圳中微電科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1