CN1991906A - 在多重图形处理单元图形子系统中进行多重缓冲 - Google Patents

在多重图形处理单元图形子系统中进行多重缓冲 Download PDF

Info

Publication number
CN1991906A
CN1991906A CNA2006101355923A CN200610135592A CN1991906A CN 1991906 A CN1991906 A CN 1991906A CN A2006101355923 A CNA2006101355923 A CN A2006101355923A CN 200610135592 A CN200610135592 A CN 200610135592A CN 1991906 A CN1991906 A CN 1991906A
Authority
CN
China
Prior art keywords
buffer
data member
bumper
gpu
impact damper
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
Application number
CNA2006101355923A
Other languages
English (en)
Other versions
CN100568277C (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 CN1991906A publication Critical patent/CN1991906A/zh
Application granted granted Critical
Publication of CN100568277C publication Critical patent/CN100568277C/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)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)
  • Multi Processors (AREA)
  • Image Input (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Information Transfer Systems (AREA)

Abstract

本发明公开了一种用于在多重图形处理单元图形子系统中实施多重缓冲的方法及系统。多重缓冲的目的是减少GPU的空闲时间。在一实施例中,第一GPU在后缓冲器中转译第一图像之后,通过翻转至后缓冲器而显示第一图像。然后,交换前、后缓冲器,接着,以预定的序列移动后缓冲器与内部缓冲器。通过第二GPU将图2像转译到目前的后缓冲器。再通过翻转至目前的后缓冲器而显示图2像。然后,再次交换前、后缓冲器,并再次移动后缓冲器与内部缓冲器。

Description

在多重图形处理单元图形子系统中进行多重缓冲
技术领域
本发明涉及计算机图形处理,更具体地说,涉及关于在计算机系统中操作多重GPU图形子系统的多重缓冲。
背景技术
在许多具有高等图形处理功能的计算机系统中,图形处理子系统包括双缓冲模组。双缓冲模组具有两个存储器区段,即前缓冲器和后缓冲器。前缓冲器储存完全转译(rending)的图像并将此图像提供给显示驱动器。后缓冲器储存正在由图形处理单元转译的图像。一旦完成后缓冲器的转译,并且前缓冲器图像处于完全显示状态时,即可翻转(flip)前、后缓冲器。因此,之前的前缓冲器变成了后缓冲器,并且可以储存受到转译的新图像,而之前的后缓冲器提供其所储存、用于显示的新转译图像。前、后缓冲器继续以此方式翻转,并且翻转的速度与显示器重新整理的速度相同(例如,50Hz、60Hz、75Hz或90Hz)。另外,为防止发生图像分裂,缓冲器翻转必须与转译速度同步。
当计算机系统采用多重图形处理单元(GPU)时,GPU及其缓冲器之间的协调需要使用另一种技术或处理,称为位块传送(BLT),即将来自两个缓冲器的两个点阵图图案合而为一。第一图显示两个GPU系统包含一主GPU与一从GPU,其中,主GPU进行翻转,而从GPU通过PCIe总线连接进行BLT。
双缓冲器(一个用于显示,另一个用于转译)只对单GPU系统有用。当有多重GPU进行转译时,显然所转译的图像会超出两个缓冲器的处理能力,因而GPU将被迫不时中止转译或空闲,于是降低了图形子系统的性能。
因此,多重GPU计算机系统最佳状态是任何GPU都没有产生所谓的空闲时间,以充分发挥多重GPU所能提供的处理能力。所需要的是一种经过改进且用于增强计算机系统的集体处理能力的方法和系统。
发明内容
鉴于上述问题,本发明提供了一种用于执行多重缓冲的方法及系统,即通过多重缓冲器于内部处理所转译的图像,以便减少图形处理单元(GPU)的空闲时间,同时外部应用程序不会发生任何差异。
在本发明的一个实施例中,第一GPU在外部后缓冲器中转译第一图像之后,通过翻转此外部后缓冲器而显示第一图像。然后,后缓冲器变为前缓冲器,而原来的前缓冲器变为后缓冲器,从应用的角度看,外部后缓冲器和前缓冲器是双缓冲实施方案。图2像通过第二GPU转译到内部缓冲器,并且以预定的序列移动外部后缓冲器和内部缓冲器。以此方式,内部缓冲器以转换的方式取代外部后缓冲器和前缓冲器。从应用角度来看,其仍为双缓冲器,而从驱动器的角度看,则有更多的缓冲器。
根据以下结合附图所陈述的特定具体实施例,将能充分了解本发明的构造及操作方法,以及其额外的目的和优点。
附图说明
图1为具有两个采用双缓冲之图形子系统的现有计算机系统的一部分的方块图。
图2为现有双缓冲计算机系统中的GPU操作的时序图。
图3为根据本发明的一具体实施例说明消除部分GPU空闲时间的三缓冲器系统的时序图。
图4为根据本发明的另一具体实施例说明进一步减少GPU空闲时间的四缓冲器系统的时序图。
图5为根据本发明的一具体实施例说明透明多缓冲系统中的缓冲器内容移动的方块图。
图6为根据本发明的一具体实施例说明DDFlip函数中的缓冲器内容移动实施方案的流程图。
图7为根据本发明的一具体实施例说明应用更广泛的透明多缓冲系统的组件的方块图。
图8A及图8B为根据本发明的一具体实施例说明在Windows操作系统环境中完成透明缓冲所需采取的步骤的流程图。
主要元件符号说明
100            计算机系统
110            主GPU
120            从GPU
130            缓冲器A
135            缓冲器B
140            显示接口
160            缓冲器C
165            缓冲器D
170            CPU
180            主存储
165            缓冲器D
200            时隙
210            时隙
220            时隙
230            时隙
240            时隙
250            时隙
260            时隙
270            时隙
300            时隙
305            时隙
310            时隙
315            时隙
320            时隙
330            时隙
335            时隙
340            时隙
345            时隙
350            时隙
360            时隙
365            时隙
370            时隙
375            时隙
400            时隙
405            时隙
410            时隙
420            时隙
425            时隙
430            时隙
435            时隙
440            时隙
450            时隙
455            时隙
460            时隙
470            时隙
475            时隙
480            时隙
500            缓冲器
510            缓冲器
520            缓冲器
530            缓冲器
540            缓冲器
712-718        GPU
732-738        GPU
722-728        缓冲器
742-748        缓冲器
750            显示接口
步骤610      是否为第一次翻转
步骤620      初始化
步骤622      配置N-2个缓冲器B[2:N-1]
步骤624      在上下文中配置数据成员
步骤626      对于所有缓冲器,将各原始缓冲器结构
             储存于缓冲器结构的额外数据成员中
步骤628      将缓冲器B[0:N-1]储存于第一数据成员
             中
步骤629      将主要表面地址储存于第二数据成员中
步骤630      翻转
步骤640      以B[2]取代B[1]
步骤650      以B[i+1]取代B[i],2<=i<N-1
步骤660      以B[1]取代B[N-1]
步骤810A     从缓冲器结构的额外成员恢复缓冲器结
             构
步骤820A     毁损缓冲器
步骤810B     翻转至第二数据成员中所储存的主要表
             面地址
步骤820B     以第一数据成员获得缓冲器B[2:N-1]
步骤825B     从缓冲器结构的额外成员恢复缓冲器结
             构
步骤830B     将缓冲器B[2:N-1]毁损
具体实施方式
图1说明具有现有双缓冲的二个图形子系统110和120的计算机系统100。主GPU 110将图像转译到缓冲器A 130与缓冲器B135中。然后,将图像翻转至显示接口140,此显示接口140直接从缓冲器检索数据用于显示。从GPU 120将图像转译到缓冲器C 160与缓冲器D 165中。然后,以位块传送(BLT)的方式将图像交替传送到缓冲器A 130与缓冲器B 135。于正常情况下,主与从GPU将交替转译图像,即如果主GPU转译帧[i],则从GPU转译帧[i+1],然后主GPU再转译帧[i+2],依此类推。
图2为说明第一图双缓冲器图形子系统中的GPU的缺点时序图。主GPU在时隙200中将帧[2n]转译到缓冲器A之后,驱动器在时隙210中将帧[2n]翻转至前缓冲器中。同时,在时隙230中,将从GPU在时隙220中转译的帧[2n+1]以位块传送的方式传送到主GPU的缓冲器B中。然后,在时隙240中将缓冲器B翻转成为前缓冲器,以显示帧[2n+1]。主GPU只能在翻转时隙240完成之后才能在时隙260将后续的帧[2n+2]转译到缓冲器A中。由于翻转时隙240将缓冲器B完全变成前缓冲器之前,缓冲器A仍然是前缓冲器,其图像处于显示状态,因此主GPU不能将任何图像转译到前缓冲器中。因此,时隙250必须跟在时隙240之后。时间实例t0与t2之间的时间间隔为主GPU的空闲时间。而从GPU在时隙270中将帧[2n+3]转译到缓冲器D中。
图3是根据本发明之一具体实施例的三缓冲器双GPU图形子系统的时序图。在时隙300,主GPU将帧[2n]转译到缓冲器A。在t0至t2时,主GPU在时隙330,将帧[2n+2]转译到缓冲器C。同时在t0-t3时,主GPU在时隙305翻转缓冲器A中的帧[2n],在时隙320翻转缓冲器B中的帧[2n+1]及在时隙335翻转缓冲器C中的帧[2n+2]。在t3时,在时隙360中将帧[2n+4]转译到缓冲器B。而在时隙350翻转缓冲器A中的帧[2n+3],之后在时隙365翻转缓冲器B中的帧[2n+4]。同样的,在从GPU在时隙310翻转缓冲器E中的帧[2n+1],在时隙340翻转缓冲器D中的帧[2n+3]及在时隙370翻转缓冲器F中的帧[2n+5]。在t0-t1时,在时隙315中将帧[2n+1]以BLT方式传送到缓冲器B。而在时隙345将帧[2n+3]以BLT方式传送到缓冲器A,之后在时隙375将帧[2n+5]以BLT方式传送到缓冲器C。由于,在时隙330中将帧[2n+2]转译到缓冲器C不需要等待任何翻转操作,因此时隙330紧接在时隙300之后。然而,在时隙360中将帧[2n+4]转译到缓冲器B仍必需等待时隙335中的帧[2n+2]翻转完成,原因如前述双缓冲器子系统那样未向前缓冲器进行新的转译。因此,三缓冲器图形子系统只能部份消除GPU的空闲时间。
图4说明根据本发明的另一具体实施例的四缓冲器双GPU图形子系统。在时隙400,主GPU将帧[2n]转译到缓冲器A。在t0至t2时,主GPU在时隙405,将帧[2n+2]转译到缓冲器C,及在时隙410,将帧[2n+4]转译到缓冲器A;同时在t0至t2时,主GPU在时隙420翻转缓冲器A中的帧[2n],在时隙425翻转缓冲器B中的帧[2n+1]及在时隙430翻转缓冲器C中的帧[2n+2]。接着,在时隙435中将帧[2n+3]转译到缓冲器D。而在时隙440翻转缓冲器A中的帧[2n+4]。同样的,在从GPU在时隙450将帧[2n+1]转译到缓冲器F。在时隙455,将帧[2n+3]转译到缓冲器H及在时隙460,将帧[2n+5]转译到缓冲器F。在t0时,在时隙470将帧[2n+1]以BLT方式传送到B。而在时隙475将帧[2n+3]以BLT方式传送到D,之后在时隙480将帧[2n+5]以BLT方式传送到B。其中,主GPU在时隙405转译帧[2n+2]与在时隙410转译帧[2n+4]之间的空闲时间也大幅减少。事实上,如果时隙420和425中的翻转时间短到足以与时隙405中的转译比拟,则可以视为消除空闲时间。
现在,清楚的,通过将更多缓冲器添加到双GPU图形子系统中,可以减少甚至消除GPU的空闲时间。但如果让驱动器以如图2至图4所示的正常方式处理多重缓冲器多重GPU图形子系统,则驱动器逻辑会相对比较复杂。因此,如图5及图6所示,根据本发明的一具体实施例采用在翻转结束时移动缓冲器的驱动器逻辑,以使内部多重缓冲对外部应用程序而言是易于被了解的。
参考图5,B[0]500与B[1]510为图形子系统的两个原始双缓冲器,并且翻转只在这两个缓冲器之间执行。B[2]520,B[3]530,至B[N-1]540是额外的N-2个缓冲器。翻转结束时,B[1]510由B[2]520取代,更一般的说,B[i]由B[i+1]取代,其中2<=i<N-1,并且最后一个缓冲器B[N-1]540由B[1]510取代。
前述的取代要取代表示缓冲器的数据结构的内容。如同应用程序及操作系统(OS)使用指向缓冲器结构的指标来参考缓冲器,因此通过取代缓冲器结构内容,驱动器以一缓冲器取代另一缓冲器,而应用程序和OS仍认为其为原来的缓冲器。因此,取代之后,B[1]为原来的B[2],B[I]为原来的B[I+1],并且B[N-1]为原来的B[2]。并且在翻转之后,B[0]为原来的B[1],而B[1]为原来的B[0]。以此方式,即使在双缓冲器图形子系统中似乎只有原来的双缓冲器B[0]500及B[1]510可用于转译和显示,但内部缓冲器B[2]520至B[N-1]540也可以用于转译和显示,其对应用程序和OS而言是易于被了解的。
参考图6,所示流程图用于结合Microsoft Windows DdFlip函数的操作说明根据本发明的一具体实施例的流程。在步骤610中,检查翻转以查看这是否为第一次翻转,然后在初始化步骤620中,(更包含图6内之步骤622,步骤624,步骤626,步骤628和步骤629),驱动器配置额外的N-2个缓冲器B[2:N-1],当执行这两个步骤时,在上下文(context)中配置两个数据成员(data member),第一个成员用于储存指向缓冲器B[2:N-1]的指标,而第二个成员用于储存主要表面地址(primary surface address)。此处,上下文是使用装置时的情况,并且上下文结构包含处理器特定的暂存器数据。系统使用上下文结构来执行各种内部操作,并且主要表面是OS用作桌面显示器的缓冲器。而且,驱动器将会在缓冲器结构中配置额外的成员,以储存所有缓冲器(包括外部前、后缓冲器与内部缓冲器B[2:N-1])的原始缓冲器内容。
初始化步骤620之后,驱动器在步骤630中执行翻转。然后,步骤640、650至660要在B[1]与B[2:N-1]之间移动缓冲器结构内容。
如图7所示,根据本发明的另一具体实施例,本发明的多重缓冲也可以在上述具有两个缓冲器阵列的图形子系统中实施。GPU群组A 710具有多重GPU,即GPU_A[0:j]712-718,其将图像转译到缓冲器阵列A[1:m-1]724-728,然后在每次翻转至缓冲器A[0]722之后,按照与上面所述一样的方式移动缓冲结构内容。将该操作映射到GPU群组B 730的GPU_B[0:k]732-738与缓冲器阵列B 740的B[1:n-1]742-748。翻转在未切换的A[0]722与B[0]742之间进行,之后再显示于显示界面750上,因此应用程序将图形子系统仅视为现有技术的双缓冲图形子系统。
在绘图程序结束时,驱动器需要执行两个毁损函数(destroyfunction),例如DdDestroySurface和D3dDestroyContext,两者都是Microsoft Windows函数,分别如图8A和图8B所示。为了完成隐藏内部多重缓冲的任务,进一步将驱动器逻辑也添加到这些函数上。
图8A是执行DdDestroySurface函数的流程图,其中,新增了步骤810A,以从图6的初始化步骤620期间储存于第一数据成员中的数据恢复表面结构。并在步骤820B中,毁损缓冲器。
图8B是执行D3dDestroyContext函数的流程图,其中,新增了三个步骤810B、820B与825B。步骤810B要翻转至第二数据成员中所储存的原始主要表面地址。步骤820B要通过在图6的初始化步骤620期间储存于第一数据成员中的指标获得缓冲器B[2:N-1]。步骤825B要通过每个缓冲器结构的额外数据成员恢复缓冲器结构。在步骤830B中,将缓冲器B[2:N-1]毁损。在毁损函数插入这些步骤以恢复被毁损的原始信息,驱动器(driver)可以正确毁损(destory)所有缓冲器并恢复原始的主要表面(priamry surface)。
虽然已经描述并显示了本发明的实施方式,但是本领域技术人员应该理解在脱离范围由权利要求限定的本发明的原理与精神的前提下,可以对这些实施方式进行各种修改。

Claims (10)

1.一种在具有多个图形处理单元的计算机系统中进行多重缓冲以通过在两个缓冲器之间翻转而转译并且显示图像的方法,该方法包括:
通过一第一图形处理单元将一第一图像转译到一后缓冲器;
通过翻转至该后缓冲器而显示该第一图像,然后,该前缓冲器变成一后缓冲器,而该后缓冲器变成一前缓冲器;
以一预定的序列移动目前的后缓冲器及内部缓冲器;
通过一图2形处理单元将一图2像转译到目前的该后缓冲器,其已由一内部缓冲器取代;
通过翻转至目前的该后缓冲器而显示该图2像,然后,交换该前缓冲器及该后缓冲器;以及
再次以该预定的序列移动目前的该后缓冲器及该内部缓冲器。
2.如权利要求1所述的方法,其中,该移动缓冲器进一步包括:
在该缓冲器结构的一额外数据成员中储存一整个原始缓冲器结构;
将原始的内部缓冲器结构内容储存于一第一配置的数据成员中;以及
将一原始的主要表面地址储存于一第二配置的数据成员中。
3.如权利要求2所述的方法,其进一步包括如下步骤之一:
在一上下文中配置至少两个数据成员,并且在每个缓冲器结构中配置一额外的数据成员;
以储存在该缓冲器结构的该额外数据成员中的信息来恢复缓冲器结构,翻转至该第二数据成员中所储存的该主要表面地址,从该第一数据成员恢复原始的缓冲器结构内容。
4.如权利要求1所述的方法,其进一步包括:
配置一或多个内部缓冲器;
交换该前缓冲器及该后缓冲器;以及
每次翻转之后在该后缓冲器与该内部缓冲器之间移动缓冲器结构内容。
5.一种在具有多个图形处理单元的计算机系统中进行多重缓冲的系统,其包括:
两个或多个图形处理单元,其用于转译图像;
两个或多个翻转缓冲器,其通过在两个翻转缓冲器之间翻转而交替提供用于显示所转译之图像的数据;
一或多个内部缓冲器,其用于取代该后缓冲器以获得更多可转译的缓冲器。
6.如权利要求5所述的系统,其进一步包括如下之一:
每个缓冲器结构中的一额外数据成员,其用于储存一整个原始的缓冲器结构,一第一配置的数据成员,其用于储存指向该内部缓冲器的指标,以及一第二配置的数据成员,其用于储存一原始的主要表面地址;
一恢复部件,其用于以储存在该缓冲器结构的该额外数据成员中的信息来恢复缓冲器结构,翻转部件,其用于翻转至该第二数据成员中所储存的该主要表面地址,以及一获得部件,其通过储存于该第一数据成员中的该指标来获得该内部缓冲器。
7.如权利要求5所述的系统,其中,具有一或多个互相关联的内部缓冲器,以获得更多可转译的缓冲器。
8.一种用于在具有多个图形处理单元及至少两个翻转缓冲器的计算机图形子系统中支持透明多重缓冲的系统,该系统包括:
至少一内部缓冲器,其配置用于提供更多可转译的缓冲器;
一图形驱动器,其用于移动该其一缓冲器和该内部缓冲器;以及
每个缓冲器结构中的至少一额外数据成员,其用于储存原始的缓冲器结构内容,以及由该驱动器配置的两个数据成员,其用于储存该图形子系统的初始信息,以用于在随后绘图程序结束时予以毁损,其中一成员用于储存指向内部缓冲器的指标,另一成员用于储存原始的主要表面地址。
9.如权利要求8所述的系统,其中,有至少一内部缓冲器与该其一缓冲器一起移动,以提供更多可转译的缓冲器。
10.如权利要求8所述的系统,其中,该绘图程序在一Windows操作系统中运行。
CNB2006101355923A 2005-10-18 2006-10-18 在多重图形处理单元图形子系统中进行多重缓冲 Active CN100568277C (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
CN1991906A true CN1991906A (zh) 2007-07-04
CN100568277C CN100568277C (zh) 2009-12-09

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 在多重图形处理单元图形子系统中进行多重缓冲
CNB2006101355957A Active CN100495435C (zh) 2005-10-18 2006-10-18 图像处理单元的并行引擎的同步方法及系统
CN2006101355904A Active CN1991903B (zh) 2005-10-18 2006-10-18 图形处理事件同步的方法及系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CNB2006101359411A Active CN100489820C (zh) 2005-10-18 2006-10-17 在计算机系统中延迟命令发出的方法和系统

Family Applications After (2)

Application Number Title Priority Date Filing Date
CNB2006101355957A Active CN100495435C (zh) 2005-10-18 2006-10-18 图像处理单元的并行引擎的同步方法及系统
CN2006101355904A Active CN1991903B (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 (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102156959A (zh) * 2010-04-21 2011-08-17 威盛电子股份有限公司 具有多线程执行单元的绘图处理装置及其存储器存取方法
CN102497591A (zh) * 2011-11-11 2012-06-13 青岛海信移动通信技术股份有限公司 一种终端以及该终端与电视进行无线传屏的方法
CN102750665A (zh) * 2012-06-01 2012-10-24 上海鼎为软件技术有限公司 一种图形处理方法、图形处理装置及移动终端
CN105393258A (zh) * 2013-07-01 2016-03-09 高通股份有限公司 用于提供对图形处理单元的安全访问控制的系统和方法

Families Citing this family (33)

* 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
US8397241B2 (en) * 2008-11-13 2013-03-12 Intel Corporation Language level support for 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
US20110063306A1 (en) * 2009-09-16 2011-03-17 Nvidia Corporation CO-PROCESSING TECHNIQUES ON HETEROGENEOUS GPUs INCLUDING IDENTIFYING ONE GPU AS A NON-GRAPHICS DEVICE
US20110084982A1 (en) * 2009-10-12 2011-04-14 Sony Corporation Apparatus and Method for Displaying Image Data With Memory Reduction
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
US9230517B2 (en) 2012-05-31 2016-01-05 Microsoft Technology Licensing, Llc Virtual surface gutters
US9286122B2 (en) 2012-05-31 2016-03-15 Microsoft Technology Licensing, Llc Display techniques using virtual surface allocation
US9235925B2 (en) 2012-05-31 2016-01-12 Microsoft Technology Licensing, Llc Virtual surface rendering
US9307007B2 (en) 2013-06-14 2016-04-05 Microsoft Technology Licensing, Llc Content pre-render and pre-fetch techniques
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
JP6580380B2 (ja) * 2015-06-12 2019-09-25 オリンパス株式会社 画像処理装置および画像処理方法
CN106600521A (zh) * 2016-11-30 2017-04-26 宇龙计算机通信科技(深圳)有限公司 一种图像处理方法及终端设备
WO2018119602A1 (zh) * 2016-12-26 2018-07-05 深圳前海达闼云端智能科技有限公司 一种渲染方法及装置
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
US7522167B1 (en) * 2004-12-16 2009-04-21 Nvidia Corporation Coherence of displayed images for split-frame rendering in multi-processor graphics system
US7545380B1 (en) * 2004-12-16 2009-06-09 Nvidia Corporation Sequencing of displayed images for alternate frame rendering in a 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

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102156959A (zh) * 2010-04-21 2011-08-17 威盛电子股份有限公司 具有多线程执行单元的绘图处理装置及其存储器存取方法
CN102497591A (zh) * 2011-11-11 2012-06-13 青岛海信移动通信技术股份有限公司 一种终端以及该终端与电视进行无线传屏的方法
CN102497591B (zh) * 2011-11-11 2015-02-18 青岛海信移动通信技术股份有限公司 一种终端以及该终端与电视进行无线传屏的方法
CN102750665A (zh) * 2012-06-01 2012-10-24 上海鼎为软件技术有限公司 一种图形处理方法、图形处理装置及移动终端
CN102750665B (zh) * 2012-06-01 2014-09-24 上海鼎为电子科技(集团)有限公司 一种图形处理方法、图形处理装置及移动终端
CN105393258A (zh) * 2013-07-01 2016-03-09 高通股份有限公司 用于提供对图形处理单元的安全访问控制的系统和方法
CN105393258B (zh) * 2013-07-01 2018-05-25 高通股份有限公司 用于提供对图形处理单元的安全访问控制的系统和方法

Also Published As

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

Similar Documents

Publication Publication Date Title
CN1991906A (zh) 在多重图形处理单元图形子系统中进行多重缓冲
CN1162832C (zh) 图像显示装置
CN1242330C (zh) 执行并飞“异或”运算的方法和系统
CN1498395A (zh) 图像合成装置和图像合成方法
CN1617216A (zh) 液晶显示装置的驱动电路和驱动方法
CN1969299A (zh) 图像生成装置及图像生成方法
CN1905000A (zh) 用于高效图像旋转的方法和装置
CN100341044C (zh) 用于控制电子设备上的显示监视器的方法和设备
CN101046941A (zh) 用于驱动液晶显示器件的装置和方法
CN1734399A (zh) 信息处理装置和电力控制方法
CN100351814C (zh) 用于依据存储器访问模式执行数据存取的装置和方法
CN1302659C (zh) 数字成像装置和用于选择它的数据传输模式的方法
CN101039396A (zh) 使用多个色度键颜色来输出图像的设备和方法
CN101059762A (zh) 虚拟机系统及其显卡访问方法
CN200973139Y (zh) 图像质量提高设备
CN1705975A (zh) 画面显示装置
CN1113317C (zh) 图形处理器和图形处理方法
CN1601488A (zh) 信息处理控制系统
CN1878278A (zh) 进行视频处理的装置和方法
CN1103082C (zh) 图像识别装置
CN1955933A (zh) 数据处理设备和方法
CN1203452C (zh) 处理包含对象目标的描画数据的图形描画装置
CN1310163C (zh) 通用串行总线主机控制器
CN1932880A (zh) 用硬盘驱动器的闪存作为主存储器和视频存储器的计算机
CN101059952A (zh) 一种图像旋转处理方法、装置及多媒体处理器

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