TWI483213B - 用於託付繪圖之整合式gpu、nic及壓縮硬體 - Google Patents
用於託付繪圖之整合式gpu、nic及壓縮硬體 Download PDFInfo
- Publication number
- TWI483213B TWI483213B TW098124370A TW98124370A TWI483213B TW I483213 B TWI483213 B TW I483213B TW 098124370 A TW098124370 A TW 098124370A TW 98124370 A TW98124370 A TW 98124370A TW I483213 B TWI483213 B TW I483213B
- Authority
- TW
- Taiwan
- Prior art keywords
- graphics processing
- graphics
- integrated
- memory
- unit
- Prior art date
Links
- 238000007906 compression Methods 0.000 title claims description 63
- 230000006835 compression Effects 0.000 title claims description 63
- 238000012545 processing Methods 0.000 claims description 107
- 238000004891 communication Methods 0.000 claims description 50
- 238000000034 method Methods 0.000 claims description 42
- 230000008569 process Effects 0.000 claims description 19
- 239000004744 fabric Substances 0.000 claims description 10
- 238000013507 mapping Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 3
- 230000002093 peripheral effect Effects 0.000 description 15
- 230000005540 biological transmission Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 6
- 235000012431 wafers Nutrition 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000009877 rendering Methods 0.000 description 3
- 241000699670 Mus sp. Species 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 241000699666 Mus <mouse, genus> Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001152 differential interference contrast microscopy Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- JLGLQAWTXXGVEM-UHFFFAOYSA-N triethylene glycol monomethyl ether Chemical compound COCCOCCOCCO JLGLQAWTXXGVEM-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Information Transfer Between Computers (AREA)
Description
本發明大致上係有關電腦系統的領域。本發明其中一個態樣係有關針對遠端用戶在集中位置託付(hosting)繪圖處理的方法與系統。
大致說來,電腦系統架構的設計會提供中央處理單元以高速、高頻寬去存取所選擇的系統構件(像是隨機存取系統記憶體(random access system memory,RAM)),而以低速、低頻寬去存取其他較低優先序的構件(像是網路介面控制器(Network Interface Controller,NIC)、繪圖處理單元(graphics processing unit,GPU)、超級I/O控制器(super I/O controller)、唯讀記憶體(read only memory,ROM))。例如,第1圖描繪傳統電腦系統100的範例架構。電腦系統100包含處理器102,而處理器102係連接到系統記憶體104與快速橋或「北」橋106。其中,北橋電路106係以高速、高頻寬的匯流排(如PCI Express匯流排107)連接到GPU 108,同時也以高速、高頻寬的匯流排(如Alink匯流排)連接到慢速橋或「南」橋112。「南」橋112係連接到周邊構件互連(peripheral component interconnect,PCI)匯流排110(該匯流排110又依次連接至網路介面卡(NIC)124)、序列式AT連接器(serial AT Attachment,SATA)介面114、通用序列匯流排(USB)介面116、與低腳位數(Low Pin Count,LPC)匯流排118(該匯流排118又依次連接至超級輸入/輸出控制晶片(Super I/O)120與BIOS記憶體122)。將可以瞭解的是其他種類的匯流排、裝置、與/或子系統可視需要而包含進電腦系統100中,像是快取(cache)、數據機、平行或序列介面、SCSI介面等。再者,北橋106與南橋112可採用單晶片或複數個晶片來實作,而產生集合名詞「晶片組(chipset)」。
如圖所示,處理器102係直接耦接到系統記憶體104,並透過北橋106作為介面而連接到GPU裝置108(像是透過PCI-e匯流排107)與南橋電路112(像是透過Alink匯流排)。因此,通常北橋106在CPU 102、GPU 108與南橋112之間提供高速的通訊。至於南橋112則是在北橋106與多種周邊設備、裝置、與子系統之間提供介面,該等周邊設備、裝置、與子系統係經由PCI匯流排110、SATA介面114、USB介面116、與LPC匯流排118而耦接到南橋112。例如,超級I/O晶片120與BIOS晶片係經由LPC匯流排118耦接到南橋112,而可移除的周邊裝置(如NIC 124)則是經由PCI匯流排110連接到南橋112。通常工業標準的系統設計會將個別的GPU硬體108連接到北橋電路106、或是在周邊介面埠上(要不是置於主機板上、就是封裝進插卡中),而NIC 124則是置於南橋112之外的單獨周邊介面埠上、並封裝在第二插卡中。南橋112也提供在PCI匯流排110與多種裝置和子系統(如數據機、印表機、鍵盤、滑鼠等)之間的介面,該等裝置與子系統通常係透過LPC匯流排118來耦接至電腦系統100,又或是透過LPC匯流排118的前身,像是X匯流排或工業標準結構(industrial standard architecture,ISA)匯流排。南橋112包含用來透過SATA介面114、USB介面116與LPC匯流排118將該等裝置界接(interface)到電腦系統100之其他部分的邏輯。
根據此種電腦系統資源的傳統配置與連接,特定種類的計算活動會使CPU與所連接的裝置(像是GPU 108與NIC 124)之間的內部頻寬容量發生超載。例如,當CPU 102與所連接的裝置(如GPU 108)因為同時存取系統記憶體104而向記憶體104往來傳遞資料時,便會使得共用資源(如系統記憶體104)的內部存取發生超載。此外,所連接的裝置(如GPU 108與NIC 124)之間的通訊所賦予給周邊介面的頻寬重擔,會造成電腦系統100的資料傳遞瓶頸。在以電腦系統100為複數個遠端客戶提供繪圖代管功能(graphics hosting function)的示範應用中,由GPU 108所產生的顯示流(display stream)通常係透過北橋106傳遞至系統記憶體104,接著再橫跨北橋106及南橋112而傳遞回NIC 124,不但對於沿著傳遞路徑的電路產生額外地競爭,當資料遷徙橫跨相對較低速的南橋112與相關的PCI匯流排110時也會增加延遲。為了避免由於為了從GPU 108至NIC 124傳遞該等壓縮後或未壓縮的視訊資料流所需要的連接器與纜線而加重標準插卡之隔框區域(bulkhead area)的負擔,可能會使用到特殊之內部插卡周邊介面跨接(cross-over)纜線,但是該等纜線既佔累贅又昂貴。
因此,吾人需要更佳的電腦系統架構、設備以及操作的方法學,以降低共用資源的爭用,特別是對於連接到PCI匯流排且需要短記憶體存取等待時間與高資料傳遞頻寬的裝置。此外,也需要能克服此技術領域中如上簡述之問題的電腦系統設計與方法學。嫻熟此技術之人士在閱讀本說明書的其他部分並參考附圖與以下的詳細說明之後,將可清楚明白傳統的程序與技術更多的限制與缺點。
大致說來,本發明係提供一種整合GPU、NIC與壓縮硬體的裝置,用於在由複數個網路用戶所使用之中央伺服器位置代管繪圖處理。在所選取的實施例中,該GPU、壓縮單元與網路介面控制器構件係一起組裝在單一的印刷電路板上,而該印刷電路板係在該等構件之間提供專用通訊介面,故資料流量而非經由PCI或PCI Express周邊介面電路於該等構件之間規劃路徑(routing),其中,該等周邊介面電路的通訊頻寬必須與其他的系統構件所共用。藉由在整合式繪圖處理卡上以短佈線長度做點對點的路徑規劃,便能快速有效地實施繪圖處理、壓縮與通訊功能,而不需透過慢速的PCI或PCI-express匯流排介面或像是北橋或南橋電路的其他介面控制電路傳遞資料。單一整合式GPU、NIC與壓縮單元也增加繪圖處理的速度、並簡化將繪圖傳送至遠端用戶的通訊協定,因為繪圖處理、壓縮與網路介面電路係在專用通訊介面之上直接進行互動,故可改善遠端用戶的計算體驗。將GPU、NIC與壓縮單元的功能整合在單一整合式卡片上的另一項好處是電腦系統內有更大的可用頻寬。此外,將兩張或兩張以上卡片的處理功能減少成單獨一張卡片亦可降低系統成本。由整合式GPU、NIC與壓縮硬體裝置所提供之更快的繪圖處理與網路介面速度能在集中位置處處理更多的繪圖流,並在通訊網路上多路傳輸(multiplexed)給不同的遠端用戶。在多用戶的網路組構中,中央或主伺服器(host server)係使用該整合式繪圖處理卡來實施繪圖處理以提供增加了進行計算體驗的遠端用戶數的計算體驗,並將此體驗藉由通訊連結(如專用的纜線連接或TCP/IP網路)送達遠端用戶(如位於客戶端、本機或終端機)。
根據本發明的多種實施例,提供一種電腦繪圖處理系統的方法與設備。在示範實施例中,該電腦繪圖處理系統係包含具有一或多個處理器核心的中央處理單元、系統記憶體、與耦接至該CPU與系統記憶體的高速系統控制器。此外,整合式繪圖與網路硬體裝置係經由PCI Express匯流排耦接到該高速系統控制器,而該整合式繪圖與網路硬體裝置包括:一或多個GPU、繪圖記憶體、一或多個壓縮單元及網路介面單元。整合式繪圖與網路硬體裝置也可包含PCI Express介面邏輯單元,該邏輯單元係連接至一或多個GPU,用來管理經由PCI Express匯流排通向高速系統控制器的資料通訊。藉由在PCI Express介面卡(adapter card)上形成該整合式繪圖與網路硬體裝置,GPU、繪圖記憶體、壓縮單元與網路介面單元可經由一或多個專用通訊介面而連接在一起,因此在繪圖處理期間,不需要將資料流量規劃路徑成經由高速系統控制器。在所選取的實施例中,係以硬體電路來實作該GPU,用以針對一個或多個視訊資料流顯現(rendering)數位影像資訊,以回應由CPU所儲存在繪圖記憶體中的一或多個繪圖命令清單,然後將該顯現的數位影像資訊儲存在繪圖記憶體內。在所選取的實施例中可使用複數個GPU,使得各GPU運作一虛擬機,該虛擬機係針對視訊資料流顯現數位影像資訊;又或者是單一GPU可執行複數個虛擬機,其中,各虛擬機係針對視訊資料流顯現數位影像資訊。也可以採用硬體電路實作壓縮單元,用來對於由繪圖處理單元所顯現、並儲存在繪圖記憶體內的任何數位影像資訊實施視訊壓縮。此外,可以採用硬體電路實作網路介面單元,用來以預定的通訊協定經由電腦網路來傳送壓縮後的數位影像資訊的視訊。
其他的實施例中,係提供於中央伺服器處在整合式繪圖處理卡上用於代管(hosting)繪圖處理的方法與設備。當運作時,整合式繪圖處理卡從主機處理器(host processor)取得組構資料,其中,該組構資料包括一或多個繪圖命令清單,而該清單可儲存在系統記憶體或是包含在整合式繪圖處理卡內的繪圖儲存裝置中。藉由包含於整合式繪圖處理卡上的一或多亻固GPU來實施繪圖處理,以藉由顯示數位影像資訊而產生一或多道視訊資料流以回應該一或多個繪圖命令清單;所得到的視訊資料流可儲存於包含在整合式繪圖處理卡上的繪圖儲存裝置內。然後整合式繪圖處理卡以包含於該整合式繪圖處理卡上的壓縮單元來壓縮該(等)視訊資料流(如實施MPEG或WMV9視訊壓縮),以產生一或多道壓縮後的視訊資料流。所得到之壓縮後的視訊資料流可儲存在包含於整合式繪圖處理卡上的繪圖儲存裝置內,與/或經由包含於整合式繪圖處理卡上的專用通訊介面而從壓縮單元傳遞至網路介面單元。最後,整合式繪圖處理卡使用包含在整合式繪圖處理卡上的網路介面單元,經由網路來傳送壓縮後的該(等)視訊資料流。
尚有其他的實施例係提供託付繪圖系統與方法論,藉由使用整合式繪圖處理卡對於複數個遠端客戶裝置實施繪圖處理。所揭示的整合式繪圖處理卡包含:繪圖處理單元,用來產生一或多道視訊資料流;硬體壓縮單元,被耦接成用來接收由該繪圖處理單元所產生的一或多道視訊資料流,並產生一或多道壓縮後的視訊資料流;以及網路介面控制單元,被耦接成用來接收由該硬體壓縮單元所產生的一或多道壓縮後的視訊資料流,並使用預定的通訊協定經由通訊網路來傳送該一或多道壓縮後的視訊資料流至遠端客戶裝置。該整合式繪圖處理卡可能也包括連接至該繪圖處理單元的PCI Express介面邏輯單元,用來管理經由PCI Express匯流排而通向主機處理器的資料通訊。此外,該整合式繪圖處理卡尚包括繪圖記憶體,用來儲存一或多個繪圖命令清單、一或多道視訊資料流、或是一或多道壓縮後的視訊資料流。
本發明提供一種方法與設備,將繪圖處理、壓縮與網路協定介面的構件整合在單一的印刷電路板或卡片上,而該電路板或卡片在構件間具有專用通訊介面。在所選取的實施例中,整合式繪圖處理卡係建構成包含一或多個繪圖處理單元,而每個繪圖處理單元又以串聯的方式與壓縮單元及網路介面控制單元耦接。此外,在整合式繪圖處理卡上可包含繪圖記憶體,以藉由儲存來自CPU的命令清單指令、以及由GPU所產生之未經壓縮的繪圖資料與壓縮單元所產生之壓縮後的繪圖資料,來加速繪圖處理。最後,該整合式繪圖處理卡包含連接至各GPU的PCI Express介面邏輯單元,用來管理透過PCI Express匯流排通向高速北橋(north bridge)電路的資料通訊。在所選取的實施例中,整合式繪圖處理卡係使用在中央繪圖伺服器,藉由產生、壓縮多個高解析度顯示資料與/或音訊資料流,並將該多個高解析度顯示資料與/或音訊資料流多路傳輸至單一的高速數位通訊網路上,來輸送不同的視訊資料流給N個精簡客戶裝置(thin client device)。當運作時,對於N道視訊資料流的各者,位於中央繪圖伺服器的一或多個CPU會向整合式繪圖處理卡發出命令清單指令並儲存在繪圖記憶體中。GPU可從系統記憶體、或是直接從繪圖記憶體存取該命令清單,因此不需要透過低頻寬的PCI匯流排或是南橋(south bridge)電路(如果該GPU係連接至較低速的周邊介面匯流排的話)來發送資料請求。根據該等命令清單,GPU便產生用於每道資料流之未經壓縮的影像資料,之後各資料流係儲存於本地(local)或緩衝回到繪圖記憶體內,同樣不需透過低頻寬的PCI匯流排或南橋電路發送資料。然而,由於整合式繪圖處理卡係連接至高速PCI Express匯流排及北橋電路,故於所選取的實施例中未經壓縮的影像資料可儲存在系統記憶體內,而不會造成不利的過長延遲。無論儲存在何處,當壓縮單元取回各資料流之未經壓縮的影像資料並壓縮該資料時(例如,實施音訊與/或視訊壓縮),通通不需要透過低頻寬的PCI匯流排或南橋電路發送資料。接下來,將壓縮後的音訊/視訊資料提供給NIC,在NIC,各資料流係經組構並被多路傳輸至到單一高速數位通訊網路上,用來傳輸給遠端的精簡客戶端。
現在將參考附圖詳細說明本發明的多種示範實施例。雖然以下的敘述闡明多樣細節,但是將會瞭解的是本發明可以不需要該等特定的細節仍然可以實施,同時為了達到裝置設計師的特定目標,也會對此處描述之本發明做出眾多和實作有關的決定,像是遵守製程技術或是和設計相關的限制條件,而這些會因為不同的實作而異。雖然此種發展的努力可能既複雜又耗時,然而對於理解本發明好處的此領域一般技術水準人士而言,卻是例行公事。例如,所選擇的態樣係以方塊圖的型式而非細節來表示,以免限制或模糊了本發明。此處提供的詳細說明有部分係以演算法、與用來操作儲存在電腦記憶體內之資料的指令來表示。該等說明與表示方式係被嫻熟此技術者用來與其他嫻熟此技術人士描述及傳達其工作內容。大致說來,演算法是指達成所需結果之前後一致(self-consistent)的步驟順序,其中,「步驟」是指對於物理量的處理,而該物理量可能(但非必要)具有足以被儲存、傳遞、結合、比較等等處理之電訊號或磁訊號的形式。該等訊號通常被稱作位元、值、元件、符號、字元、項、數目等。該等或類似的專門用語可能結合適當的物理量、並且只是方便使用該等物理量的符號。除非特別指明,否則的話從以下討論應有的認知為:在全篇敘述中,採取像是處理、計算、估算、判定、或顯示等專門用語的討論是指電腦系統或類似電子計算裝置的行動與程序,用來將電腦系統暫存器(register)與記憶體內表示成物理(電子)量的資料,處理及轉換為電腦系統記憶體、暫存器或其他該等資訊儲存、傳輸或顯示裝置內表示成類似物理量的其他資料。
現在翻到第2圖,係根據本發明所選取的實施例繪製出具有整合式GPU、NIC與壓縮硬體裝置230的電腦系統200之簡化架構方塊圖。所描繪的電腦系統200包含一或多個處理器或處理器核心202、北橋206、記憶體204、整合式繪圖裝置230、PCIExpress(PCI-E)匯流排210、Alink匯流排211、南橋212、序列式AT連接器(SATA)介面214、USB介面216、LPC匯流排218、超級輸入/輸出控制晶片220、BIOS記憶體222、以及一或多張其他的介面卡224。將會明白的是其他匯流排、裝置、與/或子系統可視需要被包含在電腦系統200內,例如快取、數據機、平行或序列介面、SCSI介面等。此外,電腦系統200係顯示成同時包含北橋206與南橋212,但是北橋206與南橋212在實作上卻可以是單一晶片、或是晶片組內的複數個晶片,或者是替代成單一的北橋電路。
藉由將處理器202耦接至北橋206,北橋206便在處理器202與記憶體204以及整合式繪圖裝置230(經由PCI-e匯流排210)與南橋212(經由Alink匯流排211)之間提供介面。南橋212則是在Alink匯流排211與耦接至SATA介面214、USB介面216、與LPC匯流排218的周邊設備、裝置、與子系統之間提供一介面。超級輸入/輸出控制晶片220與BIOS 222係耦接至LPC匯流排218,而其他的介面卡224則是連接到南橋212(例如透過PCI匯流排)。
北橋206係在處理器202與記憶體204、整合式繪圖裝置230(與PCI-E匯流排210)、以及透過南橋212而連接到Alink匯流排211的裝置之間提供通訊的存取。此外,可移除的周邊設備也可以插進連接到南橋212的PCI插槽(未繪出)。南橋212具有供多種裝置與子系統(例如:數據機、印表機、鍵盤、滑鼠等)所使用的介面,該等裝置與子系統通常係透過LPC匯流排218(或其前身如X匯流排或ISA匯流排)而耦接至電腦系統200。南橋212也包含透過SATA介面214、USB介面216與LPC匯流排218而將該等裝置界接到電腦系統200其他部分的邏輯。
電腦系統200為可代管資料與應用之中央伺服器的其中一部份,而供一或多個遠端客戶裝置使用。例如,中央主機可代管中央化(centralized)繪圖解決方案,其中,該方案將一或多道視訊資料流輸送給遠端用戶(如筆記型電腦、PDA等)而進行顯示,以提供遠端PC體驗。為達此目的,整合式繪圖裝置230係透過高速、高頻寬的PCI-express匯流排210而附接至該(等)處理器202,並包括一或多個GPU 231、資料壓縮單元232、網路介面單元233,這些全部都一起封裝在符合工業標準或非標準的單一插卡上。當運作時,GPU 231對執行在該(等)處理器202上的軟體所作的回應是產生電腦圖形,尤其是該軟體可產生代表要顯示物件的資料結構或命令清單。命令清單235可儲存在繪圖記憶體234內而非在系統記憶體204中,因為在繪圖記憶體234,GPU 231可快速讀取並處理該等命令清單235以產生要顯示的像素資料。GPU 231對於代表要顯示之物件的資料結構所作的處理、以及影像資料(如像素資料)之產生被稱作顯現(rendering)該影像。命令清單/資料結構235可採用任何所需的方式來定義,以包含要顯示之物件的顯示之清單(例如影像內要繪出的形狀)、影像中各物件的景深、物件要塗上紋理圖(texture map)中的紋理等。對於任何給定的資料流,當系統200運作時GPU 231可能有相當大比例的時間(如達90%的程度)都在閒置(idle),但是可利用該閒置的時間來顯現額外的資料流的影像資料,而不會降低系統200的整體效能。GPU 231藉由產生用以透過專用通訊介面241而傳送至繪圖記憶體234的寫入命令,可將像素資料以未經壓縮的視訊形式寫入繪圖記憶體234內的畫面緩衝器236。然而,由於具有高速連接的組構,GPU 231亦可將未經壓縮的視訊資料寫入系統記憶體204,而不會有太大的時間問題。因此,畫面緩衝器236可儲存一或多個資料流之未經壓縮的視訊資料以傳送給遠端用戶。
未經壓縮的視訊資料無論儲存在何處,都可以應用一或多種音訊與/或視訊的壓縮技術。壓縮單元232可實作多種視訊壓縮技術中之任何一種,像是藉由同時減少存在視訊畫面中的空間與時間冗餘以壓縮視訊資訊的畫面內壓縮(intraframe compression)與畫面間壓縮(interframe compression)。為了實作資料壓縮,整合式繪圖裝置230包含具有專用硬體與/或軟體的壓縮單元232,用來實施畫面內壓縮、畫面間壓縮。例如,以離散餘弦轉換(discrete cosine transform,DCT)編碼架構來實施空間或基於方塊(block-based)的編碼、量化、層級(run-level)編碼、可變長度(variable length coding)編碼,或是使用其他的亂度(entropy)編碼技巧,像是內容相關漸進式二進制算數編碼(Context-based Adaptive Binary Arithmetic Coding,CABAC)、內容漸進式可變長度編碼(Context Adaptive Variable Length Coding,CAVLC)等。當運作時,壓縮單元232藉由產生用以透過專用通訊介面242而傳送至繪圖記憶體234的讀取命令,從繪圖記憶體234取回未經壓縮的視訊236。之後,壓縮單元232壓縮該取回的資料以減少用來表示音訊/視訊資訊的資料量。接下來,壓縮單元232可透過專用通訊介面242將壓縮後的視訊資料寫到繪圖記憶體234內的緩衝器237,惟該壓縮後的視訊資料也可以改為儲存在系統記憶體204內。因此,緩衝器237可儲存一或多道資料流之壓縮後的視訊資料以傳送給遠端用戶。
整合式繪圖裝置230包含網路介面控制器(network interface controller,NIC)裝置233,用來將壓縮後的視訊資料流傳遞給遠端用戶。NIC 233(也稱作網路卡、網路介面卡、LAN介面卡或網路介面卡)是一種專用的硬體電路,設計用來讓電腦以預定的通訊協定,透過電腦網路250進行溝通。NIC 233包含的硬體電路係經設置成使用預定的通訊協定(像是TCP/IP)以從通訊網路250(例如網際網路或其他電腦網路)接收訊號及將訊號傳送至通訊網路250,藉此使得電腦系統200得以連接至遠端用戶/客戶裝置(未繪出)。當運作時,NIC 233藉由產生用以透過專用通訊介面243而傳送至繪圖記憶體234的讀取命令,從繪圖記憶體234取回壓縮後的視訊237。然後NIC 233處理所取回的資料,並產生遵循特定網路通訊標準而格式化的往外視訊資料流。NIC 233也可以遵循像是RDP、ICA、VNC、RGS或其他專屬架構的遠端顯示協定而處理該(等)往外的資料流。
藉由透過專用通訊介面將整合式繪圖裝置230中的構件GPU 231、壓縮單元232與NIC 233連接至繪圖記憶體234,便不用再透過Alink匯流排211與南橋電路212讀取或寫入資料,故電腦系統200內其他資源便不會被佔用而可從事其他運算。此外,由於整合式繪圖裝置230係透過高速PCI-E匯流排210而連接,故和GPU係連接至南橋的傳統組構相較之下,視訊處理的軟體控制能快速進行。除了減少電腦系統200內爭用的問題以外,整合式繪圖裝置230還增加顯現、壓縮與傳送繪圖資訊的整體處理速度,不但改善遠端體驗,也讓單一主機電腦系統支援更多的遠端用戶。
第3圖說明此種多用戶的應用範例,該第3圖係描繪託付繪圖系統300,對於一或多個網路用戶350至352使用繪圖主伺服機302來實施繪圖處理。繪圖主伺服機302包含一或多個中央處理單元(CPU)310、系統記憶體312、系統匯流排313、以及對一或多個網路用戶350至352實施繪圖處理的整合式繪圖硬體裝置320。CPU 310可採用一或多個處理器核心來實作,而該等核心係實施AMD64指令集架構、或其他所需的指令集架構,但並不限於x86 ISA、PowerPC ISA、ARM ISA、SPARC ISA、MIPS ISA等。在某些實施例中只會包含一個處理器核心,而在其他實施例的多核心組構中則會包含兩個或兩個以上的處理器核心。至於系統記憶體312則可能透過控制器來連接,並且可能實作成內建於主機板上(on-board)或晶片外(off-chip)的第一級(L1)、第二級(L2)、與/或第三級(L3)快取記憶體、一或多個DDR SDRAM模組、快閃記憶體、RAM、ROM、PROM、EPROM、EEPROM、磁碟機記憶體裝置一類。CPU 310與系統記憶體312係透過高速、高頻寬匯流排或介面313(例如超傳送標準(HyperTransport)的互連件)而彼此連接,該匯流排介面313並依序連接至整合式繪圖硬體裝置320。匯流排313係作用為負責在CPU 310、系統記憶體312與整合式繪圖硬體裝置320之間進行通訊的橋(bridge)、介面與/或通訊匯流排。因此,匯流排313可結合記憶體控制器功能來控制系統記憶體313。匯流排313可包含北橋單元,該北橋單元可為單一整合式電路晶片、在多晶片模組內有兩個或多個晶片、耦接至電路板的兩個或多個個別的整合式電路等。所描繪的整合式繪圖硬體裝置320包含PCI Express介面邏輯單元構件322、一或多個GPU構件(324、334)、一或多個壓縮單元構件(326、336)、以及網路介面單元構件328,而所有構件皆封裝在工業標準的單一插卡329上,像是PCI或PCI-Express介面卡。雖然沒有畫出來,但是整合式繪圖硬體裝置320也包含繪圖記憶體或緩衝器,用來儲存命令清單並處理與/或壓縮傳輸給網路用戶350至352的視訊資料。然而為了清楚說明及便於理解,並沒有詳述組成繪圖主伺服機302的所有元件。該等細節已經為此技術領域之一般技藝人士所熟知,並且會因為特定的電腦廠商與微處理器類型而異。此外,繪圖主伺服機302也包含其他的匯流排、裝置、與/或子系統,端視所需要的實作而定。最後,將明白的是也可採用其他的封裝架構。例如,壓縮單元(236、336)可整合進GPU(324、334)之內,或另一種作法是將其與網路介面單元328結合。
藉由將GPU 324、壓縮單元326以及網路介面單元328置於同一實體印刷電路板329上,便能將它們以專用通訊介面連接在一起。例如,PCI Express介面邏輯單元構件322係管理在匯流排313之上的資料通訊,並且透過專用通訊介面323而連接到GPU 324。GPU 324係藉由專用通訊介面325依序連接到壓縮單元326,而壓縮單元326則是透過專用通訊介面327連接到NIC單元328。藉由這些專用通訊介面,GPU、壓縮、網路介面構件能在整合式繪圖硬體裝置320內規劃資料流量之路徑(route),而非經由必須與其他的系統構件共用通訊頻寬的PCI Express周邊介面313的PCI、或是其他匯流排電路(如南橋電路)規劃資料流量之路徑。此種效能之優勢係藉由將專用的繪圖記憶體包含在整合式繪圖硬體裝置320上而提升,其中,整合式繪圖硬體裝置320係透過點對點的路徑規劃與短佈線長度(short wiring run)而連接到GPU、壓縮、與網路介面構件。在卡片320上點對點的路徑規劃與短佈線長度不但增加卡片320的資料處理速度,同時也增加用於通訊之匯流排313的可用頻寬、並簡化通訊協定。
由於具有整合式繪圖硬體裝置320,故繪圖主伺服機302可被組構成藉由在繪圖主伺服機302處產生並顯現各用戶的計算體驗,而將遠端PC體驗送達一或多個遠端用戶350至352。當運作時,繪圖主伺服機302係實施遠端用戶350至352所有的繪圖處理。各遠端用戶的繪圖處理體驗(輸入、輸出)係使用遠端顯示協定(如RDP、ICA、VNC、RGS或其他專屬架構)、透過媒體340(像是專用的纜線或網路)而送達客戶端、本機/終端機處的遠端用戶。該遠端體驗係包含:為繪圖主伺服機302在客戶端(如350)提供適當的輸入與輸出功能。該等輸入與輸出功能可包含將主伺服機的輸出顯示在本地一個或多個螢幕上、從客戶端機器發送至主機的鍵盤與滑鼠輸入、客戶端機器處的用戶與主伺服機之間傳遞的音訊輸入輸出、以及通用的I/O(像是序列或平行埠,但更常是USB埠)。
因為整合式繪圖硬體裝置320提供更好的效率與效能,所以繪圖主伺服機302能夠一次驅動超過一個客戶端(即超過一個終端用戶的計算體驗)。該解決方案被稱為「1對N」(或1:N)解決方案,其中,繪圖主伺服機302將視訊資料流輸送給N個圖形豐富(graphically rich)的精簡客戶端。該1:N解決方案要求繪圖主伺服機302在單一、高速的數位通訊網路(如乙太網路)上產生並多路傳輸多道高解析度的顯示資料流。可使用多種技術從整合式繪圖硬體裝置320處來產生多道之資料流。例如,整合式繪圖硬體裝置320可包含多個實體GPU 324、334,其中,各GPU係執行虛擬機(virtual machine,VM);又或者是藉由在VM之間實作出GPU的真實虛擬化(使該(等)GPU被共用於虛擬機之間),而在單一GPU 324上組構並運行多個虛擬機(VM)。但是虛擬資料流在產生之後必須接著被一或多個壓縮引擎326、336分別壓縮,然後由傳輸引擎328格式化以傳輸給遠端的客戶端顯示。
1:N解決方案對於記憶體存取與資料傳遞的要求將遠超出傳統電腦系統設計的頻寬容量。因為傳統電腦系統設計係將個別的GPU硬體置於一個周邊介面埠上、並將NIC硬體置於另一個周邊介面埠上,因此造成系統傳遞資料的瓶頸。然而,藉由將GPU 324、壓縮硬體326與網路介面卡328整合在同一塊具有繪圖記憶體或緩衝器的印刷電路板329上,GPU 324、壓縮單元326與NIC 328便能夠產生、壓縮並傳送多道顯示流,而不會對系統302其他部分施加大量的頻寬重擔。
現在翻到第4圖,係描繪一示範方法,藉由使用整合式繪圖處理裝置來實施多道資料流的繪圖處理及傳輸。該方法從步驟402開始,主機處理器將命令清單儲存在繪圖記憶體或緩衝器內。較佳的作法為把繪圖記憶體或緩衝器置於整合式繪圖處理裝置內,但是也可以置於系統記憶體內。在步驟404,GPU取回該命令清單,並使用該命令清單來顯現給定資料流N之未經壓縮的圖形。接下來,所得到之該資料流的未經壓縮的圖形便於步驟406被儲存進繪圖記憶體/緩衝器中。在步驟408,壓縮引擎取回該未經壓縮的圖形,並使用多種音訊與/或視訊壓縮技術的任何一種從其產生壓縮後的圖形。例如,藉由同時減少存在視訊畫面中空間與時間的冗餘,實施影像壓縮與/或移動補償來壓縮視訊資料。然而將可明白的是,已發展出、或正在發展許多種壓縮標準,其係用來壓縮並解壓縮視訊資訊,像是用於視訊編碼與解碼的動畫壓縮標準(Moving Pictures Expert Group,MPEG),如MPEG-1、MPEG-2、MPEG-3、MPEG-4、MPEG-7、MPEG-21;或是視窗媒體視訊(Windows Media Video,WMV)壓縮標準,如WMV9。壓縮後的圖形可儲存在繪圖記憶體/緩衝器內,或是直接轉給傳輸引擎(步驟410)處理以傳輸給遠端用戶N。如果還有其他的資料流要處理(決策方塊412的肯定結果),便選取下一道資料流(步驟414)並重複本流程直到沒有任何其他的資料流要處理(決策方塊412的否定結果),於該點此流程便告結束。
如此處所述,以上揭露之本發明所選取的態樣可採用硬體或軟體來實作,因而此處實施方式有部分係以硬體實作的流程來表達,而有另一部分則係以軟體實作的流程來表達(該軟體實作的流程牽涉電腦系統或計算裝置的記憶體內之資料位元運算的符號表示)。大致說來,電腦硬體是電腦的實體部分(包含電腦的數位電路),而與在硬體內執行的電腦軟體不同。和軟體與硬體資料相較之下,電腦硬體並不常被更改,而軟體與硬體資料因為可以輕易在電腦上被產生、修改或抹除,故為「軟」體。該等敘述與表示係嫻熟此技術者用來與其他同時使用軟、硬體的嫻熟此技術人士之最有效地傳達其工作內容的手段。
以上揭露的特定實施例係僅用來說明,不應當成本發明的限制。因為對於瞭解此處教示之優點的嫻熟此技術人士而言,本發明可用不同但是均等的方式來修改與實施。因此,以上敘述並非打算用來限制本發明在已闡明的特定形式;相反地,乃打算涵蓋可包含在所附申請專利範圍所定義之本發明的精神與範圍內的該等其他作法、修改與均等物。故嫻熟此技術者應瞭解到在不背離本發明最廣義形式的精神與範圍下,得以實施多種改變、代換與其他作法。
100...傳統電腦系統
102...處理器
104,204...記憶體
106,206...北橋
107,210...PCI Express匯流排
108,231,324,334...繪圖處理單元
110...PCI匯流排
112,212...南橋
114,214...序列式AT連接器介面
116...通用序列匯流排介面
118,218...LPC匯流排
120,220...超級輸入/輸出控制晶片
122...BIOS記憶體
124...網路介面卡
200...電腦系統
202...處理器核心
211...Alink匯流排
216...USB介面
222...BIOS
224...其他介面卡
230...整合式繪圖裝置
232...壓縮單元
233...網路介面控制器
234...繪圖記憶體
235...命令清單
236...畫面緩衝器
237...緩衝器
241至243,323,325,327...專用通訊介面
250...電腦網路
300...託付繪圖系統
302...繪圖主伺服機
310...中央處理單元
312...系統記憶體
313...系統匯流排
320...整合式繪圖硬體裝置
322...PCI Express介面邏輯單元構件
326,336...壓縮單元/壓縮引擎
328...網路介面單元構件/傳輸引擎
329...印刷電路板
340...媒體
350至352...客戶端
嫻熟此技術者可藉由參考附圖而更加瞭解本發明並使其多項目標、特徵與優點變得更為清楚。數個圖式間使用相同的元件編號來代表相同或相似的元件。
第1圖描繪傳統電腦系統的簡化架構方塊圖。
第2圖係根據所選擇的本發明實施例,描繪具有整合式GPU、NIC與壓縮硬體之電腦系統的簡化架構方塊圖。
第3圖描繪包含整合式繪圖硬體裝置的繪圖主伺服器,該繪圖硬體裝置用來實施一或多個網路用戶的繪圖處理。
第4圖描繪使用整合式繪圖處理裝置在多道資料流上實施繪圖處理與傳輸的一種示範的流程方法學。
200...電腦系統
202...處理器核心
204...記憶體
206...北橋
210...PCI Express匯流排
211...Alink匯流排
212...南橋
214...序列式AT連接器介面
216...USB介面
218...LPC匯流排
220...超級輸入/輸出控制晶片
222...BIOS
224...其他介面卡
230...整合式繪圖裝置
231...繪圖處理單元
232...壓縮單元
233...網路介面控制器
234...繪圖記憶體
235...命令清單
236...畫面緩衝器
237...緩衝器
241至243...專用通訊介面
250...電腦網路
Claims (18)
- 一種電腦繪圖處理系統,包括中央處理單元(CPU),包括至少一個處理器核心;系統記憶體;高速系統控制器,耦接至該CPU與系統記憶體;以及整合式繪圖與網路硬體裝置,其係經由PCI Express匯流排耦接到該高速系統控制器,並從該中央處理單元取得組構資料,該組構資料包括一或多個繪圖命令清單,且該整合式繪圖與網路硬體裝置包括:繪圖處理單元、繪圖記憶體、壓縮單元及網路介面單元,其中,該繪圖記憶體係儲存該一或多個繪圖命令清單,該繪圖處理單元係實施繪圖處理以產生一或多道視訊資料流,以回應該繪圖記憶體所儲存的該一或多個繪圖命令清單。
- 如申請專利範圍第1項的電腦繪圖處理系統,其中,該整合式繪圖與網路硬體裝置包括PCI Express介面卡,而該繪圖處理單元、該繪圖記憶體、該壓縮單元以及該網路介面單元係藉由一或多個專用通訊介面在該PCI Express介面卡上連接在一起。
- 如申請專利範圍第1項的電腦繪圖處理系統,其中,該繪圖處理單元包括一硬體電路,該硬體電路係顯現數位影像資訊,以回應由該CPU所儲存在該繪圖記憶體中的該一或多個繪圖命令清單,然後,將該經顯現的數位影像資訊儲存在該繪圖記憶體內。
- 如申請專利範圍第1項的電腦繪圖處理系統,其中,該繪圖處理單元包括一硬體電路,該硬體電路係針對該一或多道視訊資料流顯現數位影像資訊,以回應儲存在該繪圖記憶體中該一或多個繪圖命令清單。
- 如申請專利範圍第1項的電腦繪圖處理系統,其中,該壓縮單元包括硬體電路,該硬體電路係用來對於由該繪圖處理單元所顯現、並儲存在該繪圖記憶體內的任何數位影像資訊實施視訊壓縮。
- 如申請專利範圍第1項的電腦繪圖處理系統,其中,該網路介面單元包括硬體電路,該硬體電路係使用預定的通訊協定經由電腦網路來傳送壓縮後的數位影像資訊的視訊。
- 如申請專利範圍第1項的電腦繪圖處理系統,其中,該整合式繪圖與網路硬體裝置包括複數個繪圖處理單元,其中,各繪圖處理單元運作一虛擬機,該虛擬機係針對視訊資料流顯現數位影像資訊。
- 如申請專利範圍第1項的電腦繪圖處理系統,其中,該整合式繪圖與網路硬體裝置包括繪圖處理單元,該繪圖處理單元運作複數個虛擬機,其中,各虛擬機係針對視訊資料流顯現數位影像資訊。
- 如申請專利範圍第1項的電腦繪圖處理系統,其中,該整合式繪圖與網路硬體裝置包括連接至該繪圖處理單元的PCI Express介面邏輯單元,其係用來管理經由PCI Express匯流排而通向該高速系統控制器的資料通 訊。
- 一種於中央伺服器處在整合式繪圖處理卡上代管繪圖處理的方法,包括:以該整合式繪圖處理卡從主機處理器取得組構資料,該組構資料包括一或多個繪圖命令清單;儲存該一或多個繪圖命令清單至包含於該整合式繪圖處理卡上的繪圖儲存裝置中;藉由包含於該整合式繪圖處理卡上的繪圖處理單元實施繪圖處理,以產生一或多道視訊資料流以回應該繪圖儲存裝置所儲存的該一或多個繪圖命令清單;以包含於該整合式繪圖處理卡上的壓縮單元壓縮該一或多道視訊資料流,以產生一或多道壓縮後的視訊資料流;以及使用包含於該整合式繪圖處理卡上的網路介面單元而經由網路傳送該一或多道壓縮後的視訊資料流。
- 如申請專利範圍第10項的方法,其中,壓縮該一或多道視訊資料流係包括對由該繪圖處理單元所產生的一或多道視訊資料流實施MPEG或WMV9視訊壓縮。
- 如申請專利範圍第10項的方法,復包括:將該一或多道視訊資料流儲存在該繪圖儲存裝置內。
- 如申請專利範圍第10項的方法,復包括:將該一或多道壓縮後的視訊資料流儲存在該繪圖儲存裝置內。
- 如申請專利範圍第10項的方法,其中,實施繪圖處理係包括以包含在該整合式繪圖處理卡上的複數個繪圖 處理單元來實施繪圖處理,以產生該一或多道視訊資料流以回應該一或多個繪圖命令清單。
- 如申請專利範圍第10項的方法,復包括:經由包含在該整合式繪圖處理卡上的專用通訊介面,將該一或多道壓縮後的視訊資料流從該壓縮單元傳遞至該網路介面單元。
- 一種託付繪圖系統,包括:整合式繪圖處理卡,用來對於複數個遠端客戶裝置實施繪圖處理,並從主機處理器取得組構資料,該組構資料包括一或多個繪圖命令清單,該整合式繪圖處理卡包括:繪圖記憶體,用來儲存該一或多個繪圖命令清單;繪圖處理單元,用來實施該繪圖處理以產生一或多道視訊資料流,以回應該繪圖記憶體所儲存的該一或多個繪圖命令清單;硬體壓縮單元,被耦接成用來接收由該繪圖處理單元所產生的一或多道視訊資料流,並產生一或多道壓縮後的視訊資料流;以及網路介面控制單元,被耦接成用來接收由該硬體壓縮單元所產生的一或多道壓縮後的視訊資料流,並使用預定的通訊協定經由通訊網路來傳送該一或多道壓縮後的視訊資料流至遠端客戶裝置。
- 如申請專利範圍第16項的託付繪圖系統,其中,該整合式繪圖處理卡復包括連接至該繪圖處理單元的PCI Express介面邏輯單元,用來管理經由PCI Express匯流排而通向該主機處理器的資料通訊。
- 如申請專利範圍第16項的託付繪圖系統,其中,該繪圖記憶體復儲存該一或多道視訊資料流、或是該一或多道壓縮後的視訊資料流。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/176,946 US20100013839A1 (en) | 2008-07-21 | 2008-07-21 | Integrated GPU, NIC and Compression Hardware for Hosted Graphics |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201019263A TW201019263A (en) | 2010-05-16 |
TWI483213B true TWI483213B (zh) | 2015-05-01 |
Family
ID=41110947
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098124370A TWI483213B (zh) | 2008-07-21 | 2009-07-20 | 用於託付繪圖之整合式gpu、nic及壓縮硬體 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20100013839A1 (zh) |
TW (1) | TWI483213B (zh) |
WO (1) | WO2010011292A1 (zh) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100011012A1 (en) * | 2008-07-09 | 2010-01-14 | Rawson Andrew R | Selective Compression Based on Data Type and Client Capability |
US20100115510A1 (en) * | 2008-11-03 | 2010-05-06 | Dell Products, Lp | Virtual graphics device and methods thereof |
US9060187B2 (en) * | 2008-12-22 | 2015-06-16 | Netflix, Inc. | Bit rate stream switching |
US8629878B2 (en) * | 2009-08-26 | 2014-01-14 | Red Hat, Inc. | Extension to a hypervisor that utilizes graphics hardware on a host |
WO2011032114A1 (en) | 2009-09-11 | 2011-03-17 | Citrix Systems, Inc. | Remote rendering of three-dimensional images using virtual machines |
US20110125987A1 (en) * | 2009-11-20 | 2011-05-26 | Qualcomm Incorporated | Dedicated Arithmetic Decoding Instruction |
US8984167B1 (en) * | 2009-12-10 | 2015-03-17 | Nvidia Corporation | Real-time frame streaming from remote graphics processing unit |
CN102253918B (zh) * | 2010-05-05 | 2014-04-23 | 英业达股份有限公司 | 计算机系统 |
US9733963B2 (en) | 2010-09-17 | 2017-08-15 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Optimizing virtual graphics processing unit utilization |
WO2012050560A1 (en) * | 2010-10-11 | 2012-04-19 | Hewlett-Packard Development Company, L.P. | First and second software stacks and discrete and integrated graphics processing units |
CN102097080B (zh) * | 2010-12-27 | 2015-06-17 | 华为技术有限公司 | 显示驱动处理方法、装置和系统 |
US9727385B2 (en) | 2011-07-18 | 2017-08-08 | Apple Inc. | Graphical processing unit (GPU) implementing a plurality of virtual GPUs |
US20130093776A1 (en) * | 2011-10-14 | 2013-04-18 | Microsoft Corporation | Delivering a Single End User Experience to a Client from Multiple Servers |
CN102541804B (zh) * | 2011-12-26 | 2014-04-02 | 中国人民解放军信息工程大学 | 一种异构系统中多gpu互连体系结构 |
ITRM20120094A1 (it) * | 2012-03-14 | 2013-09-14 | Istituto Naz Di Fisica Nuclea Re | Scheda di interfaccia di rete per nodo di rete di calcolo parallelo su gpu, e relativo metodo di comunicazione internodale |
US9189394B2 (en) | 2012-08-08 | 2015-11-17 | Wisconsin Alumni Research Foundation | Memory-link compression for graphic processor unit |
US20140098113A1 (en) * | 2012-10-10 | 2014-04-10 | Advanced Micro Devices, Inc. | Network-enabled graphics processing unit |
US9363187B2 (en) * | 2012-11-28 | 2016-06-07 | Nvidia Corporation | Jitter buffering system and method of jitter buffering |
US20140347376A1 (en) * | 2013-05-24 | 2014-11-27 | Nvidia Corporation | Graphics server and method for managing streaming parameters |
US11283866B2 (en) | 2014-07-07 | 2022-03-22 | Citrix Systems, Inc. | Providing remote access to applications through interface hooks |
US11310312B2 (en) | 2014-07-07 | 2022-04-19 | Citrix Systems, Inc. | Peer to peer remote application discovery |
US20160292115A1 (en) * | 2015-03-30 | 2016-10-06 | Integrated Device Technology, Inc. | Methods and Apparatus for IO, Processing and Memory Bandwidth Optimization for Analytics Systems |
TWI592874B (zh) | 2015-06-17 | 2017-07-21 | 康齊科技股份有限公司 | 網路伺服系統 |
US20170214930A1 (en) * | 2016-01-26 | 2017-07-27 | Sandia Corporation | Gpu-assisted lossless data compression |
US10555010B2 (en) * | 2016-08-24 | 2020-02-04 | Liquidsky Software, Inc. | Network-enabled graphics processing module |
US10936533B2 (en) * | 2016-10-18 | 2021-03-02 | Advanced Micro Devices, Inc. | GPU remote communication with triggered operations |
US10482040B2 (en) | 2017-12-21 | 2019-11-19 | International Business Machines Corporation | Method, system, and apparatus for reducing processor latency |
US20210203704A1 (en) * | 2021-03-15 | 2021-07-01 | Intel Corporation | Cloud gaming gpu with integrated nic and shared frame buffer access for lower latency |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030184549A1 (en) * | 2002-03-26 | 2003-10-02 | Samsung Electronics Co., Ltd. | Image processing apparatus, and apparatus for and method of receiving processed image |
TW200504578A (en) * | 2003-07-25 | 2005-02-01 | Via Tech Inc | Graphic display architecture and control chip set therein |
US20060146057A1 (en) * | 2004-12-30 | 2006-07-06 | Microsoft Corporation | Systems and methods for virtualizing graphics subsystems |
US20080055322A1 (en) * | 2006-08-31 | 2008-03-06 | Ryan Thomas E | Method and apparatus for optimizing data flow in a graphics co-processor |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7164844B1 (en) * | 2000-03-02 | 2007-01-16 | The Directv Group, Inc. | Method and apparatus for facilitating reverse playback |
US7149213B1 (en) * | 2001-12-28 | 2006-12-12 | Advanced Micro Devices, Inc. | Wireless computer system with queue and scheduler |
US7305675B1 (en) * | 2002-01-11 | 2007-12-04 | Advanced Micro Devices, Inc. | Processing tasks with failure recovery |
AU2003208477A1 (en) * | 2002-03-01 | 2003-09-16 | T5 Labs Ltd | Centralised interactive graphical application server |
US7334123B2 (en) * | 2003-05-02 | 2008-02-19 | Advanced Micro Devices, Inc. | Computer system including a bus bridge for connection to a security services processor |
US7899864B2 (en) * | 2005-11-01 | 2011-03-01 | Microsoft Corporation | Multi-user terminal services accelerator |
US7750912B2 (en) * | 2005-11-23 | 2010-07-06 | Advanced Micro Devices, Inc. | Integrating display controller into low power processor |
US7773090B1 (en) * | 2006-06-13 | 2010-08-10 | Nvidia Corporation | Kernel mode graphics driver for dual-core computer system |
BRPI0818582A2 (pt) * | 2007-10-20 | 2015-07-21 | Citrix Systems Inc | Métodos e sistemas para exibir remotamente dados gráficos tridimensionais |
TW200943223A (en) * | 2008-02-27 | 2009-10-16 | Ncomputing Inc | 3D graphics acceleration in remote multi-user environment |
US8477143B2 (en) * | 2008-03-04 | 2013-07-02 | Apple Inc. | Buffers for display acceleration |
US8139072B2 (en) * | 2008-04-14 | 2012-03-20 | Mcgowan Scott James | Network hardware graphics adapter compression |
-
2008
- 2008-07-21 US US12/176,946 patent/US20100013839A1/en not_active Abandoned
-
2009
- 2009-07-20 TW TW098124370A patent/TWI483213B/zh active
- 2009-07-21 WO PCT/US2009/004226 patent/WO2010011292A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030184549A1 (en) * | 2002-03-26 | 2003-10-02 | Samsung Electronics Co., Ltd. | Image processing apparatus, and apparatus for and method of receiving processed image |
TW200504578A (en) * | 2003-07-25 | 2005-02-01 | Via Tech Inc | Graphic display architecture and control chip set therein |
US20060146057A1 (en) * | 2004-12-30 | 2006-07-06 | Microsoft Corporation | Systems and methods for virtualizing graphics subsystems |
US20080055322A1 (en) * | 2006-08-31 | 2008-03-06 | Ryan Thomas E | Method and apparatus for optimizing data flow in a graphics co-processor |
Also Published As
Publication number | Publication date |
---|---|
WO2010011292A1 (en) | 2010-01-28 |
TW201019263A (en) | 2010-05-16 |
US20100013839A1 (en) | 2010-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI483213B (zh) | 用於託付繪圖之整合式gpu、nic及壓縮硬體 | |
US9189261B2 (en) | Saving, transferring and recreating GPU context information across heterogeneous GPUs during hot migration of a virtual machine | |
JP5971493B2 (ja) | Gpuリソースの複数のクライアントへの割り当て | |
US10555010B2 (en) | Network-enabled graphics processing module | |
US7899864B2 (en) | Multi-user terminal services accelerator | |
EP1955187B1 (en) | Multi-user display proxy server | |
JP2008526107A (ja) | リモートコンピューティングにおけるグラフィクスプロセッサの使用 | |
US9235452B2 (en) | Graphics remoting using augmentation data | |
CN108762934B (zh) | 远程图形传输系统、方法及云服务器 | |
JP2013541295A (ja) | 画像圧縮のためのエントロピーコーダー | |
CN102378976A (zh) | 使用多个处理器的图像压缩加速 | |
WO2009108353A1 (en) | 3d graphics acceleration in remote multi-user environment | |
CN114840339A (zh) | Gpu服务器、数据计算方法及电子设备 | |
KR20230041593A (ko) | 프로그래밍가능한 인터리브 입도를 갖는 cxl 타입-2 디바이스들을 위한 확장가능한 주소 디코딩 체계 | |
JP2015176435A (ja) | Lsiチップ積層システム | |
CN103634945A (zh) | 一种基于soc的高性能云终端 | |
WO2021136433A1 (zh) | 一种电子设备及计算机系统 | |
Pranjkic et al. | Multi-SoC load balancing system for ADAS application | |
CN115168263A (zh) | 一种bmc芯片及主机系统 | |
KR20240018028A (ko) | 3d 컨텐츠 스트리밍 시스템 |