CN1991903B - 图形处理事件同步的方法及系统 - Google Patents

图形处理事件同步的方法及系统 Download PDF

Info

Publication number
CN1991903B
CN1991903B CN2006101355904A CN200610135590A CN1991903B CN 1991903 B CN1991903 B CN 1991903B CN 2006101355904 A CN2006101355904 A CN 2006101355904A CN 200610135590 A CN200610135590 A CN 200610135590A CN 1991903 B CN1991903 B CN 1991903B
Authority
CN
China
Prior art keywords
image
processing unit
main
value
graphics processing
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.)
Active
Application number
CN2006101355904A
Other languages
English (en)
Other versions
CN1991903A (zh
Inventor
张国峰
赵璇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Via Technologies Inc
Original Assignee
Via Technologies 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 Via Technologies Inc filed Critical Via Technologies Inc
Publication of CN1991903A publication Critical patent/CN1991903A/zh
Application granted granted Critical
Publication of CN1991903B publication Critical patent/CN1991903B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program 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)
  • Computer Graphics (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)
  • Multi Processors (AREA)
  • Information Transfer Systems (AREA)
  • Image Input (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

本发明揭露了一种用于使多重图形处理单元(GPU)计算机系统中的图形处理事件同步的方法及系统。主GPU将第一图像转译到与显示接口关联的主缓冲器的第一部分中,然后将对应于第一图像的第一预定值写入第一内存单元。从GPU将第二图像转译到从缓冲器中,然后将第二图像传送到主缓冲器的第二部分,并将对应于第二图像的第二预定值写入第一内存单元。上述第一及第二预定值表示所转译图像的队列序列。主GPU翻转第一图像并仅在检查第一内存单元中的第一预定值之后显示,并且翻转第二图像并仅在检查第一内存单元中的第二预定值之后显示。

Description

图形处理事件同步的方法及系统
技术领域
本申请案请求2005年10月18日申请的美国专利申请案第60/727,668号「用于多重图形处理单元(GPU)解决方案的智能型中央处理单元(CPU)同步技术」的权利。本申请案也与美国专利申请案第60/727,635号有关,后者与本申请案为共同拥有并一起申请,其内容以引用的方式全部并入本文中。
本发明涉及一种具有多重图形处理单元(GPU)的计算机系统中的图形处理同步(synchronization),更特定言之,涉及图像转译(image rendering)与翻转(flipping)的时序(timing)。
背景技术
现代计算机系统通常采用多重图形处理单元(GPU)来同时转译图像,并将此等图像存储在多个缓冲器中。某一特定的GPU(称为主GPU)连接到显示驱动器。所有图像都通过图形驱动器的翻转操作,并从与主GPU关联的一或多个缓冲器来显示。翻转是将之前的前缓冲器变成后缓冲器,并将之前的后缓冲器变成前缓冲器。所谓的「前缓冲器」是目前将图像提供到显示驱动器的缓冲器,而后缓冲器是准备从转译或位区块传送接收图像的缓冲器。
位区块传送(BLT)将来自两个缓冲器的两个图像(例如,位图)图案合而为一。由于只有一主GPU进行翻转,因此所有其它GPU都是从属的。从GPU所转译的图像最终以位区块传送的方式从其自身的缓冲器传送到与主GPU关联的主缓冲器。图形驱动器还管理BLT时序以及已转译及随后传送的图像来源与目标缓冲器中的存储位置。图形驱动器可以在任何数量的缓冲器之间翻转,但传统的双缓冲器仍然是驱动器最容易处理的,因此最理想。但在任何情况下,驱动器都必须使翻转、转译和BLT同步,为此,持续检查每个组件(即GPU、缓冲器等)的状态的传统方式较无效率。
因此,计算机系统最好具有统一、有效的方式来使这些事件同步。
发明内容
鉴于上述问题,本发明提供一种用于监视图形处理事件(例如,转译、翻转和BLT)的状态、从而使此等事件同步的方法及系统。
为了达到上述目的,本发明揭露了一种方法及系统,用于使具有多重图形处理单元(GPU)的计算机系统中的图形处理事件同步。例如,主GPU(masterGPU)将第一图像转译到与显示驱动器或显示接口关联的主缓冲器(masterbuffer)或主要缓冲器(primary buffer)的第一部分中,然后将对应于第一图像的第一预定值写入第一内存单元。从GPU(slave GPU)将第二图像转译到从缓冲器(slave buffer)或次要缓冲器(secondary bufffer)中,然后将第二图像传送到主缓冲器的第二部分,并且将对应于第二图像的第二预定值写入第一内存单元.第一及第二预定值表示图像的转译结束事件.主GPU翻转第一图像并仅在检查第一内存单元中的第一预定值之后显示,并且翻转第二图像并仅在检查第一内存单元中的第二预定值之后显示.
根据以下结合附图所述的特定具体实施例,将能充分了解本发明的构造及操作方法,以及其额外的目的和优点。
附图说明
图1是根据本发明的一具体实施例的具有两个图形处理单元(GPU)及两个事件内存的计算机系统的一部分的方块图。
图2是根据本发明的一具体实施例的计算机系统的时序图。
附图符号说明
100    计算机系统
110    主GPU
120    主缓冲器阵列
130    显示接口
140    从GPU
150    从缓冲器阵列
160    W事件内存
170    S事件内存
180    CPU
190    总线
195    主存储器
230    时隙
235    时隙
240    时隙
244    时隙
248    时隙
250    时隙
254    时隙
258    时隙
260    时隙
265    时隙
270    时隙
275    时隙
280    时隙
285    时隙
具体实施方式
美国专利申请案第60/727,635号详细说明具有多个图形处理单元(GPU)及其相关缓冲器(buffer)的计算机系统的操作,此申请案与本申请案一起申请,并将全文并入本文中。
图1是根据本发明的一具体实施例的计算机系统的一部分的方块图。计算机系统100具有两个图形处理单元(GPU)110及140。主GPU 110将图像转译到与显示接口130连接的主缓冲器或主要缓冲器120。将主缓冲器120中存储或队列(queue)的图像依次翻转到显示接口130。从GPU 140独立将图像转译到从缓冲器或次要缓冲器150。应了解的是,缓冲器可以是缓冲器阵列或内存单元配置的任何其它形式。主与从GPU交替转译图像,即如果主GPU转译帧[i],则从GPU140转译帧[i+1],然后主GPU转译帧[i+2],依此类推。为了将从缓冲器150中的图像传送到主缓冲器120,主GPU 110或从GPU 140在特定的时间通过总线190开始位区块传送(BLT),从而使所有转译的图像以相同于转译序列的序列在主缓冲器120中队列。
根据本发明的一具体实施例,藉由内存对映(memory-mapped)输入/输出(I/O)或多媒体输入/输出(MultiMedia I/O,MMIO)执行翻转操作。亦即,在CPU写入GPU中已进行内存对映的相关缓存器之后,显示装置立即显示指定缓冲器中的图像。
根据本发明的一具体实施例,为了方便计算机系统各组件的转译、翻转及BLT事件的同步,配置两个事件内存(event memory),即W事件内存160和S事件内存170。
在本发明的一具体实施例中,GPU更新W事件内存160。无论何时完成转译工作,主GPU 110都会将W事件内存160的值递增(increments)。同样,无论何时从GPU 140完成BLT,其也会将递增值写入W事件内存160中。藉由在每个命令周期(command cycle)期间检查W事件内存160的值,CPU 180可以决定特定的图像是否已完全转译并准备翻转。请注意,W内存具有用于不同GPU的不同部分。以下是伪代码(pseudo codes)的示范性子程序(subroutine),名为「queued-flip(队列翻转)」,用于使CPU 180检查并翻转主缓冲器120中的队列图像。
While(queued-flip)
{
get the first flip
if(tracked W event value not back)
  break;
do FLIP through MMIO
write an incremental S event value to the S event memory
Remove current flip
}
请注意,在以上队列翻转子程序中的翻转之后,CPU 180将递增的S事件值写入S事件内存170,这意味着队列图像已翻转,并且主缓冲器120可接受新图像。因此,藉由检查S事件内存的值,CPU可决定其是否可让GPU将新图像转译或BLT到主缓冲器120中以进行队列。
但是,如果主缓冲器120很大,以致新转译的图像保证不会覆写未翻转的队列图像,则不需要检查甚至配置S事件内存。
图2为详细说明事件内存如何辅助多GPU系统中的转译、翻转及BLT事件的同步的时序图。参考图1及图2,图2中包含CPU 180、主GPU 110、从GPU 140.CPU180内包含时隙230等待S(i+2-N)命令至从GPU140、时隙235等待S(i+4-N)命令至从GPU140及时隙240等待S(i+1-N)命令至主GPU110、时隙244 queued filp(i),「写入S(i)」、时隙248queued filp(i+1),「写入S(i+1)」、时隙250等待事件S(i+3-N)命令至主GPU 110、时隙254queuedfilp(i+2),「写入S(i+2)」、时隙258queued filp(i+3),「写入S(i+3)」。主GPU 110包含时隙260转译帧[i]写入W(i)及时隙265转译帧[i+2]。从GPU 140包含时隙270转译帧[i+1]、时隙275将帧BLT至主缓冲器,写入W(i+1)、时隙280转译帧[i+3]、时隙285将帧BLT至主缓冲器,写入W(i+3)等举例说明。假定主GPU 110与从GPU 140都具有N个组件。每次将转译命令发送到主GPU 110之前,CPU 180检查S事件内存170,并且新转译命令仅在时隙240中当S事件内存170的值达到i+1-N时发送,这意味着在目前的图像之前,已经有N个缓冲的图像翻转,并且缓冲器准备好接受新转译的图像,而不会覆写先前转译及队列的图像。此处,「i」是表示目前命令周期的索引。在每个命令周期中转译一图像帧。
从CPU 180收到转译命令之后,主GPU 110开始在时隙260中转译帧[i]。当完成转译时,主GPU 110也在时隙260中将值i写入W事件内存中。
从GPU 140以不同的方式操作。其转译相当独立,并且其可以在时隙270中转译后续的帧[i+1],当主GPU 110转译帧[i]时,时隙270可以与时隙260重迭。但在时隙275中以位区块传送(BLT)的方式将从GPU转译的图像(即帧[i+1])传送到主缓冲器120需要确保S事件内存的值经过i+2-N,即在帧[i+1]之前,已经有N个以上的帧翻转,并且主缓冲器准备好接受新转译的图像。如图2所示,时隙275在时隙230之后。在时隙230中,CPU 180在S事件内存的值经过i+2-N之后,将BLT命令发送到从GPU 140。在完成BLT命令之后,从GPU 140还会在时隙275中将递增值i+1写入W事件内存中。
在时隙244中执行子程序queued-flip(i+1)时,CPU 180首先检查W事件内存160的值。如果值i+1已经在W事件内存160中,即帧[i+1]已经在主缓冲器120中队列,则其翻转帧[i+1],并将值i+1写入S事件内存。这些步骤亦在以上queued-flip子程序中陈述。
本质上,CPU 180在对应于队列图像的值位于W事件内存160中之后翻转主缓冲器120中的队列图像,并在翻转结束时将递增的值写入S事件内存。同时,GPU转译或BLT欲在主缓冲器120中队列的图像,并在主GPU 110完成转译或从GPU 140完成传送之后,将递增的值写入W事件内存160。以此方式,简化了计算机图形子系统中的翻转、转译及位区块传送的同步。
本发明提供许多不同的具体实施例或范例,用于实施本发明的不同特征。说明组件和方法的特定范例是为了帮助阐明本揭示内容。当然,这些只是范例,无意限制申请专利范围所述的本揭示内容的范围。

Claims (13)

1.一种用于在具有一主图形处理单元及至少一从图形处理单元的计算机系统中使图形处理事件同步的方法,该方法包括:
藉由该主图形处理单元转译一第一图像以存储在一主缓冲器的一第一部分中;
藉由该从图形处理单元转译一第二图像以存储在一从缓冲器中;
将对应于该第一图像的一第一预定值写入一第一内存单元;
将该第二图像传送到该主缓冲器的一第二部分;
在完成该传送之后将对应于该第二图像的一第二预定值写入该第一内存单元;以及
发送一第一及一第二翻转命令,用于翻转该主缓冲器中的该第一及该第二图像,以便在检查该第一内存单元中对应于该第一及该第二图像的值之后显示,
其中,该第一及该第二预定值表示欲队列进行显示的第一及第二图像的时序。
2.如权利要求1所述的方法,其中,该发送进一步包括如下之一:
如果对应于该图像的值未在该第一内存单元中,则取消发送该翻转命令;
发送一条内存对映输入/输出翻转命令。
3.如权利要求1所述的方法,其进一步包括如下步骤的群组之一:
以一预定的序列发送一或多条转译命令至该主图形处理单元及该从图形处理单元;
在图像翻转完成之后,将对应于翻转图像的该主缓冲器的一第三部分的预定值写入一第二内存单元,以及,在将一图像转译或传送至该主缓冲器的该第三部分之前,检查该第二内存单元中的值。
4.如权利要求1所述的方法,其中,该传送进一步包括发送一位区块传送命令,以传送该第二图像。
5.一种用于在具有至少一第一及一第二图形处理单元的计算机系统中使图形处理事件同步的方法,该方法包括:
藉由该第一图形处理单元转译一第一图像以存储在一主要缓冲器中;
藉由该第二图形处理单元转译一第二图像以存储在一次要缓冲器中;
将该第二图像传送到该主要缓冲器以在该第一图像后队列;
在完成该传送之后将对应于该第二图像的一预定值写入一第一事件内存单元;以及
显示该第一图像之后,一旦确认该预定值位于该第一事件内存单元中,即发送翻转命令,以翻转该主要缓冲器中队列的该第二图像。
6.如权利要求5所述的方法,其进一步包括如下步骤的群组之一:
将对应于该第一图像的一预定值写入该第一事件内存单元;
在图像翻转完成之后,将对应于该翻转图像的该主要缓冲器中的一第一位置的一预定值写入一第二事件内存单元,以及,在将一图像转译或传送至该主要缓冲器中的第一位置之前,检查该第二事件内存单元中的值。
7.如权利要求5所述的方法,其中,该发送翻转命令进一步包括发送一条内存对映输入/输出翻转命令。
8.一种具有图形处理事件同步的计算机系统,该系统包括:
两个或更多个图形处理单元,其中每个图形处理单元用于转译或传送一或多个图像;
两个或更多个图像缓冲器,用于供每个图形处理单元存储所转译的图像,其中,一主缓冲器耦合至显示接口;
一或多个指定的内存,用于记录表示该两个或更多个图形处理单元的图形处理事件的值;以及
至少一中央处理单元,用于检查指定内存中的值并对应于该值发送命令至该两个或更多个图形处理单元;
其中,该两个或更多个图形处理单元中的每个图形处理单元于转译或传送该一或多个图像之后递增指定内存中的值。
9.如权利要求8所述的系统,其中,该一或多个指定的内存进一步包括一第一内存,用于记录表示翻转事件的该值。
10.如权利要求9所述的系统,其中,该一或多个指定的内存进一步包括一第二内存,用于记录表示该主缓冲器中的图像缓冲事件的值。
11.如权利要求8所述的系统,其进一步包括一主存储器。
12.如权利要求8所述的系统,其进一步包括一总线,用于将图像从一图像缓冲器传送到另一图像缓冲器。
13.如权利要求12所述的系统,其中,该总线将图像从其它缓冲器传送到该主缓冲器。
CN2006101355904A 2005-10-18 2006-10-18 图形处理事件同步的方法及系统 Active CN1991903B (zh)

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
CN1991903A CN1991903A (zh) 2007-07-04
CN1991903B true CN1991903B (zh) 2010-05-12

Family

ID=38214146

Family Applications (4)

Application Number Title Priority Date Filing Date
CNB2006101359411A Active CN100489820C (zh) 2005-10-18 2006-10-17 在计算机系统中延迟命令发出的方法和系统
CNB2006101355923A Active CN100568277C (zh) 2005-10-18 2006-10-18 在多重图形处理单元图形子系统中进行多重缓冲
CN2006101355904A Active CN1991903B (zh) 2005-10-18 2006-10-18 图形处理事件同步的方法及系统
CNB2006101355957A Active CN100495435C (zh) 2005-10-18 2006-10-18 图像处理单元的并行引擎的同步方法及系统

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CNB2006101359411A Active CN100489820C (zh) 2005-10-18 2006-10-17 在计算机系统中延迟命令发出的方法和系统
CNB2006101355923A Active CN100568277C (zh) 2005-10-18 2006-10-18 在多重图形处理单元图形子系统中进行多重缓冲

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNB2006101355957A Active CN100495435C (zh) 2005-10-18 2006-10-18 图像处理单元的并行引擎的同步方法及系统

Country Status (3)

Country Link
US (4) US7812849B2 (zh)
CN (4) CN100489820C (zh)
TW (4) TWI322354B (zh)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
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
CN101930719A (zh) * 2009-06-18 2010-12-29 辉达公司 自动切换显示器场景模式的方法及系统
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
US9230517B2 (en) * 2012-05-31 2016-01-05 Microsoft Technology Licensing, Llc Virtual surface gutters
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
US9177533B2 (en) 2012-05-31 2015-11-03 Microsoft Technology Licensing, Llc Virtual surface compaction
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
JP6580380B2 (ja) * 2015-06-12 2019-09-25 オリンパス株式会社 画像処理装置および画像処理方法
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)

