CN1991904A - 图像处理单元的并行引擎的同步方法及系统 - Google Patents
图像处理单元的并行引擎的同步方法及系统 Download PDFInfo
- Publication number
- CN1991904A CN1991904A CNA2006101355957A CN200610135595A CN1991904A CN 1991904 A CN1991904 A CN 1991904A CN A2006101355957 A CNA2006101355957 A CN A2006101355957A CN 200610135595 A CN200610135595 A CN 200610135595A CN 1991904 A CN1991904 A CN 1991904A
- Authority
- CN
- China
- Prior art keywords
- processing unit
- order
- engine
- event memory
- engines
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
- Image Processing (AREA)
- Multi Processors (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Input (AREA)
- Information Transfer Systems (AREA)
Abstract
一种图像处理单元(GPU)内多个引擎的同步方法及系统。当发送命令至引擎时,中央处理单元(CPU)写入一代表该命令的事件值至事件存储器的组件内。于执行完命令后,引擎修改事件存储器的内容,用以确认该命令已执行完成。中央处理单元读取事件存储器的经修改内容,以获得命令的执行状态。中央处理单元根据执行状态以发送命令至各个引擎,因而使得各引擎可以并行运作。
Description
技术领域
本发明涉及计算机图像的系统,特别是涉及图像处理单元内多个并行引擎的同步方法与系统。
先前技术
图像处理单元(graphics processing unit,GPU)是计算机系统或游戏主机内的专用图像处理装置。图像处理单元内部通常具有多个并行的处理结构或引擎(engines)用以执行特定的功能,以改善图像处理单元的效能。例如,图像处理单元包含3D引擎来提供实时3D的图形转译(rendering),另外还包含其它2D引擎和主影像转换(master-image-transfer,MIT)引擎等等。
即使这些引擎可以独立运作,传统的计算机系统仍缺乏足够的同步机制,亦即,在一引擎完成一任务之后,并没有一个机制可用以通知该事件。为了从一个引擎切换到另一个引擎,中央处理单元(CPU)必须插入一等待引擎闲置(wait-engine-idle)命令,其挡住其它引擎的命令,因此阻碍引擎的并行运作。
此问题会变成效能的瓶颈,尤其是在多重图像处理单元(multi-GPU)和多重缓冲器(multi-buffer)的应用上。例如,假设有一主图像处理单元(masterGPU)和一个或多个从属图像处理单元(slave GPU)相互结合,并且在从图像处理单元中,当一3D引擎完成一帧转译(frame rendering)之后,其主影像转换(MIT)引擎开始将帧进行位阻隔转换(bit-block-transfer,BLT)至一主图像处理单元的缓冲器。理想上3D引擎应能在目前帧转译后立即进行下一帧的转译,但是在缺乏适当的同步机制下,3D引擎在开始下一个帧转译之前,必须等待主影像转换(MIT)引擎完成其位阻隔转换(BLT)。此处的“主图像处理单元(master GPU)”是指直接连结至一显示驱动器的图像处理单元;而“从属图像处理单元(slave GPU)”则指未直接连结至显示驱动器及必须将转译影像传送给主图像处理单元以进行显示的图像处理单元。
因此极需一种具有同步装置的计算机系统,用以让图像处理单元的多个引擎可以并行运作以改善效能。
发明内容
鉴于上面所述,本发明提出一种图像处理单元(GPU)内多个引擎的同步方法及系统,使得各引擎可以并行运作。
根据本发明的一实施例,当发送命令至引擎时,中央处理单元(CPU)写入一代表该命令的事件值至事件存储器的组件内。于执行完命令后,引擎修改事件存储器的内容,用以确认该命令已执行完成。中央处理单元检视事件存储器的经修改内容,以获得命令的执行状态。中央处理单元根据执行状态以发送命令至各个引擎,因而使得各引擎可以并行运作。
下面详细的实施例及图式说明可用以进一步了解本发明的架构、方法、目的及优点。
附图说明
图1的框图显示一计算机系统的一部份,其配置有事件存储器用以追踪事件。
图2的流程图说明事件存储器的更新操作及命令的发送。
附图符号说明
100计算机系统
110图像处理单元(GPU)
120三维(3D)转译引擎
130二维(2D)图像引擎
140影像(Video)处理引擎
150主影像转换(MIT)引擎
160事件存储器
170、172、174、176存储器组件
180中央处理单元(CPU)
210-260图2流程图的各步骤说明
具体实施方式
一种同步方法及系统,用以同步计算机系统内图像处理单元(graphicsprocessing unit,GPU)的多个引擎,使得图像处理单元的效能提升。有关于图像处理单元的详细运作说明,披露于本申请同一申请人的其它美国申请,其标题分别为:“METHOD AND SYSTEM FOR DEFERRED COMMANDISSUING IN A COMPUTER SYSTEM”、“TRANSPARENTMULTI-BUFFERING IN MULTI-GPU GRAPHICS SUBSYSTEM”、“EVENTMEMORY ASSISTED SYNCHRONIZATION IN MULTI-GPU GRAPHICSSUBSYSTEM”。
图1的框图显示一计算机系统100的一部份,其具有一图像处理单元(GPU)110。在图像处理单元110中,有n个引擎用以执行各种工作(task),例如三维(3D)转译(rendering)引擎120、二维(2D)图像引擎130、影像(Video)处理引擎140及主影像转换(master-image-transfer,MIT)引擎150。一组事件存储器160,可从快速周边零件连接界面(PCI Express)、影像存储器或其它存储器空间来配置,用以储存图像处理单元引擎事件的状态。此事件存储器160有n个存储器170-176,每一个存储器给一个特定的引擎使用。例如,事件存储器170给3D引擎120使用,事件存储器172给2D引擎130使用,事件存储器174给影像引擎140使用,以及事件存储器176给MIT引擎150使用。每一个事件存储器中又包含多个组件。例如,如图1所示,有m+1个组件,一特定的组件提供作为读取组件(如事件存储器170中的R1),及剩余的m个组件作为写入组件(如事件存储器170中的W1[0:m-1])。每一次当一引擎命令需要被追踪及发送命令至引擎时,中央处理单元会将对应至该命令的默认值写入事件存储器的写入组件,并让此引擎复制此默认值到相同事件存储器的读取组件。藉由查看读取组件的内容,中央处理单元可以得知命令执行是否完成。值得注意的是,若引擎没有COPY命令,则驱动器需要负责让每一个引擎做COPY的动作。例如,驱动器能让MIT引擎执行MIT命令来进行COPY动作;或让2D引擎做一bitBlt命令来进行COPY动作;或让3D引擎利用写入存储器作为一特征(texture)并使用读取存储器作为一转译(render)目标,执行转译(render)命令以进行COPY动作。
图2的流程图说明图1计算机系统的命令状态如何进行记录和检查操作。参阅图1和图2,中央处理单元180首先指向一事件存储器,其对应至图像处理单元(GPU)内一个即刻需要追踪命令(/事件)的引擎(步骤210)。于步骤220,中央处理单元180藉由检视目前写入地址中储存的事件值,以确认该事件值所对应的命令是否已经执行。例如,首先检视W1[0:m-1]的储存值是否相关于待追踪的命令。下面是关于图2的一段伪码(pseudo code),将于下面篇幅作进一步说明:
waiting for event(curEventValu+1-m)
WriteElement[curWriteAddress]=curEventValu++
curWriteAddress++
curWriteAddress%=(m)
根据本发明的一实施例,假设代表特定引擎命令的事件值被递增地指派,且curEventValu代表目前事件值,而m是事件存储器中写入组件的数量,则event(curEventValu+1-m)即对应至先前发送m个命令周期的命令。步骤220可以被表示成:waiting for event(curEventValu+1-m)已完成。
由于事件存储器中写入组件的数量(m)是有限的,使用步骤220可以避免命令尚未执行的事件值被覆写。反过来说,若写入组件的数量m够大,致使事件值被覆写的机率很小以致于可被忽略,则可以跳过步骤220。类似的情形,如果写入组件的数量是可被动态地指派以避免非预期的覆写危险,则此步骤220也可省略。
于图2的下一个步骤230中,将新命令所对应的目前事件值(curEventValu)写至事件存储器的目前写入地址(curWriteAddress);接着,于步骤234将事件值curEventValu加一。这些步骤可被表示成:*WriteElement[curWriteAddress]=curEventValu++。
于步骤238,中央处理单元180发出新命令至一引擎,及命令此引擎改变所属的事件存储器内容。例如,中央处理单元可以在完成步骤240的命令执行时,命令此引擎将地址curWriteAddress的写入组件的值复制到所属的读取组件。在执行此命令之后,此特定引擎可自行进行复制动作,不需要中央处理单元180的任何介入。另一种作法是,中央处理单元也可命令将指定的事件存储器的内容改变成特定的默认值。
于步骤250,将特定引擎的目前写入地址curWriteAddress的值加一。步骤250可以表示为:curWriteAddress++。
于步骤260中,以写入组件的数量(m)来除加值后的目前写入地址,得到其余数。此步骤的目的在于当curWriteAddress的值超过m时,其将重设至初始值,因为只有m个写入地址。步骤260可被表示成:curWriteAddress%=(m)。
中央处理单元可以快速地检查指定的存储器空间的读取组件,藉此,每一次当中央处理单元检视一读取组件的值时,即可以准确知道哪一个引擎已完成命令的执行。
如上所示,为了同步图像处理单元内两个或更多的引擎,代表发送至一引擎的命令的事件值被写入事件存储器的组件(例如写入组件)内。包含事件值的事件存储器内容可加以修改,用以确认引擎内的命令已执行完毕。此经修改的事件存储器的内容则可被中央处理单元读取,以获知命令执行的状态,而中央处理单元则根据这些执行状态来协调发送命令至各引擎。
本发明提供各种不同的实施例,用以实行本发明不同的特征。构成要件和方法的特定例子的披露用以阐明本发明。这些仅作为例示,并非用以限定本发明的权利要求的范围。
Claims (10)
1.一种图像处理单元内多个引擎的同步方法,包含:
写入一事件值至一事件存储器的组件内,其中该事件值代表发送至一预设引擎的命令;
修改包含该事件值的事件存储器的内容,用以确认该命令已被该引擎执行完成;以及
由一中央处理单元读取该事件存储器的经修改内容,以获得该命令的执行状态,
其中所述的中央处理单元根据每一引擎的该执行状态,以协调发送命令至所有引擎。
2.如权利要求1所述图像处理单元内多个引擎的同步方法,其中所述的写入步骤还包含如下之一:
动态配置该事件存储器的组件;以及
于写入该事件值之前,先检查该事件存储器,以避免将另一尚未完成执行的命令所代表的另一事件值覆写。
3.如权利要求1所述图像处理单元内多个引擎的同步方法,其中所述的修改步骤包含:
将一已执行命令的事件值复制到一特定组件,用以使该中央处理单元读取。
4.如权利要求1所述图像处理单元内多个引擎的同步方法,其中所述的修改步骤更包含:
以一新预设事件值来取代该事件值。
5.如权利要求4所述图像处理单元内多个引擎的同步方法,其中所述的修改步骤还包含:
将该新事件值写入至一特定组件,用以使中央处理单元读取。
6.如权利要求1所述图像处理单元内多个引擎的同步方法,还包含如下之一:
将该命令发送命令至该预设引擎;
处理该事件存储器以避免溢位。
7.一种图像处理单元内多个引擎的同步方法,包含:
写入一事件值至一事件存储器的至少一写入组件内,其中该事件值代表发送至一预设引擎的命令;
将该事件存储器的事件值复制到一读取组件,用以确认该命令已被该引擎执行完成;以及
由一中央处理单元读取该读取组件的事件值,以获得该命令的执行状态,
其中所述的中央处理单元根据每一引擎的该执行状态,以协调发送命令至所有引擎。
8.如权利要求7所述图像处理单元内多个引擎的同步方法,其中所述的写入步骤还包含如下之一:
动态配置该事件存储器的写入组件;
于写入该事件值之前,先检查该事件存储器,以避免将另一尚未完成执行的命令所代表的另一事件值覆写;
于该命令执行完成时,以一新预设事件值来取代该事件值;
于写入目前命令的该事件值后,针对下一命令而递增该事件值;
将该命令发送命令至该预设引擎;以及
处理该事件存储器以避免溢位。
9.一种计算机系统,包含:
至少一中央处理单元;
至少一图像处理单元,其具有两个或更多的引擎;以及
至少一事件存储器,对应于每一该引擎,
其中所述的中央处理单元写入一事件值至一事件存储器内,其中该事件值代表发送至一预设引擎的命令,且
该预设引擎修改包含该事件值的事件存储器的内容,用以确认该命令已被该引擎执行完成,以及
其中所述的中央处理单元读取该事件存储器的经修改内容,以获得该命令的执行状态,且根据每一引擎的该执行状态,以协调发送命令至所有引擎。
10.如权利要求9所述的计算机系统,其中所述的事件存储器还包括如下之一:
一个或更多的写入组件用以记录该事件值;
一个或更多的读取组件,用以在命令执行完成时以接收一事件值。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US72766805P | 2005-10-18 | 2005-10-18 | |
US60/727,668 | 2005-10-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1991904A true CN1991904A (zh) | 2007-07-04 |
CN100495435C CN100495435C (zh) | 2009-06-03 |
Family
ID=38214146
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006101359411A Active CN100489820C (zh) | 2005-10-18 | 2006-10-17 | 在计算机系统中延迟命令发出的方法和系统 |
CN2006101355904A Active CN1991903B (zh) | 2005-10-18 | 2006-10-18 | 图形处理事件同步的方法及系统 |
CNB2006101355923A Active CN100568277C (zh) | 2005-10-18 | 2006-10-18 | 在多重图形处理单元图形子系统中进行多重缓冲 |
CNB2006101355957A Active CN100495435C (zh) | 2005-10-18 | 2006-10-18 | 图像处理单元的并行引擎的同步方法及系统 |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006101359411A Active CN100489820C (zh) | 2005-10-18 | 2006-10-17 | 在计算机系统中延迟命令发出的方法和系统 |
CN2006101355904A Active CN1991903B (zh) | 2005-10-18 | 2006-10-18 | 图形处理事件同步的方法及系统 |
CNB2006101355923A Active CN100568277C (zh) | 2005-10-18 | 2006-10-18 | 在多重图形处理单元图形子系统中进行多重缓冲 |
Country Status (3)
Country | Link |
---|---|
US (4) | US7903120B2 (zh) |
CN (4) | CN100489820C (zh) |
TW (4) | TWI322354B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101930719A (zh) * | 2009-06-18 | 2010-12-29 | 辉达公司 | 自动切换显示器场景模式的方法及系统 |
CN107636631A (zh) * | 2015-06-12 | 2018-01-26 | 奥林巴斯株式会社 | 图像处理装置和图像处理方法 |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8056093B1 (en) * | 2006-12-07 | 2011-11-08 | Nvidia Corporation | Asynchronous kernel processing for a graphics processing system |
US8390631B2 (en) * | 2008-06-11 | 2013-03-05 | Microsoft Corporation | Synchronizing queued data access between multiple GPU rendering contexts |
US8368701B2 (en) * | 2008-11-06 | 2013-02-05 | Via Technologies, Inc. | Metaprocessor for GPU control and synchronization in a multiprocessor environment |
US8531471B2 (en) * | 2008-11-13 | 2013-09-10 | Intel Corporation | Shared virtual memory |
US9075559B2 (en) | 2009-02-27 | 2015-07-07 | Nvidia Corporation | Multiple graphics processing unit system and method |
US9135675B2 (en) | 2009-06-15 | 2015-09-15 | Nvidia Corporation | Multiple graphics processing unit display synchronization system and method |
JP2011048579A (ja) * | 2009-08-26 | 2011-03-10 | Univ Of Tokyo | 画像処理装置及び画像処理方法 |
US8803897B2 (en) * | 2009-09-03 | 2014-08-12 | Advanced Micro Devices, Inc. | Internal, processing-unit memory for general-purpose use |
US8305380B2 (en) * | 2009-09-09 | 2012-11-06 | Advanced Micro Devices, Inc. | Managing resources to facilitate altering the number of active processors |
US20110063304A1 (en) * | 2009-09-16 | 2011-03-17 | Nvidia Corporation | Co-processing synchronizing techniques on heterogeneous graphics processing units |
US20110084982A1 (en) * | 2009-10-12 | 2011-04-14 | Sony Corporation | Apparatus and Method for Displaying Image Data With Memory Reduction |
US8514235B2 (en) * | 2010-04-21 | 2013-08-20 | Via Technologies, Inc. | System and method for managing the computation of graphics shading operations |
CN102497591B (zh) * | 2011-11-11 | 2015-02-18 | 青岛海信移动通信技术股份有限公司 | 一种终端以及该终端与电视进行无线传屏的方法 |
US8692832B2 (en) * | 2012-01-23 | 2014-04-08 | Microsoft Corporation | Para-virtualized asymmetric GPU processors |
US9256915B2 (en) * | 2012-01-27 | 2016-02-09 | Qualcomm Incorporated | Graphics processing unit buffer management |
US9384711B2 (en) | 2012-02-15 | 2016-07-05 | Microsoft Technology Licensing, Llc | Speculative render ahead and caching in multiple passes |
KR101308102B1 (ko) * | 2012-02-24 | 2013-09-12 | (주)유브릿지 | 휴대 단말 및 그 제어 방법 |
US8847970B2 (en) | 2012-04-18 | 2014-09-30 | 2236008 Ontario Inc. | Updating graphical content based on dirty display buffers |
US9177533B2 (en) | 2012-05-31 | 2015-11-03 | Microsoft Technology Licensing, Llc | Virtual surface compaction |
US9235925B2 (en) | 2012-05-31 | 2016-01-12 | Microsoft Technology Licensing, Llc | Virtual surface rendering |
US9286122B2 (en) | 2012-05-31 | 2016-03-15 | Microsoft Technology Licensing, Llc | Display techniques using virtual surface allocation |
US9230517B2 (en) | 2012-05-31 | 2016-01-05 | Microsoft Technology Licensing, Llc | Virtual surface gutters |
CN102750665B (zh) * | 2012-06-01 | 2014-09-24 | 上海鼎为电子科技(集团)有限公司 | 一种图形处理方法、图形处理装置及移动终端 |
US9307007B2 (en) | 2013-06-14 | 2016-04-05 | Microsoft Technology Licensing, Llc | Content pre-render and pre-fetch techniques |
US9507961B2 (en) * | 2013-07-01 | 2016-11-29 | Qualcomm Incorporated | System and method for providing secure access control to a graphics processing unit |
TWI507981B (zh) * | 2013-07-05 | 2015-11-11 | Phison Electronics Corp | 指令執行方法、連接器與記憶體儲存裝置 |
US9818379B2 (en) | 2013-08-08 | 2017-11-14 | Nvidia Corporation | Pixel data transmission over multiple pixel interfaces |
US9916634B2 (en) * | 2015-06-12 | 2018-03-13 | Intel Corporation | Facilitating efficient graphics command generation and execution for improved graphics performance at computing devices |
CN106600521A (zh) * | 2016-11-30 | 2017-04-26 | 宇龙计算机通信科技(深圳)有限公司 | 一种图像处理方法及终端设备 |
CN107223264B (zh) * | 2016-12-26 | 2022-07-08 | 达闼机器人股份有限公司 | 一种渲染方法及装置 |
KR101969219B1 (ko) * | 2017-04-27 | 2019-04-15 | 재단법인대구경북과학기술원 | 빈발 패턴 마이닝 방법 및 장치 |
KR102098253B1 (ko) * | 2018-02-13 | 2020-04-07 | 재단법인대구경북과학기술원 | 분산 시스템 기반 큰 규모 빈발 패턴 마이닝 시스템 및 방법 |
CN109300426A (zh) * | 2018-03-30 | 2019-02-01 | 温州长江汽车电子有限公司 | 一种基于mcu的双tft屏显示系统及其显示方法 |
CN109743453B (zh) * | 2018-12-29 | 2021-01-05 | 出门问问信息科技有限公司 | 一种分屏显示方法及装置 |
CN112231018B (zh) * | 2020-12-15 | 2021-03-16 | 北京壁仞科技开发有限公司 | 用于卸载数据的方法、计算设备和计算机可读存储介质 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2542392B2 (ja) * | 1987-07-31 | 1996-10-09 | シャープ株式会社 | 文字描画装置 |
US4949280A (en) * | 1988-05-10 | 1990-08-14 | Battelle Memorial Institute | Parallel processor-based raster graphics system architecture |
US5519825A (en) * | 1993-11-16 | 1996-05-21 | Sun Microsystems, Inc. | Method and apparatus for NTSC display of full range animation |
US5878216A (en) * | 1995-05-01 | 1999-03-02 | Intergraph Corporation | System and method for controlling a slave processor |
US5657478A (en) * | 1995-08-22 | 1997-08-12 | Rendition, Inc. | Method and apparatus for batchable frame switch and synchronization operations |
US5668958A (en) * | 1995-09-12 | 1997-09-16 | International Business Machines Corporation | Heterogeneous filing system with common API and reconciled file management rules |
US5801717A (en) * | 1996-04-25 | 1998-09-01 | Microsoft Corporation | Method and system in display device interface for managing surface memory |
US5933155A (en) * | 1996-11-06 | 1999-08-03 | Silicon Graphics, Inc. | System and method for buffering multiple frames while controlling latency |
US6157395A (en) * | 1997-05-19 | 2000-12-05 | Hewlett-Packard Company | Synchronization of frame buffer swapping in multi-pipeline computer graphics display systems |
US6078339A (en) * | 1998-02-10 | 2000-06-20 | Intel Corporation | Mutual exclusion of drawing engine execution on a graphics device |
US6079013A (en) * | 1998-04-30 | 2000-06-20 | International Business Machines Corporation | Multiprocessor serialization with early release of processors |
US6515662B1 (en) * | 1998-07-16 | 2003-02-04 | Canon Kabushiki Kaisha | Computer apparatus for providing stereoscopic views from monographic images and method |
US6243107B1 (en) * | 1998-08-10 | 2001-06-05 | 3D Labs Inc., Ltd. | Optimization of a graphics processor system when rendering images |
US6724390B1 (en) * | 1999-12-29 | 2004-04-20 | Intel Corporation | Allocating memory |
US6747654B1 (en) * | 2000-04-20 | 2004-06-08 | Ati International Srl | Multiple device frame synchronization method and apparatus |
US6828975B2 (en) * | 2001-03-01 | 2004-12-07 | Microsoft Corporation | Method and system for managing graphics objects in a graphics display system |
US20020126122A1 (en) * | 2001-03-12 | 2002-09-12 | Yet Kwo-Woei | Apparatus and method for minimizing the idle time of a computer graphic system using hardware controlled flipping |
US6683614B2 (en) * | 2001-12-21 | 2004-01-27 | Hewlett-Packard Development Company, L.P. | System and method for automatically configuring graphics pipelines by tracking a region of interest in a computer graphical display system |
US6919896B2 (en) * | 2002-03-11 | 2005-07-19 | Sony Computer Entertainment Inc. | System and method of optimizing graphics processing |
US7015915B1 (en) * | 2003-08-12 | 2006-03-21 | Nvidia Corporation | Programming multiple chips from a command buffer |
US7075541B2 (en) * | 2003-08-18 | 2006-07-11 | Nvidia Corporation | Adaptive load balancing in a multi-processor graphics processing system |
US7388581B1 (en) * | 2003-08-28 | 2008-06-17 | Nvidia Corporation | Asynchronous conditional graphics rendering |
US7610061B2 (en) * | 2003-09-20 | 2009-10-27 | Samsung Electronics Co., Ltd. | Communication device and method having a common platform |
US7095416B1 (en) * | 2003-09-22 | 2006-08-22 | Microsoft Corporation | Facilitating performance analysis for processing |
US7545380B1 (en) * | 2004-12-16 | 2009-06-09 | Nvidia Corporation | Sequencing of displayed images for alternate frame rendering in a multi-processor graphics system |
US7522167B1 (en) * | 2004-12-16 | 2009-04-21 | Nvidia Corporation | Coherence of displayed images for split-frame rendering in multi-processor graphics system |
US7383412B1 (en) * | 2005-02-28 | 2008-06-03 | Nvidia Corporation | On-demand memory synchronization for peripheral systems with multiple parallel processors |
US7290074B2 (en) * | 2005-04-06 | 2007-10-30 | Kabushiki Kaisha Toshiba | Back-off timing mechanism |
-
2006
- 2006-10-16 TW TW095138039A patent/TWI322354B/zh active
- 2006-10-17 US US11/581,973 patent/US7903120B2/en active Active
- 2006-10-17 CN CNB2006101359411A patent/CN100489820C/zh active Active
- 2006-10-17 US US11/582,020 patent/US7812849B2/en active Active
- 2006-10-17 US US11/582,019 patent/US7889202B2/en active Active
- 2006-10-17 US US11/581,975 patent/US20070088856A1/en not_active Abandoned
- 2006-10-18 CN CN2006101355904A patent/CN1991903B/zh active Active
- 2006-10-18 TW TW095138470A patent/TWI329845B/zh active
- 2006-10-18 CN CNB2006101355923A patent/CN100568277C/zh active Active
- 2006-10-18 TW TW095138378A patent/TWI354240B/zh active
- 2006-10-18 CN CNB2006101355957A patent/CN100495435C/zh active Active
- 2006-10-18 TW TW095138471A patent/TWI328779B/zh active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101930719A (zh) * | 2009-06-18 | 2010-12-29 | 辉达公司 | 自动切换显示器场景模式的方法及系统 |
US9087469B2 (en) | 2009-06-18 | 2015-07-21 | Nvidia Corporation | Methods and systems for automatically switching monitor scene modes |
CN107636631A (zh) * | 2015-06-12 | 2018-01-26 | 奥林巴斯株式会社 | 图像处理装置和图像处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101025717A (zh) | 2007-08-29 |
CN100568277C (zh) | 2009-12-09 |
US20070091098A1 (en) | 2007-04-26 |
CN100489820C (zh) | 2009-05-20 |
US7889202B2 (en) | 2011-02-15 |
TWI328779B (en) | 2010-08-11 |
TW200821979A (en) | 2008-05-16 |
CN1991906A (zh) | 2007-07-04 |
CN1991903A (zh) | 2007-07-04 |
CN1991903B (zh) | 2010-05-12 |
US20070088856A1 (en) | 2007-04-19 |
TWI329845B (en) | 2010-09-01 |
US20070091097A1 (en) | 2007-04-26 |
TWI354240B (en) | 2011-12-11 |
TW200737035A (en) | 2007-10-01 |
US7903120B2 (en) | 2011-03-08 |
TWI322354B (en) | 2010-03-21 |
CN100495435C (zh) | 2009-06-03 |
TW200708971A (en) | 2007-03-01 |
US20070091099A1 (en) | 2007-04-26 |
US7812849B2 (en) | 2010-10-12 |
TW200821978A (en) | 2008-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100495435C (zh) | 图像处理单元的并行引擎的同步方法及系统 | |
US9990692B2 (en) | Systems and methods of partial frame buffer updating | |
US10089775B2 (en) | Automated graphics and compute tile interleave | |
US10043489B2 (en) | Virtual surface blending and BLT operations | |
US9235925B2 (en) | Virtual surface rendering | |
JP6230076B2 (ja) | 仮想サーフェス割り当て | |
JP2011129109A (ja) | フレームバッファにおけるウィンドウ表示の形成 | |
US9959668B2 (en) | Virtual surface compaction | |
CN101046742A (zh) | 一种实时获取多媒体图像的方法以及设备 | |
US20190392546A1 (en) | Data processing systems | |
US20220044469A1 (en) | Graphics processing | |
US20120013629A1 (en) | Reading Compressed Anti-Aliased Images | |
US10346943B2 (en) | Prefetching for a graphics shader | |
US7928988B1 (en) | Method and system for texture block swapping memory management | |
CN1123928A (zh) | 生成图像的方法和装置 | |
TW202236205A (zh) | 計算工作負載的光柵化 | |
DE112021000673T5 (de) | Anweisungsebenenkontextwechsel in einem simd-prozessor | |
CN106201401A (zh) | 用于虚拟桌面呈现的3d图像加速显示方法 | |
CN101038663A (zh) | 简化绘图系统的脚本文件的方法及其系统 | |
TW202134996A (zh) | 用於減少渲染資訊的傳輸的方法和裝置 | |
Dang | 3D graphics renderer for web applications using web assembly and WGPU | |
CN113971070A (zh) | 适用于多虚拟机同屏显示的方法及系统 | |
CN100346292C (zh) | 多地址空间异步计算等待响应指令的控制方法 | |
KR20230101803A (ko) | 구역 불연속성에 기반한 모션 추정 | |
WO2014105724A1 (en) | Generating canonical imaging functions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |