本發明專利技術的一個實施例提出了用于動態地調度和管理具有不同執行優先級的計算任務的技術。調度電路基于優先級將計算任務組織到組中。之后可以使用不同的調度方案,諸如循環制、優先權和劃分優先權來選擇計算任務以執行。將每組均保存為指向被編碼為存儲在存儲器中的隊列元數據(QMD)的計算任務的指針鏈表。QMD封裝執行計算任務所需的狀態。當由調度電路選擇任務以執行時,針對組移除QMD并將其轉移到活動計算任務表。之后由流多處理器從活動任務表選擇計算任務以執行。
【技術實現步驟摘要】
本專利技術總地涉及計算任務的執行,并且,更具體地,涉及具有不同優先級的計算任務的調度和管理。
技術介紹
用于執行在多個處理器系統中的計算任務的常規調度依靠應用程序或驅動程序來為每個計算任務確定優先權。在計算任務的執行期間,需要驅動程序和多個處理器之間的交互來允許驅動程序調度計算任務,該交互可能延遲計算任務的執行。因此,本領域所需要的是用于基于處理資源和可用計算任務的優先權來動態地調度計算任務以執行的系統和方法。重要的是,調度機制不應該依賴或要求軟件或驅動程序交互。
技術實現思路
用于動態地調度和管理具有不同執行優先級的計算任務的系統和方法。調度電路基于優先級將計算任務組織到組中。之后可以使用不同的調度方案,諸如循環制、優先權和劃分優先權來選擇所述計算任務以執行。每組均被保存為指向被編碼為存儲在存儲器中的隊列元數據(QMD)的計算任務的指針鏈表。QMD封裝執行計算任務所需的狀態。當由所述調度電路選擇任務以執行時,針對組移除QMD并將QMD轉移到活動計算任務表。之后由流式多處理器從所述活動任務表中選擇計算任務以執行。本專利技術用于調度計算任務以執行的方法的各種實施例包括從用于處于多個優先級的第一優先級的計算任務組的鏈表的頭部選擇第一計算任務以及識別經調度以執行并存儲在任務表中的活動計算任務的最低優先級。將所述第一優先級與所述最低優先級作比較。當所述第一優先級高于所述最低優先級時,采用所述第一計算任務來替代存儲在所述任務表中的具有處于最低優先級的優先權的第二計算任務。本專利技術的各種實施例包括用于調度計算任務以執行的系統。所述系統包括經配置以存儲對應于所述計算任務的隊列元數據的存儲器,經配置以將經調度以執行的活動計算任務存儲在任務表中的工作分布單元,以及任務管理單元。所述任務管理單元經配置以從用于處于多個優先級的第一優先級的計算任務組的鏈表的頭部選擇第一計算任務,識別所述活動計算任務的最低優先級,將所述第一優先級與所述最低優先級作比較,確定所述第一優先級高于所述最低優先級,以及采用所述第一計算任務來替代存儲在所述任務表中的具有處于最低優先級的優先權的第二計算任務。所述調度機制使管理具有不同優先級的計算任務以執行成為可能。所述調度電路對于每個計算任務將指向QMD的指針保存在存儲器中使得可以迅速選擇計算任務以執行并將各自的QMD轉移到所述活動任務表。附圖說明因此,可以詳細地理解上述列舉的本專利技術的特征,并且可以參考實施例得到對如上面所概括的本專利技術更具體的描述,其中一些實施例在附圖中示出。然而,應該注意的是,附圖僅示出了本專利技術的典型實施例,因此不應被認為是對其范圍的限制,因為本專利技術可以承認其他等效的實施例。圖1是示出了經配置以實現本專利技術一個或多個方面的計算機系統的框圖;圖2是根據本專利技術一個實施例的用于圖1的計算機系統的并行處理子系統的框圖;圖3是根據本專利技術一個實施例的圖2的任務/工作單元的框圖;圖4A是根據本專利技術一個實施例的圖3的調度器表的內容的概念圖;圖4B、4C、4D和4E是根據本專利技術一個實施例的隨著時間推移圖3的調度器表和任務表的內容的概念圖;圖5A示出了根據本專利技術一個實施例的用于調度具有不同執行優先級的計算任務的優先權調度方法;圖5B示出了根據本專利技術一個實施例的用于調度具有不同執行優先級的計算任務的劃分優先權調度方法;圖6A是根據本專利技術一個實施例,圖3的任務/工作單元的另一個框圖;以及圖6B示出了根據本專利技術一個實施例的用于將條目加載到QMD緩存中的方法。具體實施例方式在下面的描述中,將闡述大量的具體細節以提供對本專利技術更透徹的理解。然而,對本領域的技術人員顯而易見的是本專利技術可以在沒有一個或多個這些具體細節的情況下得以實施。在其他例子中,沒有描述公知的特征以避免對本專利技術造成混淆。系統概述圖1是示出了經配置以實現本專利技術的一個或多個方面的計算機系統100的框圖。計算機系統100包括中央處理單元(CPU) 102和經由可以包括存儲器橋105的互連路徑通信的系統存儲器104。存儲器橋105可以是例如北橋芯片,經由總線或其他通信路徑106(例如超傳輸(HyperTransport)鏈路)連接至Ij I/O (輸入/輸出)橋107。I/O橋107,其可以是例如南橋芯片,從一個或多個用戶輸入設備108 (例如鍵盤、鼠標)接收用戶輸入并且經由路徑106和存儲器橋105將所述輸入轉發到CPU 102。并行處理子系統112經由總線或其他通信路徑113 (例如PCI Express、加速圖形端口或超傳輸鏈路)耦合到存儲器橋105 ;在一個實施例中,并行處理子系統112是將像素傳遞到顯示設備110 (例如傳統的基于CRT或IXD的監視器)的圖形子系統。系統盤114也連接到I/O橋107。開關116提供I/O橋107與諸如網絡適配器118以及各種外插卡120和121的其他組件之間的連接。其他組件(未明確示出),包括USB或其他端口連接、CD驅動器、DVD驅動器、膠片錄制設備及類似組件,也可以連接到I/O橋107。使圖1中各種組件互連的通信路徑可以使用任何適合的協議實現,諸如PCI (外圍組件互連)、PC1-Express、AGP (加速圖形端口)、超傳輸或者任何其他總線或點到點通信協議,并且不同設備間的連接可使用本領域已知的不同協議。在一個實施例中,并行處理子系統112包含經優化用于圖形和視頻處理的電路,包括例如視頻輸出電路,并且構成圖形處理單元(GPU)。在另一個實施例中,并行處理子系統112包含經優化用于通用處理的電路,同時保留底層(underlying)的計算架構,本文將更詳細地進行描述。在又一個實施例中,可以將并行處理子系統112與一個或多個其他系統元件集成起來,諸如存儲器橋105、CPU 102以及I/O橋107,以形成片上系統(SoC)。應該理解,本文所示系統是示例性的,并且變化和修改都是可能的。連接拓撲,包括橋的數量和布置、CPU 102的數量以及并行處理子系統112的數量,可根據需要修改。例如,在一些實施例中,系統存儲器104直接連接到CPU 102而不是通過橋,并且其他設備經由存儲器橋105和CPU 102與系統存儲器104通信。在其他替代性拓撲中,并行處理子系統112連接到I/O橋107或直接連接到CPU 102,而不是連接到存儲器橋105。而在其他實施例中,I/O橋107和存儲器橋105可能被集成到單個芯片上。大量實施例可以包括兩個或兩個以上的CPU 102以及兩個或兩個以上的并行處理系統112。本文所示的特定組件是可選的;例如,任意數量的外插卡或外圍設備都可能得到支持。在一些實施例中,開關116被去掉,網絡適配器118和外插卡120、121直接連接到I/O橋107。 圖2示出了根據本專利技術一個實施例的并行處理子系統112。如圖所示,并行處理子系統112包括一個或多個并行處理單元(PI3U) 202,每個并行處理單元202都耦合到本地并行處理(PP)存儲器204。通常,并行處理子系統包括U個PPU,其中U彡I。(本文中,類似對象的多個實體以標識該對象的參考數字和需要時標識所述實體的括號中的數字來表示。)PPU 202和并行處理存儲器204可使用一個或多個集成電路設備來實現,諸如可編程處理器、專用集成電路(ASIC)或本文檔來自技高網...
【技術保護點】
一種用于調度計算任務以執行的系統,所述系統包括:存儲器,其經配置以存儲對應于所述計算任務的隊列元數據;工作分布單元,其經配置以將經調度以執行的活動計算任務存儲在任務表中;以及任務管理單元,其經配置以:從用于處于多個優先級的第一優先級的計算任務組的鏈表的頭部選擇第一計算任務;識別所述活動計算任務的最低優先級;將所述第一優先級與所述最低優先級作比較;確定所述第一優先級高于所述最低優先級;以及采用所述第一計算任務來替代存儲在所述任務表中的具有處于所述最低優先級的優先權的第二計算任務。
【技術特征摘要】
2011.09.19 US 13/236,4731.一種用于調度計算任務以執行的系統,所述系統包括存儲器,其經配置以存儲對應于所述計算任務的隊列元數據;工作分布單元,其經配置以將經調度以執行的活動計算任務存儲在任務表中;以及任務管理單元,其經配置以從用于處于多個優先級的第一優先級的計算任務組的鏈表的頭部選擇第一計算任務;識別所述活動計算任務的最低優先級;將所述第一優先級與所述最低優先級作比較;確定所述第一優先級高于所述最低優先級;以及采用所述第一計算任務來替代存儲在所述任務表中的具有處于所述最低優先級的優先權的第二計算任務。2.根據權利要求1所述的系統,其中所述任務管理單元進一步經配置以接收所述第一計算任務;以及將所述第一計算任務插入存儲用于處于所述第一優先級的所述計算任務組的所述鏈表中。3.根據權利要求2所述的系統,其中基于所述第一計算任務所提供的標志在所述鏈表的頭部插入所述第一計算任務。4.根據權利要求2所述的系統,其中基于所述第一計算任務所提供的標志在所述鏈表的尾部插入所述第一計算任務。5.根據權利要求2所述的系統,其中所述任務管理單元包括經配置以存...
【專利技術屬性】
技術研發人員:蒂莫西·約翰·珀塞爾,蘭基·V·姍,小杰爾姆·F·德魯克,
申請(專利權)人:輝達公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。