TW200847060A - Indexes of graphics processing objects in graphics processing unit commands - Google Patents

Indexes of graphics processing objects in graphics processing unit commands Download PDF

Info

Publication number
TW200847060A
TW200847060A TW097112397A TW97112397A TW200847060A TW 200847060 A TW200847060 A TW 200847060A TW 097112397 A TW097112397 A TW 097112397A TW 97112397 A TW97112397 A TW 97112397A TW 200847060 A TW200847060 A TW 200847060A
Authority
TW
Taiwan
Prior art keywords
graphics processing
gpu
batch
processing object
graphics
Prior art date
Application number
TW097112397A
Other languages
English (en)
Inventor
guo-fang Jiao
Lingjun Frank Chen
Yun Du
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of TW200847060A publication Critical patent/TW200847060A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Description

200847060 九、發明說明: 【發明所屬之技術領域】 本發明係關於電腦圖形處理,且更特定言之,係關於圖 形處理單元。 【先前技術】 圖形處理單元(GPU)為經特定地設計以執行與圖形處理 • 有關之操作的專門電子設備。通常以高度並行結構來建置 GPU,該高度並行結構針對一複雜圖形相關演算法範圍而 ⑩ 提供比典型之通用中央處理單元(CPU)更有效的處理。舉 例而言,複雜演算法可對應於三維電腦圖形之表示。Gpu 可貝施弄多所謂的”原始物件”(primitive)圖形操作,諸 如,形成點、線及三角形,以在顯示器上建立複雜三維影 像,其比藉由CPU而將影像直接繪製至顯示器快速。 【發明内容】 本揭示案描述將批次命令載入至圖形處理單元(GPU)中 之技術。如本文中所描述,用於GPU之GPU驅動程式識別 待由GPU使用以便再現圖形原始物件批次之一或多個圖形 處理物件。GPU驅動程式可公式化包括與所識別之圖形處 、 理物件相關聯之索引的批次命令。GPU驅動程式可接著向 GPU發布批次命令。GPU可使用批次命令中之索引而自記 憶體中擷取圖形處理物件。在自記憶體中擷取圖形處理物 件之後,GPU可使用圖形處理物件來再現圖形原始物件批 次。 在一態樣中,一種方法包含將圖形處理物件儲存於記憶 130328.doc 200847060
體模組中。該方法進一步包含在將圖形處理物件儲存於記 憶體模組中之後藉由GPU驅動程式來識別圖形處理物件中 待由GPU使用以再現圖形原始物件批次之圖形處理物件。 該方法亦包含藉由GPU驅動程式來公式化批次命令以藉由 GPU來再現圖形原始物件批次。批次命令包括指示記憶體 模組中儲存有所識別之圖形處理物件之位置的索引。此 外,該方法包含向GPU發布批次命令。Gpu使用批次命令 中所包括之索引以自記憶體模組中擷取所識別之圖形處理 物件且使用圖形處理物件來再現圖形原始物件批次,以便 產生可顯示之圖形資訊。 在另一態樣中,一種方法包含藉由GPU來接收批次命令 以再現圖形原始物件批次。該方法亦包含使㈣次命令中 所包括之索引以藉由GPU來擷取儲存於記憶體模組中之圖 形處理物件中的圖形處理物件。此外,該方法包含在操取 圖形處理物件之後藉由GPU錢用所擷取之圖形處理物件 來處理圖形原始物件批次,以便產生可顯示之圖形資訊。 在將圖形處理物件儲存於記憶體模組中之位置中之後, 咖驅動程式識職由咖使用以再現圖形原始物件批次 圖开/處理物件’且其中Gpu驅動程式公式化批次命令, 使得批次命令包括與所識狀圖形處理物件相關聯的索 引0 〜樣中 種没備包含儲存圖形處理物件之記憶 體模組及執行GPU驅動程式之中央處理單元(cpu)。執行 /動私式之CPU在將圖形處理物件儲存於記憶體模組 130328.doc 200847060 中之後識別圖形處理物件中待由GPU使用以再現圖形原始 物件批次之®形處理物件、公式隸次命令以藉由哪來 再現圖形原始物件批次,且向GPU發布批次命令。批次命 令包括指示記憶體模組中儲存有所識別之圖形處理物件中 之圖形處理物件之位置的索引。GPU接收批次命令、使用 批次命令中之索引以自記憶體模組中操取圖形處理物件, 且使用所擷取之圖形處理物件來再現圖形原始物件批次。 在另一態樣中,一種設備包含儲存圖形處理物件之記伊 體模組及GPU。GPU接收批次命令以再現圖形原始物件^ 人使用批次命令中所包括之f引來榻取儲存於記憶體模 組中之圖形處理物件中的圖形處理物件,且使用所榻取之 圖形處理物件來處理圖形原始物件批次’以便產生可顯示 之圖形資訊。在將圖形處理物件儲存於記憶體模組中之位 置中之後’ GPU驅動程式識別待由Gpu制以再現圖形原 始物件批次之圖形處理物件’且其中Gpu驅動程式公式化 批次命令’使得批次命令包括與所識別之圖形處理物件相 關聯的索引。 在另一態樣中,一種設備包含用於儲存圖形處理物件之 構件及用於執行GPU驅動程式之構件。用於執行咖驅動 紅式之構件在將圖形處理物件儲存於記憶體模組中之後識 別圖形處理物❹待由GPU使用以再現圖形原始物件抵:欠 之圖形處理物件、公式化批次命令以藉由咖來再現圖形 原始物件批次,且向GPU發布批次命令。批次命令包括指 不記憶體模組中儲存有所識別之圖形處理物件中之圖形^ 130328.doc 200847060 王物件之位置的索引。GPU接收批次命令、使用批次命令 中之索?1以自記憶體模組中擷取圖形處理物#,且使用所 擷取之圖形處理物件來再現圖形原始物件批次。 在另怨樣中,-種設備包含用於儲存圖形處理物件之 構件及用於處理圖形之構件。用於處理圖形之構件接收批 次命令以再現圖形原始物件批次、使用批次命令中所包括 之索引來擷取儲存於記憶體模組中之圖形處理物件中的圖 A處理物件’且使用所擷取之圖形處理物件來處理圖形原 始物件批次’以便產生可顯示之圖形資訊。在將圖形處理 物件儲存於記憶體模組中之位置 位置中之後,GpU驅動程式識 :待由GPU使用以再現圖形原始物件批次之圖形處理物 ,且其MPU,㈣程式公式化批次命令,使得批次命令 包括與所識別之圖形處理物件相關聯的索引。 ^另-態樣中,-種電腦可讀媒體包含指令,指令在執 订時導致處理器將圖形處理物件儲存於記憶體模組中。指 令亦導致處理器在將圖形處理物件儲存於記憶體模組中之 後藉由圖形處理單元(GPU)驅動程式來識別圖形處理物件 中待由GPU使用以再現圖形原始物件批次之圖形處理物 件。指令亦導致處理器藉由Gpu驅動程式來公式化批次命 令以藉由㈣來再現圖形原始物件批次,其中批次命令包 括指示記憶體模組中儲存有所識別之圖形處理物件之位置 的索引。此外,指令導致處理器向GPU發布批次命令。 咖使用批次命令中所包括之索引以自記憶體模組中擷取 所識別之圖形處理物侔曰你㈤…上 使用圖形處理物件來再現圖形原 130328.doc 200847060 以便產生可顯示之圖形資訊。 始物件批次, ^ 〜'樣中,一種電腦可讀媒體包含指令,指令在執 丁時導致處理斋藉由圖形處理單元(〇ρυ)來接收批次命令
八再見圖$原始物件批次。指令亦導致處理器使用批次命 7中所包括之索引以藉由Gpu來擷取儲存於記憶體模組中 之_處理物件中的圖形處理物件。此外,指令亦導致處 理叩在掏取圖形處理物件之後藉由Gpu而使用所擷取之圖 形處理物件來處理圖形原始物件批次,以便產生可顯示之 圖形資訊。在將圖形處理物件儲存於記憶體模組中之位置 中之後’ GPU驅動程式識別待由仰^^使用以再現圖形原始 物件批次之圖形處理物件,且其中Gpu驅動程式公式化批 次命令’使得批次命令包括與所識別之圖形處理物件相關 聯的索引。 以下隨附圖式及描述中闡述一或多個實例之細節。其他 特徵、目私及優勢將自描述及圖式且自申請專利範圍中顯 而易見。 【實施方式】 本揭不案描述將批次命令載入至圖形處理單元(Gpu)中 之技術。如本文中所描述,用於GPU之GPU驅動程式識別 待由GPU使用以便再現原始物件批次之一或多個圖形處理 物件。GPU驅動程式可公式化包括與所識別之圖形處理物 件相關聯之索引的批次命令。GPU驅動程式可接著向gpu 發布批次命令。GPU可使用批次命令中之索引以自記憶體 中擷取圖形處理物件。在自記憶體中擷取圖形處理物件之 130328.doc • 10 - 200847060 後,GPU可使用圖形處理物件來再現圖形原始物件批次。 圖1為說明例示性計算設備2之方塊圖。計算設備2可包 3個人電細、桌上型電腦、膝上型電腦、工作站、視訊遊 戲平台或控制台、蜂巢式或衛星無線電話、諸如攜帶型視 • ^遊戲设備或個人數位助理之掌上型設備、個人音樂播放 器、伺服器、中間網路設備、主機電腦,或使用本文中所 . 描述之技術中之一或多者來輪出圖开> 資訊的另—類型之設 備。 ^ 如圖1之實例中所說明,計算設備2包括可使用匯流排10 來通乜之CPU 4、GPU 6及隨機存取記憶體(RAM)模組8。 匯机排ίο可包含諸如超傳送(HyperTransp〇⑴匯流排或無限 頻帶(InfiniBand)匯流排之第三代匯流排。或者,匯流排㈣ 可包含諸如進階圖形埠匯流排、周邊組件互連(pci)高速 匯流排或另一類型之匯流排或設備互連的第二代匯流排。 CPU 4可包含通用或專用微處理器。舉例而言,cpu何 φ 包S由美國加州聖克拉拉市Intel Corporation所提供的核心 2處理器或另—類型之微處理器。GPU 6包含專用圖形再現 設備。GPU 6可整合至計算設備2之主機板中、可存在於安 ^ 衣於计异设備2之主機板中之埠中的圖形卡上,或可經另 • 外、、且怨以與什异设備2相互操作。RAM模組8可為同步動繂 隨機存取記憶體模組、直接Rambus動態隨機存取記憶體= 組、雙資料速率2或3同步隨機存取記憶體模組,或另一類 型之隨機存取記憶體模組。 、 如圖1之實例中所說明,RAM模組8可儲存圖形處理物件 130328.doc • 11 - 200847060 HAWN(統稱為”圖形處理物件i4”)之集合。在此情形 中,圖形處理物件”可包含資料& M ^ 乂 6可使用以執行圖形摔作之=“冓,1料結構指_ α ^呆作之圖形處理資訊類型。圖形處理 物件之一實例為加陰影彳^ I % A (化以^)物件。加陰影程式物 件可包含在由GPU 6執行時執行加陰 加陰影操作在給料景之㈣、心^集合’ 7狀光源及相機位置的情況下
輸出用於特疋像素之色彩。其他實例圖形處理物件可包括 頂點流、紋理樣本狀態物件、紋理記憶體物件、索引緩衝 裔、程式/連結物件、狀態暫存器物件、常數緩衝 框緩衝器物件,或其他類型之圖形處理物件。 可將指疋不同類型之圖形處理資訊的圖形處理物件"配 置於RAM模組8中以作為陣列16A至㈣(統稱為,,陣列μ”) 中之不同陣列。可將陣列! 6中之一者中的圖形處理物件Μ 中之圖形處理物件酉己置於RAM模組8中之鄰近記憶體位置 中陣列16中之每一者可包含儲存指定特定類型之圖形處 理資訊之圖形處理物件的記憶體區塊。舉例而言,若陣列 16A包括兩個圖形處理物件及ΐ4β,則圖形處理物件 14B之第一記憶體位置可為RAM模組8中緊隨圖形處理物 件14A之最後記憶體位置的記憶體位置。在此實例中,圖 形處理物件14A及14B可均為紋理記憶體物件(亦即,指定 紋理記憶體圖形處理資訊之物件)。 陣列16中之每一者可與陣列基底位址及物件大小相關 聯。圖形處理物件陣列中之圖形處理物件中的每一者可與 指定圖形處理物件相對於陣列基底位址之記憶體位置的索 130328.doc •12· 200847060 引相關聯。在此狀況下,陣列基底位址與圖形處理 大小及索引的組合可形成圖形處理物件之記憶體位址 為可將指定不同類型之圖形處理f訊的圖形處理物件 之圖形處理物件儲存於陣列16中之不同陣財且因為陣 16中之每一者可在不同記憶體位置處開始,故指定不同類 型之圖形處理資訊的圖形處理物件之索引指示圖形處理物 件相對於不同記憶體位置之記憶體位置。
如圖1之實例中所說明,CPU 4執行產生高階命令以對圖 形資料執行圖形操作之軟體應用程幻8。舉例而言,軟體 應用程式18可為視訊軸制程式、視騎議應用程式、 使用者介面應用程式、圖形設計應m,或包括圖形再 現功能性的另-類型之軟體應用程式。由㈣制程;切 所產生之高階命令可包括幾何資訊(例如,影像中之圖形 原始物件之頂點的資訊)及描述影像之其他資訊。軟體應 用程式1 8可向應用程式設計介面(API)2()提供高階命令。 API 20指定高階圖形處理方法集合。舉例而言,Αρι 2〇可 指定OpenGL、0penVG(向量圖形)、圖形設備介面(gdi)、 Quartz、QuickDraw、Direct3D或其他應用程式設計介面之 方法。當軟體應用程式18向API 20提供高階命令時,Αρι 20可調用由GPU驅動程式12所提供之一或多種方法。〇ρυ 驅動程式12可為在内核模式下由cpu 4所執行或在使用者 模式下由GPU驅動程式12之一部分所執行的軟體及/或韌體 程式,以達到促進API 20與GPU 6之間的互動之目的。 當CPU 4載入應用程式1 8時,GPU驅動程式12可預先編 130328.doc -13 · 200847060 澤或多個圖形處理物件。舉例而言,GPU驅動程式12可 預先、扁澤所有加陰影程式物件。當GPU驅動程式12編譯圖 v处里物件日守,Gpu驅動程式12可將圖形處理物件儲存於 陣歹J 16中儲存指定類似類型之圖形處理資訊之圖形處理物 件14中的圖形處理物件之陣列。
夕备API 20調用由Gpu驅動程式12所實施之方法中的一或 者、便再現圖形原始物件批次時,GPU驅動程式〗2可識 ]圖形處理物件14中待由Gpu 6使用以便再現圖形原始物 錄次之圖形處理物件。舉例而言,Gpu驅動程切可將 …力陰〜私式物件、頂點流物件、第二加陰影程式物 件、用於在GPU 6中使用之狀態暫存器集合及紋理記憶體 物件識別為待由GPU 6使用以再現圖形原始物件批次之圖 /炎物件在2D圖形中,圖形原始物件可包括簡單2〇 域,諸如’直線或曲線、方框、任意多邊形、圓形及其 料狀。在3D圖形中,圖形原始物件可包括簡單犯 形狀,諸如,立方體、圓柱體、球體、錐體、棱錐體、環 體、諸如貝齊爾(Bezier)表面及非均一有理β雲規表面之自 由表面,及其他簡單卿狀。再現圖形原始物件為自此等 圖形原始物件產生影像之圖形資訊(例如,像幻的過程。 在許多狀況下,應用程式18或圖形Αρι 2〇向咖驅動程 式12提供圖形處理物件之識別符。識別符可為處理常式或 整數。GPU驅動程式12可建立對應於圖形處理物件陣列之 映射表。映射表之每-條目對應於陣列中之條目。此外, 映射表之每-條目可包括識別符及”有效”旗標。開始時針 130328.doc -14- 200847060 對所有空條目而將"有效"旗標初始化為"無效"。當咖驅 動程切接收新圖形處理物件及新圖形處理物件之心^ 時,咖驅動程式12可使用識別符來配置索引或映射表= 之條目。若映射表包括詩識別符之條目,則咖驅動程 式=可擷取條目中所減之索引1映射表不包括用於識 別符之條目’則GPU驅動程幻2可識別映射表中之未評 目且向新物件指派索引、將條目之識別符設定為識別符: 且將條目之,•有效”旗標改變為”有效”。Gpu驅動程式㈣ 新近編譯之圖形處理物件儲存於陣列中之條目中。在另一 實例中,GPU驅動程式12可使用雜凑函數或快取記憶體機 構來查找或指派識別符之索引。 GPU驅動程式12可在内部產生_些圖形處理物件。舉例 而言’ GPU驅動程式12可產生指定狀態暫存器之圖形處理 物件。當GPim動程式12在内部產生圖形處理物件時, 咖驅動程式!2可向圖形處理物件指派順序數以作為識別 符。此外,在GPU驅動程式12編譯圖形處理物件之前, GPU驅動程式12可藉由對圖形處理物件之内容應用一或多 個雜湊函數來產生密鑰(例如,整數結果)。Gpu驅動程式 12可指派密鑰以作為圖形處理物件之識別符。Gpu驅動程 式12可使用任何其他機構來產生物件之識別符。在驅 動程式12向圖形處理物件指派識別符之後,Gpu驅動程式 12可如先前段落中所描述來查找映射表之索引。 在硪別待由GPU 6使用之圖形處理物件之後,Gpu驅動 程式12可搜遍儲存於RAM模組8中之圖形處理物件14中的 130328.doc 15 200847060 圖形處理物件以找出圖形處理物件14中已被Gpu驅動程式 12識別為再現圖形原始物件批次所f要之圖形處理物件。 若GPU驅動程如無法找出所識別之圖形處理物件中的— 者,則GPU驅動程式12可編譯所識別之圖形處理物件中的 此一者且將所編譯之圖形處理物件儲存於ram模組8中之 陣列16中的—者中。舉例而言,GPU驅動程式12可藉由將此 等狀態暫存器之值作為圖形處理物件儲存於記憶體模組8中 來編譯指定GPU 6所使用之狀態暫存器值的圖形處理物件。 在GPU驅動程式12找出或編譯圖形處理物件_的所識 別之圖形處理物件之後,GPU驅動程切可在键模㈣ 中之主命令緩衝器22中公式化圖形原始物件批次之批次命 令。主命令緩衝H22可為記憶體模組⑼在將批次命令ΜΑ 至綱之集合發布至卿6之前儲存此等批次命令的區 域。批次命令為指定圖形處理物件集合之資料結構。由 GPU驅動程式12所公式化之批次命令可包括索引、陣列之 基底位址、圖形處理物件之類型’及圖形處理物件Μ中的 所識別之圖形處理物件之大小。圖形處理物件之類型可指 示GPU 6中將使用圖形處理物件之管線元件。除了所識別 之圖Φ處理物件的索引及基底位址以外,驅動程式Η 還可公式化批次命令以包括在大小方面極小之圖形處理物 件舉例而5,#圖形處理物件之大小不顯著地大於素引 與基底位址之組合大小,則Gpu驅動程如可公式化批次 命令以直接包括此圖形處理物件。藉由直接將小圖形處理 物件包括於批次命令中,可降低藉由Gpu 6來擷取圖形處 130328.doc •16- 200847060 理物件之潛時。除了此等小圖形處理物件以外,GPU驅動 ^式12在公式化批次命令時不會在批次命令或主命令緩衝 器22中建立圖形處理物件之任何複本。 若圖形處理物件14中的所識別之®形處理物件包括陣列 • 16中之皁一者中的一個以上圖形處理物件,則GPU驅動程 式12僅將基底位址、圖形處理物件類型及圖形處理物件陣 列之每-物件大小插人至批次命令中_次。舉例而言, GPU驅動程式12可將第一加陰影程式物件及第二加陰料呈 <物件谶別為再現圖形原始物件批次所需要之圖形處理物 件。若第一加陰影程式物件與第二加陰影程式物件具有相 同類型,則可將第一加陰影程式物件及第二加陰影程式物 於卩車賴巾之同—者巾。tGpu驅動程切公式化 指定第一加陰影程式物件及第二加陰影程式物件之批次命 令時,GPU驅動程式12可將陣列16中之此一者的基底位 址、第一加陰影程式物件之索引及第二加陰影程式物件之 φ 索引包括於批次命令中。舉例而言,當前圖形原始物件批 次使用具有經快取索引2、8、15、6及3〇1之五個紋理物 件。GPU驅動程式12將紋理物件陣列之五個索引及基底位 . 址包括於主命令緩衝器中之紋理狀態載入指令(亦即,批 • 人tfp 5 )中包括陣列之索引及基底位址不會要求Gpu驅 動程式12將由索引2、8、15、6及3〇1所指示之紋理物件分 類在一起。因為GPU驅動程式12不會將此等狀態分類在一 起,故不需要移動或複製此等紋理物件中之資料。 在GpU驅動程式12完成主命令緩衝器22中之批次命令之 130328.doc -17- 200847060 後,GPU驅動程式12可向GPU 6 "發布”批次命令。當GPU 驅動程式12向GPU 6發布批次命令時,經由匯流排1〇而將 批次命令傳輸至GPU 6 备GPU 6接收到批次命令時,Gpu 6可使用陣列之基底 位址及圖形處理物件之索引以自RAM模組8中擷取圖形處 理物件。當GPU 6自RAM模組δ中擷取圖形處理物件14中 之者訏’ GpU 6可將圖形處理物件之複本儲存於gpu 6
内之硬體快取記憶體26中。若硬體快取記憶體26含有圖形 處理物件14中之一者的複本,則Gpu 6可能僅需要自硬體 陕取圮k體26中擷取圖形處理物件之複本,而不是自ram 模組8中擷取原始圖形處理物件。在擷取批次命令中所指 定之圖形處理物件之後,GPU 6可使用批次命令中之圖形 處理物件來再現圖形原始物件批次,以便產生可顯示之圖 形資訊。 本揭示案中所描述之技術可提供一或多個優勢。舉例而 Λ加此專技術之5十异设備通常不會針對每一圖形原始 物件批次而在批次命令中建立圖形處理物件之複本。更確 切而言,該設備在批次命令中建立圖形處理物件之索引。 因為圖形處理物件之索弓丨可顯著地小於圖形處理物件自 身,故可能需要匯流排10上之較少頻寬,以便將批次命令 傳輸至GPU 6。此外,因為GPU 6可在硬體快取記憶體26 中快取個別圖形處理物件,故可能沒有必要在匯流排】〇上 將圖形處理物件中之一者自RAM模組8傳輸至Gpu 6。因 為本揭示案中所描述之技術可導致在匯流排1()上傳輸較少 130328.doc -18- 200847060 圖形處理物件,故匯流排ι〇可具有更多可用於傳輸其他資 訊之可用頻寬。結果,可改良實施本揭示案中所描述之技 術之設備的總效能。在另一實例中,因為無需在圖形原始 物件批次之間清除GPU 6中之硬體快取記憶體26,故可節 省時間。舉例而言,第一批次可使用加陰影程式物件。因 為第一批次使用加陰影程式物件,故可將加陰影程式物件 之複本儲存於硬體快取記憶體26中。隨後,GPU 6可再現 第二圖形原始物件批次。稍後,GPU 6可再現第三圖形原 始物件批次。第三圖形原始物件批次可使用由第一批次所 使用之加陰影程式物件。因為加陰影程式物件可能仍在硬 體快取記憶體26中,故可能沒有必要使咖6自RAM模組 8中擷取加陰影程式物件。此可節省時間、功率及頻寬。 圖2為說明在CPU 4中操作之Gpu驅動程式^之例示性操 作的流程圖。最初,GPU驅動程式12可預先編譯一或多個 圖形處理物件且將此等圖形處理物件儲存於ram模組8中 之陣列16中(40)。隨後,API 2 方法,以便執行圖形操作(42)。 式12之方法時,gpu驅動兹卉r 20可調用GPU驅動程式12之
130328.doc -19- 200847060 圖形處理物件(48)。若GPU驅動程式12判定RAM模組8包 括集合中不具有批次命令中之索引的圖形處理物件(48 之”是”),則GPU驅動程式12可將圖形處理物件之陣列基底 位址及索引添加至批次命令(5〇)。若批次命令已經包括陣 列基底位址,則GPU驅動程式12可能不會將陣列基底位址 添加至批次命令。在將圖形處理物件之陣列基底位址及索 引添加至批次命令之後,GPU驅動程式12可返回且再次判 定批次命令是否包括用於所識別之圖形處理物件中之每一 者的索引(46)。 若RAM模組8不包括圖形處理物件(48之"否,,),則GPU· 動程式12可編譯圖形處理物件(52)。在編譯圖形處理物件 之後,GPU驅動程式12可將圖形處理物件儲存於ram模組 8中(54)。接下來,Gro驅動程式12可將圖形處理物件之陣 列基底位址及索引插入至批次命令中(5〇)。在將圖形處理 物件之陣列基底位址及索引添加至批次命令之後,Gpu驅 動程式12可返回且再次判定批次命令是否包括用於所識別 之圖形處理物件中之每一者的索引(46)。 若批次命令包括用於所識別之圖形處理物件中之每一者 的索引(46之”是"),則GPXJ驅動程式12可向Gpu 6發布批次 命令(56)。 人 圖3為說明例示性GPU 6之細節的方塊圖。在圖3之實例 中’ GPU 6包括管線引擎7〇A至7〇N(統稱為”管線引擎π”) 之集合。管線引擎70中之每一者可在圖形處理管線中執行 知作。舉例而言,管線引擎7〇A可執行命令評估操作,管 130328.doc -20- 200847060 線引擎7〇B可執行每一頂 貝”、、占刼作及原始物件組合操作,管 線引擎7〇C可處理紋视 缺 μ 卜、、,官線引擎70D可執行加陰影操
作’荨專。管線引擎7〇可A 為特殊應用積體電路(AS][C)、場 可系王式化閘陣列(FPGA) 抑七 卜 J试處理益或其他類型之邏輯設 備。管線引擎70可經今斗ιν # / # ~ 又计以執行特定圖形相關功能或可以 使得管線引擎70中之卷_ 土 _ I 、者可執行任意指令集合的方式來 二言’若管線引擎㈣以使得管線引擎70中之 Γ聲τΐ::'丁任意指令集合的方式來實施,則可使用管線 I擎來執行複雜數學運算。以此方式,g 用”圖形處理單元。 J兄田通 當管線引擎70中之箓 ^ ^
Ri〜 干之弟一者自CPU 4中接收到批次命令 時,管線引擎中之第一去7 r P 7 可產生對擷取批次命令中所指 之圖形處理物件中之每 —…所“ 母者的#求。在管線引擎中之第一 者產生對擷取圖形處理物 中之硬體快取記情體26…者的’求之後’ GPU 6 闰“ 6可判定硬體快取記憶體26是否儲存 圖形處理物件中之一去 仔 體快取1 ^ I的複本。硬體快取記憶體26可為硬 ,„ 〃有各種身換朿略,包括直接映射、雙 向關聯、完全關聯哎 又 替換朿略。若硬體快取記憶體26 儲存圖形處理物件中之一去 — 者的锼本,則硬體快取記憶體26 可將圖形處理物件中 #一 ^之者的锼本傳回至管線引擎70中之 :件二=―方㊆,若硬體快取記憶體26未胃存圖形處理 之—者的複本,則硬體快取記㈣26可將請求 至RAM挺組8。當RAM模組8傳回圖形處理物件中之 時’硬體快取記憶體26可儲存圖形處理物件中之一者的複 130328.doc • 21 - 200847060 本。硬體快取記憶體26可接著將圖形處理物件中之一者轉 發至^引擎70中之第一者。在另一實例中’管線引擎70 第I可向官線引擎7时之—或多者提供索引及陣列 基底位址。管線引擎7〇中之此等管線引擎可接著使用索引 及陣列基底位址來擷取圖形處理物件。舉例而言,管線引 擎70中之第—者可將紋理引擎圖形處理物件载入至管線引 — 可向g線引擎70B提供一或多個紋理映射圖形
牛之索引及陣列基底位址。當管線引擎7〇b執行紋 理引擎時’管線引擎鳩可在需要時擷取紋理映射圖形處 理物件中之各種紋理映射圖形處理物件。 田s線引擎70中之第一者接收到用於批次命令之圖形處 理物件時,管線引擎7〇中之第一者可將圖形處理物件載入 至管線引擎70之各種管線引擎中。舉例而言,管線引擎7〇 中之第一者可向管線引擎7〇B提供第一加陰影程式物件且 :管線引擎70C提供第二加陰影程式物件。在此實例中, 官線引擎70B可執行第一加陰影程式物件中之指令且向管 線引擎70C提供由於執行第一加陰影程式物件而產生之 值。管線引擎70C可使用由管線細所提供之值來執行第 二加陰影程式物件中之指令。管線引擎7〇c可輸出由管線 引擎70D所使用之值,等等。 g線引擎7G中之最後-者可向圖框緩衝器74輸出圖形資 訊。舉例而言,管線引擎70中之最後一者(例如,管線引 擎70D)可向圖框緩衝器74輸出像素。圖框缓衝器μ中之像 素可表示可顯示於監視器、螢幕或其他顯示裝置上之圖形 130328.doc -22- 200847060 資訊。 田GPU 6 成處理批次命令時,可能不會清除硬體快取 。己fe體26或使其無效。更確切而言,仍可將圖形處理物件 儲存於硬體快取記憶體26中以用於若干批次命令。以此方 . 式,右後績批次命令指定先前批次命令中所使用之圖形處 理物件,則可能沒有必要使硬體快取記憶體26自尺八“模組 8中擷取圖形處理物件。當Gpu驅動程式12指令6清除 石更體快取記憶體26或使其無效時,可清除硬體快取記憶體 26或使其無效。此外,可藉由新圖形處理物件來替換硬體 快取記憶體26中之圖形處理物件。 圖4為說明GPU 6之例示性操作的流程圖。最初,Gpu 6 接收由GPU驅動程式12發布以再現圖形原始物件批次之批 人印々(80)。在接收到批次命令之後,gpu 6可在由批次 命令中之索引所指示的記憶體位置處自RAM模組8或硬體 快取記憶體26中擷取圖形處理物件(82)。在擷取圖形處理 _ 物件之後,GPU 6可使用管線元件7〇以使用所擷取之圖形 處理物件來再現圖形原始物件批次(84)。當〇1>1; 6完成使 用所擷取之圖形處理物件來再現圖形原始物件批次時, λ GPU 6可向圖框緩衝器74輸出光栅影像(86)。 • 在一或多個例示性實施例中,可在硬體、軟體及/或韌 體或其任何組合中實施所描述之功能。若在硬體中實施, 則可在一或多個微處理器、微控制器、數位信號處理器 (DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列 (FPGA)或其類似者中實施功能。該等組件可駐存於通信系 130328.doc -23- 200847060 2 μ/或讀取“或其㈣統内。若在軟體令 二::可將功能作為一或多個指令或程式碼而儲存於電 :::媒體上或作為一或多個指令或程式碼而在電腦可讀 某體上進行傳輸。電腦可讀 、系體匕括诸如包括電腦可讀媒 一之電腦程式產品的電腦儲存 兩什姝體及包括促進將電腦程 ’處轉移至另一處之任何媒體的通信媒體。儲存媒體 可為可由電腦存取之任何可 1彳7 j用媒體。以實例而非限制之方 ^該等電腦可讀媒體可包含揮發性或非揮發性儲存器、 機存取記憶體(RAM)、唯讀記憶體⑽M)、快閃記憶 體、電可抹除唯讀記憶體(EEPR〇M)、緊密光碟唯讀記憶 -(、ROM)或其他光碟儲存器、硬碟、磁碟儲存器或其 、〖生儲存δ又備,或可用以載運或儲存呈指令或資料結構 乂式之所要权式碼且可由電腦所存取的任何其他媒體。 本文中所使用,磁碟及光碟包括緊密光碟(cd)、雷射光 碟、光碟、數位化通用光碟(DVD)、軟碟及藍光光碟,其 中磁碟通常磁性地再生資料,而光碟藉由雷射來光學地再 生貝料。以上之组合亦應包括於電腦可讀媒體之範疇内。 已描述本發明之各種實施例。此等及其他實施例係在以 下申請專利範圍之範疇内。 【圖式簡單說明】 圖1為說明包括圖形處理單元(GPU)之例示性設備的方塊 圖。 圖2為說明在中央處理單元(cpu)中操作之GPlj驅動程式 之例示性操作的流程圖。 130328.doc -24- 200847060 圖3為說明例示性GPU之細節的方塊圖 圖4為說明GPU之例示性操作的流程圖 【主要元件符號說明】 2 計算設備 4 CPU 6 GPU • 8 隨機存取記憶體(RAM)模組 12 GPU驅動程式 ⑩ 14A 圖形處理物件 14B 圖形處理物件 14M 圖形處理物件 14N 圖形處理物件 16A 陣列 16N 陣列 18 軟體應用程式 20 • 應用程式設計介面(API) 22 主命令緩衝器 24A 批次命令 ^ 24N 批次命令 26 硬體快取記憶體 70A 管線引擎 70B 管線引擎 70D 管線引擎 74 圖框緩衝器 130328.doc -25-

Claims (1)

  1. 200847060 十、申請專利範圍: 1 · 一種方法,其包含: 將圖形處理物件儲存於一記憶體模組中; 在將該等圖形處理物件儲存於該記憶體模組中之後藉 由-圖形處理單元(GPU)驅動程式來識別該等圖形處‘ 物件中待由-GPU使用以再現—圖形原始物件批次之圖 • 形處理物件; 藉由該GPU驅動程式來公式化一批次命令以藉由該 • GPU來再現該圖形原始物件批次,其中該批次命:包: 指示該記憶體模組中儲存有該等所識別之圖形處理物件 之位置的索引;及 向遠G P U發布該批次命令, 其中該GPU使用該批次命令中所包括之索引以自該纪 憶體模組中擷取該等所識別之圖形處理物件且使用;;等 圖形處理物件來再現該圖形原始物件批次,以便產=可 顯示之圖形資訊。 ® 2•如請求項1之方法, 其中公式化該批次命令包含當該記憶體模組不含有該 < 等所識別之圖形處理物件中之―者時編譯-圖形處理物 件;及 其中該方法進一步包含將該所編譯之圖形處理物件儲 存於該記憶體模組中, 其中該批次命令包括一指示該記憶體模組中儲存有該 所編譯之圖形處理物件之一位置的索引。 130328.doc 200847060 农員之方法,其中該方法進一步包含藉由該GPU驅 ^程式而自—®形應隸式設計介面(API) _接收一指 令,该圖形應用程式設計介面(API)導致該GPU驅動程式 識別待由該GPU使用以再現該圖形原始物件批次之圖形 處理物件。 4 ·如睛求項1之方法, 其中該方法進一步包含當載入該Gpu驅動程式時編譯 一圖形處理物件;及 其中儲存圖形處理物件包含將該所編譯之圖形處理物 件儲存於該記憶體模組中。 5·如請求項1之方法, 其中儲存圖形處理物件包含儲存將不同類型之圖形處 理貝讯指定為不同陣列的該等圖形處理物件之集合;且 其中公式化該批次命令包含將包括該等 處理物件中之-或多者之該等陣列中㈣ 址儲存於該批次命令中。 、土氐位 6’如:求項1之方法’其中該Gpu快取該咖中之一硬體快 取兄憶體中的該等所擷取之圖形處理物件。 、 7·如请求項6之方法,其中該Gp 用忒荨經快取之圖形處 理物件中之-者來再現-不同圖形原始物件批次。 8·項1之方法’其中儲存圖形處理物件包含儲存一 二指,程式物件’該指令集合在由該 产、兄下Τ’給疋场景之形狀、光源及-相機位置的 十月况下輪出用於一特定像素之一色彩。 130328.doc 200847060 9·如請求項!之方法中儲存圖形處理物件包含將用於 在該GPU中使用之㈣暫存器的值儲存為—圖形處理物 件。 1〇· —種方法,其包含: 藉由一圖形處理單元(GPU)來接收一批次命令以再現 一圖形原始物件批次; 使用該批次命令中所包括之索引以藉由該GPU來操取 儲存於記憶體模組中之圖形處理物件中的圖形處理物 件;及 在操取該等圖形處理物件之後藉由該GPU而使用該等 所擷取之圖形處理物件來處理該圖形原始物件批次,以 便產生可顯示之圖形資訊,
    其中在將》亥等圖形處理物件儲存於該記憶體模組中之 位置中之後’-GPU驅動程式識別待由該咖使用以再 現該圖形原始物件批次之圖形處理物件,且其中該GPU 驅動程式公式化該批次命令,使得該批次命令包括與該 等所識別之圖形處理物件相關聯的索引。 如請求項1〇之方法’其中當該GPU驅動程式識別一待由 該GPU使用以再現該圖形原始物件批次但當前未儲存於 該記憶體模組中之圖形處理物件時,該咖驅動程式編 譯-圖形處理物件且將該所編譯之圖形處理物件儲存於 該記憶體模組中。 12.如請求項10之方法,其中該方法進一步包含: 快取該GPU内之-快取記憶體中之該等所操取之圖形 130328.doc 200847060 處理物件中的一者;及 使用該批次命令中之該等索引以藉由該G P U而自該快 取記憶體中擷取該等圖形處理物件, 其中當該快取記憶體不包括該等圖形處理物件時,該 GPU使用該批次命令中之今莖本pi . r(鑌4索引以自該記憶體模組中 擷取該等圖形處理物件。 13.如請求項10之方法’其中處理該圖形原始物件批次包 含: /由該GPU中之—第-管線引擎而向該GPU之-第二 官線引擎提供該等所擷取之圖形處理物件中的一者;及 藉由該第二管線引擎爽勃 擎末執仃該等圖形處理物件中被提 仏至该弟二管線引擎之 形處理操作。 者巾料令,讀執行-圖 14·如請求項13之方法,並 α敬十4 /、肀執扣令包含藉由該第二管線 擎之該-者中的指令,以::編至該第二管線引 15如^ 便執仃一加陰影操作。 15·如铂求項13之方法,i 步包含: 八处里忒圖形原始物件批次進一 藉由該第一管線引擎 ^ 命:中之該等㈣中的—者^管㈣擎提供該批次 二擎,使用由該第-管線引擎向該第 形處理物件中之=該等索引令的該一者來擷取該等圖 16· 一種設備,其包含: 130328.doc 200847060 一儲存圖形處理物件之記憶體模組;及 一執行一圖形處理單元(GPU)驅動程式之中央處理單 70 (CPU),該圖形處理單元(GPU)驅動程式在將該等圖形 處理物件儲存於該記憶體模組中之後識別該等圖形處理 物件中待由一 GPU使用以再現一圖形原始物件批次之圖 形處理物件、公式化一批次命令以藉由該GPU來再現該 圖形原始物件批次,且向該Gpu發布該批次命令, 其中該批次命令包括指示該記憶體模組中儲存有該等 所識別之圖形處理物件中之該等圖形處理物件之位置的 索引, 其中該GPU接收該批次命令、使用該批次命令中之該 等索引以自該記憶體模組中擷取該等圖形處理物件,且 使用該等所擷取之圖形處理物件來再現該圖形原始物件 批次。 17 ·如晴求項1 6之設備, 其中當該GPU驅動程式公式化該批次命令時,該Gpu 驅動程式在該記憶體模組不含有該等所識別之圖形處理 物件中之一者時編譯一圖形處理物件, 其中該GPU驅動程式將該所編譯之圖形處理物件儲存 於該記憶體模組中且將一指示該記憶體模組中儲存有該 所編譯之圖形處理物件之一位置的索引包括於該批次命 令中。 18·如請求項16之設備,其中該設備進一步包含一導致該 GPU驅動程式識別待由該GPU使用以再現該圖形原始物 130328.doc 200847060 件批次之圖形處理物件的圖形應用程式設計介面(ah)。 19.如請求項16之設備,其中當載入一圖形應用程式時,該 gpu驅動程形處理物件,且㈣所編譯之圖 形處理物件儲存於該記憶體模組中。 20·如請求項16之設備, 其中該記憶體模組儲存將不同類型之圖形處理資訊指 定為不同陣列的圖形處理物件集合;及 其中,當該GPU驅動程式公式化該批次命令時,該 GPU驅動程式將包括該等所識別之圖形處理物件中之一 或多者之該科财之每—者的基底位址儲存於該批次 命令中。 21.如請求項16之設備,其中該Gpu快取該Gpu中之一硬體 快取記憶體中的該等所擷取之圖形處理物件。 22·如請求項21之設備’其中該咖使用該等經快取之圖形 處理物件中之-者來再現—不同圖形原始物件批次。 23·如請求項16之設備,其中儲存於該記憶體模組中之該等 圖形處理物件包括一包括一指令集合之加陰影程^物 件,該指令集合在由該Gpu執行時在給定一場景之形 狀、光源及一相機位置的情況下輸出用於一特定像素之 一色彩。 μ 24.如請求項16之設備’其中儲存於該記憶體模組中之該等 圖形處理物件包㈣於在該Gpu中使狀狀態暫存 值。 W 25· —種設備,其包含: 130328.doc 200847060 儲存圖形處理物件之記憶體模組;及 /圖$處理單元(GPU),其接收_批次命令以再現一 圖形原始物件批次、使用該批次命令中所包括之㈣來 榻取儲存於該記憶體模組中之該等圖形處理物件中的圖 形處理物件’且使用該等所擷取之圖形處理物件來處理 該圖形原始物件批次,以便產生可顯示之圖形資訊, 其中在將該等圖形處理物件儲存於該記憶體模組中之 位置中之後’ —GPU驅動程式識別待由該GPU使用以再 現該圖形原始物件批次之圖形處理物件,且其中該咖 ,動程式公式化該批次命令,使得該批次命令包括與該 等所識別之圖形處理物件相關聯的索引。 26. 如請求項25之設備,其中該設備包含一執行該咖驅動 程式之中央處理單元(CPU)。 27. 如請求項25之設備’其中當該Gpu驅動程式識別一待由 該GPU使用以再現該圖形原始物件批次但當前未儲存於 該記憶體模組中之圖形處理物件時,該咖驅動程式編 譯-圖形處理物件且將該所編譯之圖形處理物件儲存於 該記憶體模組中。 28·如請求項25之設備, 其中該㈣包含-快取該等所操取之圖形處理物件中 之一者的硬體快取記憶體, 其中該GPU使用該批次命令中之該等索引以自該硬許 快取記憶體中擷取該等圖形處理物件中之該經快取者,: 其中當該硬體快取記憶體不包括該等圖形處理物件 130328.doc 200847060 時,該GPU使用該批次命令中箄 ^ P 7〒之泫导索引从自該記憶體 核組中擷取該等圖形處理物件。 29·如請求項25之設備, 其中該GPU包含一第一管線引擎及一第二管線引擎, 其中該[管線引擎向該第二管線引擎提供該等 取之圖形處理物件中的—者,及 吓烈 其:該第:管線引擎執行該等所擷取之圖形處理物件 之5亥一者中的指令,以便執行一圖形處理操作。 求項29之設備’其中當該第二管線 操:之圖形處理物件中之該-者中的該等指令時,該第 一官線引擎執行一加陰影操作。 Λ 31·如請求項29之設備, 其中該第一管線引擎向 ^ ^ 竽句该弟一官線引擎提供該批次命 令t之該等索引中的一者;及 其中該第二管線引擎使 ,手笟用忒4索引中之該一者以自該 記憶體模組中擷取該等圖形處理物件中之一者。 3 2 · —種設備,其包含: 用於儲存圖形處理物件之構件;及 /仃圖形處理單元(Gpu)驅動程式之構件,豆 在將該等圖形處理物件 ’、 該等圖形處理物件中待ώ 仏體輪組中之後識別 物處理物件、公式化—批次命令 該 GPU來再現該圖形原 '、σ物件批次,且向該GPU發布該批 次命令, 130328.doc 200847060 其中該批次命令包括指示該記憶體模組中儲存有該等 所識別之圖形處理物件中之該等圖形處理物件之位置的 索引, 其中該GPU接收該批次命令、使用該批次命令中之該 等索引以自該記憶體模組中擷取該等圖形處理物件,且 使用該等所擷取之圖形處理物件來再現該圖形原始物件 批次。 33.
    如請求項32之設備,其中當用於執行該Gpu驅動程式之 該構件公式化該批次命令時,用於執行該Gpu驅動程式 之該構件在該記憶體模組不含有該等所識別之圖形處理 物件中之一者時編譯一圖形處理物件, 其中用於執行該GPU驅動程式之該構件將該所編譯之 圖形處理物㈣存於該記憶體模組中且將__指示該記債 體模組中儲存有該所編譯之圖形處理物件之—位置的索 引包括於該批次命令中。 ”
    3 4·如請求項32之設備,並中用於乱乂 、中用於執打該GPU驅動程式之該 構件在载入一圖形應用程式蚌 ^ 狂式蚪編澤一圖形處理物件,且 將該所編譯之圖形處理物件 料料於該記憶體模組中。 35·如凊求項32之設備, 其中用於儲存圖形處理 之圖形處理資訊指定為不 集合;及 物件之該構件儲存將不同類型 同陣列的該等圖形處理物件之 識 其中用於執行該GPU 別之圖形處理物件中 驅動程式之該構件將 之一或多者之該等陣 包括該等所 列中之每一 130328.doc 200847060 者的基底位址儲存於該批次命令中。 认如請求項32之設備’其中該咖快取該咖中之一硬 快取記憶體中的料所絲之w形處理物件。 37. —種設備,其包含: 用於儲存圖形處理物件之構件;及 ,用於處理®形之構件,其純—批:欠命令以再現一圖 形原始物件批次、使用該批次命令中所包括之索引來榻 取儲存於記憶體模組中之該㈣形處理物件十的圖形處 理物件’且使用該等_取之圖形處理物件來處理該圖 形原始物件批次,以便產生可顯示之圖形資訊, 其中在將該等圖形處理物件儲存於該記憶體模組中之 位置中之後,一 GPU驅動程式識別待由GPU使用以再現 該圖形原始物件批次之圖形處理物件,且其中該咖驅 動程式公式化該批次命令,使得該批次命令包括與該等 所識別之圖形處理物件相關聯的索引。 38.如請求項37之設備,其中該設備包含用於執行該卿驅 動程式之構件。 39.如請求項37之設備,其中當該Gpu驅動程式識別一待由 該GPU使用以再現該圖形原始物件批次但當前未儲存於 該記憶體模組中之圖形處理物件時,該Gpu驅動程式編 譯-圖形處理物件且將該所編譯之圖形處理物件儲存於 該記憶體模組中。 40·如請求項37之設備, 其中用於處理圖形之該構件包含用於快取該等所擷取 130328.doc -10- 200847060 之圖形處理物件中之一者的構件, 其中用於處理圖形之呤摄μ . 構件使用該批次命令中之兮耸 索引以自硬體快取記憶體 7中之该荨 該經快取者,及 抒取該荨圖形處理物件中之 其中當該硬體快取記憶體 時,用於處理圖形之該構…該專圖形處理物件 少又巧構件使用該批次命令 引乂 m k體松組中榻取該等圖形處理物件。“、’、 41·如請求項37之設備,其中用於處理圖形之該構件包人. 用於處理一圖形操作之第_構件; 牛^ · 用於處理一圖形操作之第二構件; 其中該第-構件向該第二構件提供 處理物件中的一者,及 口員取之圖形 其中該第二構件執行該/ 該-者中的指令,…/ 圖形處理物件中之 便執行一圖形處理操作。 42· —種包含指令之電 導致一處理器:“某體’其中該等指令在執行時 將圖形處理物件儲存於一記憶體模組中; 在將該等圖形處理物件儲在 由m ^ ㈣料於心憶體模組中之後藉 由圖形處理單元(GPU)锶叙4口斗、十μ 物杜由兮丄 ⑺$動&式來識別該等圖形處理 使用再現一圖形原始物件批次之圈 形處理物件; I圖 藉由該GPU驅動森式康八斗、儿 >勒%式來公式化一批次命令以 咖來再現該圖形原始物件批次,其中該批次命:包括/ 指不該記憶體模組中儲存有該等所識別之圖形處理物件 130328.doc -11 200847060 之位置的索引;及 向該GPU發布該批次命令, 其中該GPU使用該批次命令中所包括之索引以自該記 憶體模組中擷取該等所識別之圖形處理物件且使用該等 圖形處理物件來再現該圖形原始物件批次,以便產生可 顯示之圖形資訊。 43.如請求項42之電腦可讀媒體, 其中導致該處理器公式化該批次命令之該等指令包含 導致該處理器在該記憶體模組不含有該等所識別之圖形 處理物件中之-者時編譯一圖形處理物件的指令·及 其中該等指令進一步導致該處理器將該所編;之圖形 處理物件儲存於該記憶體模組中,及 其中該批次命令包括一指示該記憶體模組中儲存有該 所編譯之圖形處理物件之一位置的索引。 44·如請求項42之電腦可讀媒體, 其中該等指令進一步導致該處 程式時編譯一圖形處理物件;及°°在载入一圖形應用 導ΠΓ該處理器儲存圖形處理物件之該等指令包含 導致该處理器將該所編譯之圖形處理物二 體模組中的指令。 …亥元憶 45·如請求項42之電腦可讀媒體, 其中導致該處理器儲^在 、“ 储存圖形處理物件之該等指令句八 ^該處理H儲存將不同類型之圖形處理資訊^ 同陣列的該等圖形處理物件之集合的指令;及為不 130328.doc •12- 200847060 其中導致該處理器公式化該批次命令之該等指令包含 導致該處理器將包括該等所識別之圖形處理物件中之— 或多者之該㈣列中之每—者的基底位址館存於該批次 命令中的指令。 -46. 一種包含指令之電腦可讀媒體,該等指令在執行時導致 一處理器: 藉由一圖形處理單元(GPU)來接收一批次命令以再現 一圖形原始物件批次; # 使用該批次命令中所包括之索引以藉由該GPU來擷取 儲存於記憶體模組中之該等圖形處理物件中的圖形處理 物件;及 在擷取該等圖形處理物件之後藉由該GPU而使用該等 所擷取之圖形處理物件來處理該圖形原始物件批次,以 便產生可顯示之圖形資訊, 其中在將該等圖形處理物件儲存於該記憶體模組中之 • 位置中之後’一 GPU驅動程式識別待由該GPU使用以再 現該圖形原始物件批次之圖形處理物件,且其中該㈣ 驅動程式公式化該批次命令,使得該批次命令包括與該 - 等所識別之圖形處理物件相關聯的索引。 47_如請求項46之電腦可讀拔骑 ,貝媒體,其中當該GPU驅動程式識 別-待由該GPU使用以再現該圖形原始物件批次但當前 未儲存於該記憶體模組中之圖形處理物件時,該GPU驅 動程式編譯一圖形處理物件且將該所編譯之圖形處理物 件儲存於該記憶體模組中。 130328.doc -13 · 200847060 48·如請求項46之電腦可讀媒體,其中該等指令進一步導致 該處理器·· 快取該GPU内之一快取記憶體中之該等所擷取之圖形 處理物件中的一者;及 使用該批次命令中之該等索引以藉由該GPU而自該快 取记憶體中擷取該等圖形處理物件, 其中當該快取記憶體不包括該等圖形處理物件時,該 GPU使用該批次命令中之該等索引以自該記憶體模組中 擷取該等圖形處理物件。 伙=請求項46之電腦可讀媒體,其中導致該處理器處理該 始物件批次之該等指令包含導致該處理器執行以 下動作之指令·· /由該GPU中之一第一管線引擎而向該GPU之-第二 擎,供該等所彌取之圖形處理物件中的-者;及 曰由該第—官線引擎來執行該等圖 供至該第二管線引擎之兮^ 干〒被知 形處理操作。者中的指令,以便執行一圖 130328.doc -14-
TW097112397A 2007-04-04 2008-04-03 Indexes of graphics processing objects in graphics processing unit commands TW200847060A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/696,665 US8022958B2 (en) 2007-04-04 2007-04-04 Indexes of graphics processing objects in graphics processing unit commands

Publications (1)

Publication Number Publication Date
TW200847060A true TW200847060A (en) 2008-12-01

Family

ID=39665944

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097112397A TW200847060A (en) 2007-04-04 2008-04-03 Indexes of graphics processing objects in graphics processing unit commands

Country Status (4)

Country Link
US (1) US8022958B2 (zh)
EP (1) EP1978483A1 (zh)
TW (1) TW200847060A (zh)
WO (1) WO2008124628A1 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100117931A1 (en) * 2008-11-10 2010-05-13 Microsoft Corporation Functional image representation
US8471858B2 (en) * 2009-06-02 2013-06-25 Qualcomm Incorporated Displaying a visual representation of performance metrics for rendered graphics elements
US8624910B2 (en) * 2009-09-23 2014-01-07 Nvidia Corporation Register indexed sampler for texture opcodes
US8810592B2 (en) * 2009-10-09 2014-08-19 Nvidia Corporation Vertex attribute buffer for inline immediate attributes and constants
US9349154B2 (en) * 2010-04-05 2016-05-24 Nvidia Corporation Bindless texture and image API
EP2383648B1 (en) * 2010-04-28 2020-02-19 Telefonaktiebolaget LM Ericsson (publ) Technique for GPU command scheduling
US9058675B2 (en) 2010-05-29 2015-06-16 Intel Corporation Non-volatile storage for graphics hardware
CN102314670B (zh) * 2010-06-29 2016-04-27 技嘉科技股份有限公司 具有绘图处理器的处理模块、操作系统及处理方法
US8830228B2 (en) * 2010-12-20 2014-09-09 Microsoft Corporation Techniques for enabling remote management of servers configured with graphics processors
US9495722B2 (en) 2013-05-24 2016-11-15 Sony Interactive Entertainment Inc. Developer controlled layout
US10255650B2 (en) * 2013-05-24 2019-04-09 Sony Interactive Entertainment Inc. Graphics processing using dynamic resources
CN103559309B (zh) * 2013-11-19 2016-05-25 北京航空航天大学 一种基于gpu加速的音乐检索与推荐系统
CN105940388A (zh) * 2014-02-20 2016-09-14 英特尔公司 用于图形处理单元的工作负荷批量提交机制
CN103870404B (zh) * 2014-03-13 2016-09-14 武汉精测电子技术股份有限公司 一种iic批命令处理控制方法
KR102292789B1 (ko) * 2015-04-07 2021-08-25 삼성전자 주식회사 디스플레이장치 및 그 제어방법
US20220334890A1 (en) * 2021-04-14 2022-10-20 Nvidia Corporation Application programming interface to indicate increased resource usage

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06265772A (ja) * 1993-03-12 1994-09-22 Nikon Corp 合焦装置
US5392393A (en) 1993-06-04 1995-02-21 Sun Microsystems, Inc. Architecture for a high performance three dimensional graphics accelerator
US5920326A (en) * 1997-05-30 1999-07-06 Hewlett Packard Company Caching and coherency control of multiple geometry accelerators in a computer graphics system
US7038692B1 (en) * 1998-04-07 2006-05-02 Nvidia Corporation Method and apparatus for providing a vertex cache
US6469703B1 (en) * 1999-07-02 2002-10-22 Ati International Srl System of accessing data in a graphics system and method thereof
US6452600B1 (en) 1999-10-28 2002-09-17 Nintendo Co., Ltd. Graphics system interface
US6717577B1 (en) 1999-10-28 2004-04-06 Nintendo Co., Ltd. Vertex cache for 3D computer graphics
US7196710B1 (en) * 2000-08-23 2007-03-27 Nintendo Co., Ltd. Method and apparatus for buffering graphics data in a graphics system
US6636225B2 (en) * 2000-11-20 2003-10-21 Hewlett-Packard Development Company, L.P. Managing texture mapping data in a computer graphics system
US6404428B1 (en) * 2000-11-21 2002-06-11 Ati International Srl Method and apparatus for selectively providing drawing commands to a graphics processor to improve processing efficiency of a video graphics system
US7245302B1 (en) * 2003-10-30 2007-07-17 Nvidia Corporation Processing high numbers of independent textures in a 3-D graphics pipeline
US6972769B1 (en) * 2004-09-02 2005-12-06 Nvidia Corporation Vertex texture cache returning hits out of order
US7598958B1 (en) * 2004-11-17 2009-10-06 Nvidia Corporation Multi-chip graphics processing unit apparatus, system, and method
GB0524804D0 (en) * 2005-12-05 2006-01-11 Falanx Microsystems As Method of and apparatus for processing graphics
US8633927B2 (en) * 2006-07-25 2014-01-21 Nvidia Corporation Re-render acceleration of frame with lighting change

Also Published As

Publication number Publication date
EP1978483A1 (en) 2008-10-08
US20080246773A1 (en) 2008-10-09
WO2008124628A1 (en) 2008-10-16
US8022958B2 (en) 2011-09-20

Similar Documents

Publication Publication Date Title
TW200847060A (en) Indexes of graphics processing objects in graphics processing unit commands
TWI588775B (zh) 用於圖形硬體之非揮發性儲存之系統、儲存媒體及設備
US8587602B2 (en) GPU texture tile detail control
US10043235B2 (en) Method for caching GPU data and data processing system therefor
JP2018060556A (ja) グラフィック処理ユニットにおける視界ベースの状態更新
CN104508638B (zh) 多核心处理系统中的高速缓冲存储器数据迁移
TW201832179A (zh) 使用一類神經網路過濾影像資料
US20050122339A1 (en) System and method for parallel execution of data generation tasks
TW200818054A (en) Tile based precision rasterization in graphics pipeline
JP2014515856A (ja) グラフィック処理のためのピクセル値圧縮
TWI552113B (zh) 舖磚延遲著色的系統、方法,及電腦程式產品
JP2017505476A (ja) タイルベースのアーキテクチャ上での最適化されたマルチパスレンダリング
US10769837B2 (en) Apparatus and method for performing tile-based rendering using prefetched graphics data
EP3161793B1 (en) Adaptive partition mechanism with arbitrary tile shape for tile based rendering gpu architecture
WO2013101150A1 (en) A sort-based tiled deferred shading architecture for decoupled sampling
JP2007514230A5 (zh)
JP2016509718A (ja) ビジビリティ情報を用いたグラフィックスデータのレンダリング
WO2020192608A1 (zh) 图形渲染方法、装置和计算机可读存储介质
TW201145210A (en) Compiling for programmable culling unit
WO2022089592A1 (zh) 一种图形渲染方法及其相关设备
JP2016523401A (ja) 加えられたインライン動作とともに、ビン毎の可視情報に基づくレンダリングコマンドの条件付き実行
KR20110016938A (ko) 기하 셰이더를 사용하는 테셀레이션 엔진을 위한 시스템, 방법, 및 컴퓨터 프로그램 제품
JP7164761B2 (ja) グラフィック処理のためのアセット認識コンピューティングアーキテクチャ
JP2018503919A (ja) ベイヤーマッピングを備えたグラフィックス処理ユニット
CN116188241A (zh) 图形处理器、操作方法和机器可读存储介质