* Cited by examiner, † Cited by third party
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

Also Published As

Publication number Publication date
US7889202B2 (en) 2011-02-15
CN100495435C (zh) 2009-06-03
CN100489820C (zh) 2009-05-20
TW200737035A (en) 2007-10-01
TW200821979A (en) 2008-05-16
TWI322354B (en) 2010-03-21
TWI329845B (en) 2010-09-01
US20070091098A1 (en) 2007-04-26
TW200708971A (en) 2007-03-01
US20070091097A1 (en) 2007-04-26
CN101025717A (zh) 2007-08-29
TWI354240B (en) 2011-12-11
US20070088856A1 (en) 2007-04-19
TW200821978A (en) 2008-05-16
US7903120B2 (en) 2011-03-08
CN1991904A (zh) 2007-07-04
US20070091099A1 (en) 2007-04-26
US7812849B2 (en) 2010-10-12
CN1991903A (zh) 2007-07-04
CN1991906A (zh) 2007-07-04
TWI328779B (en) 2010-08-11
CN100568277C (zh) 2009-12-09

Similar Documents

Publication Publication Date Title
CN1991903B (zh) 图形处理事件同步的方法及系统
US20140240327A1 (en) Fine-grained cpu-gpu synchronization using full/empty bits
DE60204687T2 (de) Speicherkopierbefehl mit Angabe von Quelle und Ziel, der in der Speichersteuerung ausgeführt wird
US6956579B1 (en) Private addressing in a multi-processor graphics processing system
US8180974B2 (en) System, apparatus, and method for modifying the order of memory accesses
DE69601599T2 (de) Videoverarbeitungseinheit mit Steuerung des Adressierungsmodus
KR100225744B1 (ko) 동적연쇄화조작동안레이스상태를막는방법및장치
DE69820143T2 (de) Datenverarbeitungsgerät und -verfahren
EP3077912B1 (de) Steuergerät für ein kraftfahrzeug
EP0893782A3 (en) Graphics system and method of rendering
US20040024943A1 (en) Generic bridge core
JPH06236341A (ja) 入出力記憶装置への直接メモリアクセスを行う装置及び方法
US6874065B1 (en) Cache-flushing engine for distributed shared memory multi-processor computer systems
EP0775960A3 (en) Bus interface logic system
AU636680B2 (en) Main storage memory cards having single bit set and reset functions
EP0889412A3 (en) Split write data processing mechanism for memory controllers
US8209453B2 (en) Arbiter, a system and a method for generating a pseudo-grant signal
US5734821A (en) Method and apparatus for a direct data transmission between a communication network interface and a multimedia data processor
EP0430500B1 (en) System and method for atomic access to an input/output device with direct memory access
JP6161396B2 (ja) 演算装置
DE102004024849B4 (de) Arbitrierungseinheit, zugehöriges Bussystem und Arbitrierungsverfahren
JP3057460B2 (ja) マルチプロセッサ・システム、およびそのマルチプロセッサ・システムを用いたグラフィックス表示装置
US20020019895A1 (en) Bus system and command delivering method thereof
US6995770B2 (en) Command list controller for controlling hardware based on an instruction received from a central processing unit
JP3430961B2 (ja) 画像表示装置

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