CN101849227A - 在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统 - Google Patents

在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统 Download PDF

Info

Publication number
CN101849227A
CN101849227A CN200680002976A CN200680002976A CN101849227A CN 101849227 A CN101849227 A CN 101849227A CN 200680002976 A CN200680002976 A CN 200680002976A CN 200680002976 A CN200680002976 A CN 200680002976A CN 101849227 A CN101849227 A CN 101849227A
Authority
CN
China
Prior art keywords
gpu
graphics
pipeline
parallelization
pattern
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.)
Pending
Application number
CN200680002976A
Other languages
English (en)
Inventor
R·巴卡拉什
O·雷默茨
E·弗格尔
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.)
Lucid Information Technology Ltd
Original Assignee
Lucid Information Technology Ltd
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 Lucid Information Technology Ltd filed Critical Lucid Information Technology Ltd
Publication of CN101849227A publication Critical patent/CN101849227A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • 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
    • G06F3/00Input 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/52Parallel processing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2300/00Aspects of the constitution of display devices
    • G09G2300/04Structural and physical details of display devices
    • G09G2300/0421Structural details of the set of electrodes
    • G09G2300/0426Layout of electrodes and connections
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2310/00Command of the display device
    • G09G2310/02Addressing, scanning or driving the display screen or processing steps related thereto
    • G09G2310/0224Details of interlacing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/06Use of more than one graphics processor to process data before displaying to one or more screens
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers

Abstract

一种在单片硅芯片上实现的高性能图形处理和显示系统,该系统支持多个图形处理单元(GPU)核心的群集,这多个图形处理单元核心的群集协作以提供支持用于不同应用的拟真图形能力的功能强大并高度可升级的可视化方案。本发明通过通过动态地管理各种并行渲染技术并使得能自适应地处理不同的图形应用来消除沿图形管道的渲染瓶颈。

Description

在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统
技术领域
在过去的几十年间,图形架构领域的许多研究和开发都涉及改善三维(3D)计算机图形渲染的性能的方法。图形架构受到已推动通用计算机架构的半导体技术的相同发展的推动。包括管道处理和并行性等许多相同的加速技术被用在该领域中。然而,图形渲染应用提出了特别的需求并制造了新机会。例如,由于图形显示一般涉及大量重复计算,所以能够比通用计算更容易地采用大量并行性。
在高性能图形系统中,计算的次数大大超过单处理单元的能力,所以并行系统已成为图形架构的规则。现今,非常高度的并行性被应用在基于硅的图形处理单元(GPU)中以执行图形计算。
通常这些计算通过由作为图形系统的一部分的视频存储器支持的图形管道来执行。图1A示出了作为PC架构的一部分的常规图形系统的框图,包括CPU(111)、系统存储器(112)、I/O芯片集(113)、高速CPU-GPU总线(114)(例如,PCIExpress 16x)、基于单GPU的视频(图形)卡(115)、以及显示器(116)。如图1B所示,该单GPU图形管道分解为两个主要部分:用于处理3D图形图元(例如,多边形)的几何子系统以及用于计算像素值的像素子系统。这两部分是为增强的并行性一致地设计的。
在几何子系统中,图形数据库是规则的,通常由接受几乎相同的处理的大量图元构成;因此自然的并发性是将数据分为单独的流并独立地处理它们。在像素子系统中,由于像素能够以许多方法并行地生成,所以图像并行性很早就是用于高速光栅化架构的有吸引力的方法。图2A中描绘了现有技术中高度并行图形处理单元芯片(GPU)的一个示例(取自ATI的3D Architecture White Paper(3D架构白皮书))。几何子系统由六(6)个并行管道构成而像素子系统有十六个(16)个并行管道。
然而,如图2B所示,这两个子系统之间的“汇集级”221是非常有问题的,因为它必须处理全数据流带宽。在像素子系统中,经变换和剪裁的图元的多个流必须被定向到进行光栅化的处理器。这可能要求在不同的处理器被指派给不同的屏幕区域的同时根据空间信息分类图元。并行像素级中的第二个困难是在数据通过并行处理器时数据排序可能会改变。例如,一个处理器在另一处理器变换单个大的图元之前可能会变换两个小的图元。诸如更新一个窗口以代替另一窗口、或在两个缓冲器之间切换等命令的某些全局命令要求数据在命令前后被同步。几何与像素级之间的这一汇集级限制了单GPU中的并行性。
增强并行性程度的典型技术采用多个GPU卡、或在卡上采用多个GPU芯片,其中渲染性能被额外地提升,超出了单核GPU中的汇集限制。现今,该技术由多个学术研究成果(例如,斯坦福大学的Chromium并行图形系统)和商业产品(例如,Nvidia的双GPU系统——SLI、ATI的双GPU——Crossfire)来实施。图3示出了基于Nvidia SLI技术的商用双GPU系统Asus A8N-SLI。
并行化能够通过释放图形系统中的瓶颈来提高性能。图2C指示分解为总线传输、几何处理以及片段填充界限处理等分段级的图形管道中典型的瓶颈。一给定管道仅与以上各级中最薄弱的一个环节一样强壮,因此主瓶颈决定总吞吐量。如图2C中所指示的,管道瓶颈源于:(231)几何、纹理、动画以及元数据传输;(232)几何数据存储器限制;(233)纹理数据存储器限制;(234)几何变换;以及(235)片段渲染。
有不同的方法使GPU并行化,诸如:时间分割(每个GPU渲染下一连续帧);图像分割(每个GPU渲染每帧像素的一个子集);以及对象分割(每个GPU渲染包括几何和纹理在内的整个数据的一个子集);及其衍生和组合。虽然有前景,但是这种使GPU芯片群集并行化的方法也会遭遇一些固有的问题,诸如:受限的GPU间通信带宽;机械复杂度(例如,尺寸、功率、以及发热);组件冗余;以及高成本。
因此,在本领域非常需要一种避免此类现有技术的装置和方法的不足和缺陷的、用于高速图形处理和显示的改善的方法和装置。
发明公开
相应地,本发明的主要目的是提供一种避免现有技术的装置和方法的不足和缺陷的、用于高速图形显示和处理的新颖方法和装置。
本发明的另一目的是提供一种包含具有无限制图形并行性的多个图形核心的新颖图形处理和显示系统,其避开了单GPU系统的固有汇集瓶颈。
本发明的另一目的是提供一种确保最佳图形性能、消除受限的GPU间通信带宽、机械复杂度(尺寸、功能、以及发热)、组件冗余、以及高成本等多芯片系统的不足的新颖图形处理和显示系统。
本发明的另一目的是提供一种通过并行化单硅芯片中的多个图形核心而具有增强的图形处理和显示能力的新颖图形处理和显示系统。
本发明的另一目的是提供一种在具有不受限数目的多个图形核心的硅芯片上实现的新颖图形处理和显示系统。
本发明的另一目的是提供一种在利用多个图形核心的群集的硅芯片上实现的新颖图形处理和显示系统。
本发明的另一目的是提供一种在具有多个图形核心或管道(即,多管道芯片上系统,或MP-SOC)并提供架构灵活性以实现先进的并行图形显示性能的硅芯片上实现的新颖图形处理和显示系统。
本发明的另一目的是提供一种在具有多个图形核心、并在其几何和像素处理子系统两者内自适应地支持不同并行模式的硅芯片上实现的新颖图形处理和显示系统。
本发明另一目的是提供一种在具有多个GPU核心、并提供针对高度先进的图形处理和显示性能的自适应性的硅芯片上实现的新颖图形处理和显示系统。
本发明另一目的是提供一种新颖图形处理和显示系统及方法,其中顶点(例如,3D多边形几何)处理和片段处理的图形管道瓶颈被透明而巧妙地解决。
本发明的另一目的是提供一种用于巧妙分解数据和图形命令、保持图形库的基本特征作为状态机、并紧密遵循图形标准的方法和系统。
本发明的另一目的是提供一种支持在具有多个图形核心并提供架构灵活性以实现最佳并行性能的硅芯片上实现的图形处理和显示系统的新型PC图形卡。
本发明的另一目的是提供一种具有改善的图形处理和显示能力、采用包含具有多个图形核心并提供架构灵活性以实现最佳并行性能的硅芯片的图形卡的计算系统。
本发明的另一目的是提供这样一种计算系统,其具有包括视频游戏、虚拟现实、科学可视化、以及要求或需要拟真(photo realistic)图形显示能力的其它交互应用在内的应用所要求的改善的图形处理和显示性能。
本发明的这些和其它目的和优点将通过下文而显而易见。
附图简述
为了更为全面地理解如何实施本发明的目的,可结合在以下简述的附图一起阅读以下对说明性实施例的具体说明,附图中:
图1A是现有技术的标准PC架构的示意性表示,其中其常规单GPU图形卡被圈出显示;
图1B是具有几何和像素处理子系统的采用单GPU的现有技术常规图形系统的简化框图,其间的数据汇集流成为显著限制性能的严重的系统瓶颈;
图2A是示出了典型现有技术的ATI X800图形处理单元芯片(GPU)中的高度并行性的示意图,其中几何子系统由6个并行管道构成而像素子系统由16个并行管道构成;
图2B是示出了几何与像素并行引擎之间的瓶颈汇集级(装配引擎)的现有技术图形处理单元(GPU)芯片(例如,ATI X800)的内部的示意图;
图2C是示出了其间存在数据瓶颈问题的常规图形管道的示意性表示;
图3是现有技术双GPU驱动视频图形卡的照片;
图4A是表示根据本发明的原理的采用了使用多管道芯片上系统(MP-SOC)器件的印刷电路图形卡的计算系统的示意性系统框图,其中该系统框图示出了CPU、I/O芯片集、系统存储器、基于MP-SOC的图形卡、以及(诸)显示器屏幕;
图4B是搭载在印刷电路(PC)视频图形板上的、本发明的MP-SOC的物理实现的示意性表示;
图4C是主板上与本发明的基于MP-SOC的PC图形板互联的标准PCI Express图形插槽的照片;
图4D是根据本发明的原理的包括4个由GPU驱动的管道核心的示例性MP-SOC硅布局的示意性表示;
图4E是本发明的MP-SOC芯片的示例性封装的示意性表示;
图5是根据本发明的说明性实施例的MP-SOC架构的示意性框图;
图6是根据本发明的说明性实施例的基于MP-SOC的计算系统的软件框图;
图7A是进一步示出了本发明的说明性实施例的包括基于MP-SOC的系统的多管道软件驱动器的模块的示意性框图;
图7B是示出了本发明的由运行三个并行化模式(即,对象分割、图像分割和时间分割)的机制在基于MP-SOC的器件和系统内执行的步骤的流程图;
图8是示出了本发明的MP-SOC系统的对象分割配置的示意性表示;
图9是示出了本发明的MP-SOC系统的图像分割配置的示意性表示;
图10是示出了本发明的MP-SOC系统的时间分割配置的示意性表示;
图11是示出了本发明的在沿基于MP-SOC系统的多个GPU驱动的管道核心之间分布多边形的过程的流程图;以及
图12示出了根据本发明的原理的被配置为并行模式的组合的八(8)个GPU驱动的管道核心的示例。
实施本发明的最佳模式
在通过援引包括于此的作为WIPO公报No.WO 2005/050557 A2公开的、申请人的在先PCT申请No.PCT/IL04/001069号中所教导的技术教授了一种包括硬件中枢(Hub)和软件中枢驱动器的图形可升级的中枢架构的使用,该中枢架构起到将现货GPU芯片粘合在一起(即,并行地工作)以提供高性能和可升级的可视化方案、对象分割分解算法、采用多个并行模式及其组合、以及自适应的并行模式管理的作用。并且,通过援引包括于此的作为WIPO公报No.WO 2004/070652 A2公开的PCT申请No.PCT/IL2004/000079教导了基于相关联的决策制定的合成图像机制的使用,从而提供快速且并不昂贵的帧缓冲器的重新合成作为对象分割并行性的一部分。
在以上标识的申请人的PCT申请中所教导的方法具有诸多优点和益处,即通过使用现货GPU以对现有应用透明的方式构造强大并行系统的能力。然而,在许多应用中,为了在相对低成本并且对现有图形应用透明的情况下给出高性能、高帧速率稳定性的图形方案的目的,需要使用替换方法即通过为PC提供采用在单片硅芯片上实现的强大图形处理和显示系统的图形处理和显示架构,从而在常规图形系统中提供这种益处。
该新颖替换方法的益处包括:多GPU群集的基于VLSI的小型化;GPU间通信的高带宽;低功耗和散热;无组件冗余;以及低成本。现在将在以下对关于实施该替换方法的细节进行说明。
一般而言,在此公开的本发明教导了一种用于在半导体级上将图形功能并行化为在优选为单片构造的单个芯片上实现的多图形管道架构的改善的方法和装置。为了表述方便,这一器件在此被称为“芯片上多管道系统”或“MP-SOC”。该“硅芯片上”系统包括以灵活的拓扑结构组织的由GPU驱动的管道核心群集,从而允许不同的并行方案。理论上,管道核心的数目没有限制,仅受到硅面积考虑的约束。MP-SOC由驻留于主CPU的软件驱动器模式来驱动。各种并行化方案使得性能最优化。这些方案是时间、图像和对象分割及其衍生。
本发明的说明性实施例享有多GPU芯片的优点,即:回避了单GPU的汇集局限,而同时又消除了多GPU系统的固有问题,诸如受限的GPU间通信带宽、机械复杂度(尺寸、功能以及发热)、组件冗余、以及高成本。
如图4A所示,本发明的物理图形系统由常规主板(418)和基于MP-SOC的图形卡(415)构成。该主板搭载了常见组件集,即CPU(411)、系统存储器(412)、I/O芯片集(413)、以及其它非图形组件(参见图1A的驻留在PC主板上的完整的组件集)。基于MP-SOC芯片(416)的印刷电路图形卡通过PCI Express 16x通道连接器(414)连接至主板。该卡还具有到至少一个屏幕(416)的输出。MP-SOC图形卡代替主板上的常规单GPU图形卡。通过比较图4A与图1A,MP-SOC图形卡集成在常规PC系统中的方法是显而易见的。通过简单地用本发明的基于MP-SOC的卡替换单GPU图形卡(图1A中被圈出),并用主CPU上的多管道软驱动器(419)替换其驱动器,本发明的系统实现了在此所述的所有优点和益处。该修改除了改善的性能之外,对于用户和应用是完全透明的。
图4B示出了本发明的一种可能的物理实现。其上搭载了MP-SOC(422)的标准形式PC卡(421)通过PCI Express 16x通道连接器(423)连接至主计算系统的主板(426)。显示器屏幕通过标准DVI连接器424连接。由于预料MP-SOC上的多个管道会消耗高功率,导致通过PCI Express连接器的标准供电是不够的,所以通过专用电源电缆(425)向该卡提供辅助电源。
图4C示出了主板上与基于MP-SOC的卡连接的PCI Express连接器(431)。应该强调的是,PC卡上MP-SOC的标准物理实现使得对现有技术的GPU驱动的视频图形卡的替换是容易和自然的。
图4D和4E说明了技术人员对MP-SOC芯片的概念以进一步示出该半导体器件的物理实现。图4D示出了可能的MP-SOC硅布局。在该示例中,有4个现货图形管道核心。核心的数目根据硅面积约束可缩放至任意数目。对MP-SOC功能单元的详细讨论在下面给出。图4E示出了MP-SOC芯片可能的封装和外观。如之前所述的,该芯片与其它外围组件(例如,存储器芯片、总线芯片等)一起旨在被搭载在标准尺寸的PCB(印刷电路板)上并用作PC系统中的单一图形卡,以代替现有技术的视频图形卡。基于MP-SOC的卡的制造可由图形卡制造商(例如,AsusTech、Gigabyte)来执行。
如图5中所示的,多管道SOC架构由以下组件构成:
□位于CPU总线(例如,16通道的PCI Express)上的路由中心。它在图形管道核心之间分布来自CPU的图形数据流,并随后将来自各核心的渲染结果(帧缓冲)收集至合成单元。数据被分布的方法由控制单元根据当前并行化模式来指示。
□合成单元根据正在进行的并行化模式重新合成这些部分帧缓冲。
□控制单元处于CPU驻留的软多管道驱动器的控制下。它根据并行化模式负责整个MP-SOC系统的配置和功能处理。
□具有内部或外部存储器、以及光学高速缓冲存储器的处理元件(PE)单元。PE可以是根据架构需要的任何种类的芯片上处理器。除了服务于PE,高速缓冲存储器和存储器还可用于高速缓冲诸如纹理、顶点对象等为所有管道核心共有的图形数据。
□多个GPU驱动管道核心。这些核心可以、但无需是专门设计的。它们可被原始地设计成常规的单核心GPU。
□剖析功能单元。该单元向多管道驱动递送基准数据,诸如存储器速度、按字节计的存储器使用量、渲染的总像素数、进入渲染的几何数据、帧速率、每个管道核心的工作负荷、管道核心之间的负荷平衡、传输数据量、纹理计数、以及深度复杂度。
□显示器接口,能够运行单个或多个屏幕。
如图6所示,系统的软件包括图形应用、图形库(例如,图形标准OpenGL或DirectX)、以及专用软键驱动器(多管道驱动器)。一般化的图形应用不需要修改或特别的移植工作就可在MP-SOC上运行。
图7示出了表示根据本发明的一个实施例的多管道驱动器的主要任务的功能性框图。该多管道驱动器执行至少以下动作:
□一般化GPU驱动器。执行一般化GPU驱动器的与和操作系统、图形库(例如,OpenGL或DirectX)的交互相关联的、以及控制GPU的所有功能。
□分布式图形功能控制。该模块执行与根据并行策略管理实行不同并行化模式相关联的所有功能。如将在下文更为具体地说明的,在每个模式中,数据在管道之间被不同地分布和重新合成。
□状态监视。图形库(例如,OpenGL和DirectX)是状态机。并行化必须保持跨图形系统的内聚状态。这是通过连续分析所有传入的命令来实现的,并且同时状态命令和部分数据必须被复制到所有管道从而保持跨各图形管道的有效状态。影响整个图形系统、将系统设为阻塞(blocking)模式的诸如刷新、交换、α混合等被称为阻塞操作的类造成了特定问题。阻塞操作的特别之处在于,因为它们需要合成的有效FB数据,由此在本发明的并行设置中,它们对所有管道核心均有影响。对处理阻塞操作更详细的说明将在下文中给出。
□应用剖析和分析模块。该模块对正在运行的应用执行实时剖析和分析。其连续地监视系统中的应用参数,诸如存储器速度、按字节计的存储器使用量、渲染的总像素、进入渲染的几何数据、帧速率、每个管道核心的工作负荷、图形管道之间的负荷平衡、传输的数据量、纹理计数、以及深度复杂度等。剖析模块标识图形系统内引起瓶颈的问题区域。剖析模块需要来自多管道核心的寄存器、MP-SOC控制单元的寄存器,以及图形API命令(例如,OpenGL、DirectX)的输入。
□并行性策略管理根据以上剖析和分析在每帧的基础上制定关于要执行的并行模式的决策。该决策然后通过MP-SOC中的控制单元来实行。
本发明的一个主要特征是其能够修补性能瓶颈的拓扑结构灵活性。这种灵活性是通过借助路由中心以及不同合并方案在合成单元处重排图形管道群集得到的。不同的并行化方案影响不同的性能瓶颈。因此,由剖析模块标识的瓶颈可使用相应的并行化方案来补救。
图7B的流程图说明了运行三个并行模式——对象分割、图像分割以及时间分割——的机制。该机制将软驱动器模块与MP-SOC单元的活动组合。流程图的一个循环是一帧。如将在以下解释的,首先开始的模式是对象分割(OD),因为它是优选的并行模式。应用的剖析和分析在软剖析和分析模块(S-PA)的控制下保持常开。并行策略管理(S-PPM)模块在每一帧都检测要从三个并行化模式中选取的最优模式。
让我们假定采取了对象分割(OD)路径。分布式图形功能控制(S-DGFC)模块针对OD配置整个系统,其特征在于几何数据的分布以及使用的合成算法。该配置在图8中示出,并且在稍后具体说明。S-DGFC模块将几何数据分解为多个部分,每个都由路由中心(C-RC)发送到不同的GPU驱动管道核心(C-PC)以用于渲染。如图11所示并在下文具体说明,状态监视(S-SM)模块在渲染的数据流中监视阻塞命令。当渲染完成时,所有帧缓冲由控制单元(C-Ctrl)根据深度测试移到合成单元(C-CU)以将所有缓冲合成为单个帧(将在以下具体说明)。最终的FB(帧缓冲)由显示接口单元(C-DI)移到显示器。在帧结束时,S-PA和S-PPM模块对改变模式的选项进行测试。如果采取保持原模式的决策,则新的OD帧从另一数据部分开始。否则,由S-PA和S-PPM模块执行对最优模式的新测试。
流程图中的左边路径是图像分割(ID)操作。图9中还示出了由S-DGFC设置的ID配置,并在稍后对其具体说明。它的特征在于在所有管道核心之间广播相同数据,并且图像基于合成算法。管道核心之间图像的分割由S-DGFC完成。该数据由路由中心广播,并随后在各管道核心(C-PC)处渲染,同时每个管道核心被指定以图像的另一部分。一旦渲染完成,C-Ctrl将部分FB移到合成单元(C-CU)以重新构造完整的图像。然后C-DI将FB移到显示器。最终由S-PS和S-PPM模块执行改变测试。根据结果,新帧将继续ID模式或切换至其它模式。
时间分割模式在各GPU驱动管道核心之间交替各帧。设置成由S-GDFC模块进行交替,同时每个核心由S-DGFC指定一个帧数据并由C-RC单元传递。每个核心(C-PC)依次生成帧。然后C-Ctrl通过合成单元将成熟的FB移到显示器接口并输出到显示器。实际上,合成单元在这一模式下仅起到转移的作用。最后,与之前其它模式中一样,由S-PA和S-PPM模块进行改变模式测试。
图8说明了对象分割并行化方案。软驱动器,具体而言是分布式图形功能控制模块将场景的多边形数据分解为N个部分流(N——参与的管道核心的数目)。整个数据由GPU驱动器模块发送到MP-SOC路由中心,其根据软驱动器的分割——每个约为1/N的多边形——将数据分布到N个管道以用于渲染。管道核心中的渲染是在软驱动器的状态监视模块的监视下进行的(参见图11以及以下具体说明)。得到的全帧缓冲在合成单元中聚集。它们被逐像素地深度合成以找到最终的可视像素集。在每个x-y坐标系,所有隐藏像素由合成机制消除。最终的帧缓冲被移出到显示器。
图9说明了由并行化策略管理模块根据软驱动器的剖析和分析模块中的剖析、分析、以及决策制定的结果选择的图像分割并行化方案。每个管道核心被指定以屏幕的唯一性的1/N部分。完整的多边形数据通过GPU驱动模块和路由中心被传递到每个管道核心。管道核心中的并行渲染在每个核心处得到部分帧缓冲。这些图像片段被移到合成单元以便被2D合并为单个图像并被移出至显示器。
图10说明了由并行策略管理模块根据软驱动器的剖析和分析模块中的剖析、分析、以及决策制定的结果选择的时间分割并行化方案。分布式图形功能控制模块通过GPU驱动器模块将这些帧分为N个周期(N=核心的数目)从而使每个核心有N帧的时隙来渲染完整的多边形数据。因此,场景多边形数据通过路由器在某一时间被分布至不同的管道核心。每个核心在N个周期中执行渲染并将其全帧缓冲输出至显示器以用于单帧。合成单元在这里起到简单的开关作用,在所有管道核心之间交替对显示器的接入。
不同的并行化方案解决不同的性能瓶颈。因此瓶颈必须被标识并随后通过在合适的时间应用合适的方案来消除(或降低)。
如图7B所示,剖析器标识图形系统内导致瓶颈的问题区。这是在驱动器的应用剖析和分析模块中实现的。剖析器模块需要诸如图形API命令的使用(例如,OpenGL、DirectX、其它)、存储器速度、按字节计的存储器使用量、渲染的总像素、进入渲染的几何数据、帧速率、每个GPU的工作负荷、GPU之间的负荷平衡、传输的数据量、纹理计数、以及深度复杂度等输入。这些数据类型是从基于MP-SOC的图形系统内的以下来源收集到的:
1.MP-SOC中的剖析功能单元
2.驱动器
3.管道核心
4.芯片集架构性能(CHAP)计数器
5.
通常,在帧时间的基础上检索性能数据,然而,周期性也可以是剖析器的配置属性,或者可在检索性能数据之前根据剖析器被设计成要检测的一检测到的配置事件来设置。
导致选择优选并行方法的分析是基于一个假定,即在定义良好的情形中(在以下说明),对象分割方法由于减少了更多的瓶颈所以取代其它分割方法。与仅减少了在每个管道核心处的片段/填充界限处理的图像分割形成对比,对象分割实际减轻了跨管道的所有瓶颈:(i)几何(即,多边形、线、点等)变换处理在每个管道上被卸除,仅处理1/N的多边形(N——参与的管道核心的数目);(ii)由于较少的多边形被馈送给光栅化器,所以填充界限处理减少;(iii)需要较少的几何存储器;(iv)需要较少的纹理存储器。
虽然时间分割通过允许每个管道核心在每帧生成时有更多的时间来释放瓶颈,然而该方法也遭遇一些严重问题,诸如CPU瓶颈,各管道核心生成的帧缓冲彼此不可用、以及经常有管道等待的情形。因此该方法并不适于所有应用。从而,由于对象分割作为瓶颈开启者的优越性,其成为了主要的并行模式。
以下对象分割算法在多个图形管道核心之间分布多边形。典型的应用生成包括图形数据块的图形调用流;每个块包含诸如单顶点操作或基于缓冲的操作(顶点阵列)等几何操作的列表。通常,分解算法以将各个块保持为基本数据单元的方式在管道核心之间分割数据。几何操作被附连到(诸)数据块以指示处理该数据的方法。一个块针对一个指定的GPU。然而,具有一些属于诸如刷新、交换、α混合等影响整个图形系统、将系统设成阻塞模式的阻塞操作组的操作。阻塞操作的特别之处在于它们需要合成的有效FB数据,由此在本发明的并行设置中对所有管道核心都有影响。因此,无论何时只要阻塞操作中的一个被发出,所有的管道核心就必须被同步。每个帧具有至少2个阻塞操作:终止该帧的刷新和交换。
图11表示描述了根据本发明的一个说明性实施例的用于在多个GPU驱动管道核心之间分布多边形的算法的流程图。该帧活动开始于在各GPU之间分布数据块。在步骤1112针对阻塞模式对每个图形操作进行测试。在常规路径(非阻塞路径)中,数据在步骤1113被重定向到指定的管道核心。重复该循环直到检测到阻塞操作。
当检测到阻塞操作时,所有的管道核心必须通过至少以下序列在步骤1114被同步:
执行刷新操作以终止渲染并清除管道核心中的内管道(刷新);
执行合成以将所有的FB的内容合并成单个FB;以及
将上述单个FB的内容发送回所有的管道核心以创建继续的共同基础。
交换操作启动双缓冲机制,交换背色和前色缓冲。如果在步骤1115检测到交换,这意味着合成帧必须在除了管道0之外的所有管道核心上终止。所有管道核心具有指定存储上述内容的FB的最终合成内容,但是仅有连接至屏幕的一个(管道0)在步骤1116显示图像。
另一情形是被全局应用到场景并需要被广播至所有管道核心的操作。如果诸如用于透明度的α混合等其它阻塞操作之一被标识,则所有管道核心在步骤1114如前被刷新,并且并合并为公共FB。这次没有检测到交换操作(步骤1115),因此所有管道核心具有相同的数据,并且只要阻塞模式为开(步骤1117),则它们继续处理相同的数据(步骤1118)。如果在步骤1117检测到阻塞模式结束,则管道核心返回处理指定数据(步骤1113)。
对象分割的相对优点相当程度上取决于场景的深度复杂度。深度复杂度是作为深度测试结果的片段替换的数目(画在每个像素上的多边形数目)。在没有片段替换的理想情形中(例如,场景的所有多边形都位于相同的深度水平),则根据减少的多边形数目,填充也得以减少(就2个管道核心而言)。然而,当深度复杂度变高时,对象分割的优点下降,并且在一些情形中,图像分割甚至可能性能更佳,例如在多边形数目少且纹理量高的应用。
另外,本发明引入了根据先前处理级显示的负荷将对象分割方法与图像域和时域中的图像分割和时间分割方法组合在一起的动态负荷平衡技术。将全部三个并行方法组合为联合的构架极大地增大了图形系统的帧速率稳定性。
图12公开了根据本发明的一个实施例的采用8个管道核心的系统的样本配置。根据以上样本配置,假定了平衡的图形应用。这些管道核心为实现时间分割并行性被分为两组。用1、2、3、和4索引的管道核心被配置成处理偶数帧而用5、6、7和8索引的管道核心被配置成处理奇数帧。在每组内,为图像分割设置两个管道核心子组:具有较低索引的管道核心(分别为1、2和5、6)被配置成处理屏幕的一半,而高索引的管道核心(分别为3、4和7、8)被配置成处理屏幕的另一半。最终,对于对象分割,用1、3、5和7索引的管道核心被馈以这些对象的一半,而用2、4、6和8索引的管道核心被馈以这些对象的另一半。
如果在某些时候系统检测到先前帧中呈现的瓶颈出现在管道的光栅级处,则意味着片段处理主导了渲染帧所用的时间并且配置是不平衡的。此时,管道核心被重新配置,从而使每个管道核心将渲染各帧内屏幕的四分之一。管道核心1、2、3、4之间以及5、6、7、8之间对于时间分割的原始划分仍然保持,但是管道核心2和管道核心5被分别配置成渲染偶数和奇数帧中屏幕的第一个四分之一。管道核心1和6——渲染第二个四分之一,管道核心4和7——第三个四分之一,以及管道核心3和8——第四个四分之一。不包含对象分割。
另外,如果在某些时候系统检测到在先前帧中呈现的瓶颈出现在管道的几何级,则管道核心被重新配置,从而使得每个管道核心将处理各帧内几何数据的四分之一。即,管道核心3和5被分别配置成处理偶数和奇数帧中多边形的第一个四分之一。管道核心1和7——渲染第二个四分之一,管道核心4和6——第三个四分之一,以及管道核心2和8——第四个四分之一。不包含图像分割。
应该注意的是,采用8个管道核心足以按帧组合全部三种并行模式,即时间、图像和对象分割模式。采用大于8的管道核心数目,也能组合全部三种模式,但是以不对称的方式组合。该灵活性还存在于时间分割周期中的帧计数中。在以上示例中,8个管道核心的群集被分解为两组,每组处理一帧。然而,还可以将时间分割模式中的帧数扩展为大于2帧的序列,例如3或4帧等。
采用较少数目的管道核心仍然允许并行模式的组合,然而是仅两种模式的组合。例如,仅采用4个管道核心能组合图像和对象分割模式,但没有时间分割模式。当采用作为左边群集的管道核心1-4的组时,可从图12可清楚的理解。类似地,构成上部群集的管道核心1、2、5和6的组采用对象和时间分割模式两者。最后,作为中间群集的管道核心2、4、5和6的组的配置采用图像和时间分割模式。
需要注意的是,与以上实施例类似,并行模式之间的任何组合可被调度以均匀地平衡图形负荷。
还应该理解的是,根据本发明,所有管道核心之间的并行化处理都可基于对象分割模式或图像分割模式或时间分割模式或其任意的组合以最优化每一帧的处理性能。
关于并行模式的决策是根据以上剖析和分析在每帧的基础上实现的。如上所述以及图8、9、10和12中所示的,随后由并行化方案的重新配置来执行。
以上非常具体地说明的MP-SOC架构可容易地适用于不同种类的图形处理和显示系统中。虽然结合PC类计算系统对本发明的说明性实施例进行了说明,但是需要理解的是本发明还可在包括移动计算设备、嵌入式系统、以及支持拟真质量的图形可视化的科学和工业计算系统的不同种类的系统中使用以改善图形性能。
需要理解的是,在本发明的说明性实施例中说明的图形处理和显示技术可以各种方式进行修改,这对于得益于在此公开的新颖教导的本领域的技术人员是显而易见的。本发明的说明性实施例的所有的这类修改和变化都应被认为在如所附权利要求所定义的本发明的范围和精神实质之内。

Claims (45)

1.一种用于实现图形处理和显示系统的单片构造的硅芯片,具有各自包含使用一个或多个并行化模式支持图像处理的并行化的图形处理单元的多个GPU驱动管道核心,并且适用于与计算系统接口,所述计算系统具有用于在至少一个计算机屏幕上显示图像的装置,并且支持(i)用于发布图形命令的一个或多个软件应用,(ii)用于存储用以实现所述图形命令的一个或多个图形库(即,OpenGL和DierctX一状态机),以及(iii)用于允许所述GPU驱动管道核心与所述图形库交互的多管道驱动器,其中所述多管道驱动器包括(1)GPU驱动器单元,用于执行与和所述计算系统的操作系统(OS)以及图形库(例如,OpenGL或DirectX)的交互相关联的一般化GPU驱动器的功能,(2)分布式图形功能控制模块,用于执行与根据并行化策略管理实行不同的并行化模式相关联的功能,(3)状态监视驱动器模块,用于持续地分析包括状态命令在内的所有传入命令、将某些状态命令和部分数据传送至所述所有GPU驱动管道核心以保持跨所述各GPU驱动图形管道核心的有效状态,(4)应用剖析和分析驱动器模块,用于执行对所述计算系统中应用参数的实时连续监视以标识所述图形系统内容易引起数据瓶颈的问题区,其中所述应用剖析和分析驱动器模块使用来自以下的输入(i)所述多个GPU驱动管道核心的寄存器、(ii)所述控制单元的寄存器,以及图形API命令,以及(5)并行性策略管理驱动模块,用于使用所述应用剖析和分析驱动器模块的结果在每帧的基础上决定所述GPU驱动管道核心的并行化模式,并且使这些决定由MP-SOC的控制单元来实行。
所述硅芯片包括:
所述多个GPU驱动管道核心;
路由中心,部署在所述CPU总线上,用于在所述各GPU驱动管道核心之间分布来自所述CPU的图形数据流,并随后将来自所述各管道核心的渲染结果(帧缓冲)收集至所述合成单元,
其中所述数据被分布的方法由所述控制单元来指示,并取决于当前并行化模式;
合成单元,用于根据所述正在进行的并行化模式重新合成所述各个部分帧缓冲;
控制单元,用于根据所选的并行化模式控制所述图像处理和显示系统的配置和功能处理;
处理元件(PE),具有内部和外部存储器;
剖析功能单元,用于将基准数据递交给所述多管道驱动器;以及
显示器接口,用于运行单个或多个显示器屏幕。
2.如权利要求1所述的硅芯片,其特征在于,还包括高速缓冲存储器,用于服务于所述处理元件,并用于高速缓冲为所述各GPU驱动管道核心共有的图形数据。
3.如权利要求2所述的硅芯片,其特征在于,所述图形数据从纹理和顶点对象当中选择。
4.如权利要求1所述的硅芯片,其特征在于,所述基准数据包括从存储器速度、按字节计的存储器使用量、渲染的总像素数、进入渲染的几何数据、帧速率、每个管道核心的工作负荷、图形管道之间的负荷平衡、传输的数据量、纹理计数、以及深度复杂度当中选择的数据。
5.如权利要求1所述的硅芯片,其特征在于,所述图形库是从OpenGL和DirectX当中选择的。
6.如权利要求1所述的硅芯片,其特征在于,所述GPU驱动管道核心的数目没有架构限制。
7.如权利要求1所述的硅芯片,其特征在于,所述各GPU驱动管道核心被以不同的并行化模式组织以解决性能瓶颈。
8.如权利要求7所述的硅芯片,其特征在于,所述并行化模式包括对象分割模式、图像分割模式以及时间分割模式。
9.如权利要求1所述的硅芯片,其特征在于,所述基准数据包括存储器速度、按字节计的存储器使用量、渲染的总像素数、进入渲染的几何数据、帧速率、每个管道核心的工作负荷、管道核心之间的负荷平衡、传输的数据量、纹理计数、以及深度复杂度。
10.如权利要求1所述的硅芯片,其特征在于,在可连接至所述计算系统的主板的图形卡上实现。
11.一种用于连接至具有CPU总线的计算系统的主板的图形卡,所述图形卡包括:
用于实现图形处理和显示子系统的单片构造的硅芯片,包括:
(a)多个GPU驱动管道核心;
(b)路由中心,部署在所述CPU总线上,用于在所述各GPU驱动管道核心之间分布来自所述CPU的图形数据流,并随后将来自所述各管道核心的渲染结果(帧缓冲)收集至所述合成单元;
(c)合成单元,用于根据所述正在进行的并行化模式重新合成所述各个部分帧缓冲;
(d)控制单元,用于在任意时刻根据所选的并行化模式控制所述图像处理和显示系统的配置和功能处理;
(d)处理元件(PE),具有内部和外部存储器;
(e)剖析功能单元,用于将基准数据递交给所述多管道驱动器;以及
(f)显示器接口,用于运行单个或多个显示器屏幕。
12.如权利要求11所述的图形卡,其特征在于,所述图形数据流在所述控制单元的控制下并根据当前并行化模式被分布在所述各GPU驱动管道核心之间。
13.如权利要求11所述的图形卡,其特征在于,所述硅芯片具有各自包含使用一个或多个并行化模式支持图像处理的并行化的图形处理单元(GPU)的多个GPU驱动管道核心,并且适于与计算系统接口,所述计算系统具有用于在至少一个计算机屏幕上显示图像的装置并且支持(i)用于发布图形命令的一个或多个软件应用,(ii)用于存储用以实现所述图形命令的一个或多个图形库(状态机),以及(iii)用于允许所述各GPU驱动管道核心与所述图形库交互的多管道驱动器。
14.如权利要求12所述的图形卡,其特征在于,所述多管道驱动器包括:
(1)GPU驱动器单元,用于执行与和所述计算系统的操作系统(OS)、以及图形库的交互相关联的一般化GPU驱动器的功能;
(2)分布式图形功能控制模块,用于执行与根据并行化策略管理实行不同的并行化模式相关联的功能;
(3)状态监视驱动模块,用于连续地分析包括状态命令的所有传入命令,将某些状态命令和部分数据传送至所述所有GPU驱动管道核心以保持跨所述各GPU驱动图形管道核心的有效状态;
(4)应用剖析和分析驱动器模块,用于对所述计算系统中的应用参数执行实时连续监视以标识所述图形系统内可能引起数据瓶颈的问题区,其中所述应用剖析和分析驱动器模块使用来自以下的输入(i)所述多个GPU驱动管道核心的寄存器、(ii)所述控制单元的寄存器,以及图形API命令,以及
(5)并行性策略管理驱动器模块,用于使用所述应用剖析和分析驱动器模块的结果在每帧的基础上决定所述各GPU驱动管道核心的并行化模式,并且使这些决定由MP-SOC的控制单元来实行。
15.如权利要求11所述的图形卡,其特征在于,还包括高速缓冲存储器,用于服务于所述处理元件,并用于高速缓冲为所述各GPU驱动管道核心共有的图形数据。
16.如权利要求15所述的图形卡,其特征在于,所述图形数据从纹理和顶点对象当中选择。
17.如权利要求4所述的图形卡,其特征在于,所述基准参数包括从存储器速度、按字节计的存储器使用量、渲染的总像素数、进入渲染的几何数据、帧速率、每个管道核心的工作负荷、图形管道之间的负荷平衡、传输的数据量、纹理计数、以及深度复杂度当中选择的数据。
18.如权利要求11所述的图形卡,其特征在于,所述图形库从OpenGL和DirectX当中选择。
19.如权利要求11所述的图形卡,其特征在于,所述GPU驱动管道核心的数目没有架构限制。
20.如权利要求11所述的图形卡,其特征在于,所述各GPU驱动管道核心被以不同的并行化模式组织以解决性能瓶颈。
21.如权利要求11所述的图形卡,其特征在于,所述并行化模式包括对象分割模式、图像分割模式以及时间分割模式。
22.一种用于在多个或多个显示器屏幕上显示图像的计算机系统,包括:
主板,具有CPU总线以及用于实现图形处理和显示子系统的单片构造的硅芯片,所述硅芯片包括:
(a)多个GPU驱动管道核心;
(b)路由中心,部署在所述CPU总线上,用于在所述各GPU驱动管道核心之间分布来自所述CPU的图形数据流,并随后将来自所述各管道核心的渲染结果(帧缓冲)收集至所述合成单元,
其中所述数据被分布的方法由所述控制单元指示,并依赖于当前并行化模式;
合成单元,用于根据所述正在进行的并行化模式重新合成所述各个部分帧缓冲;
控制单元,用于在任何时间根据所选的并行化模式控制所述图形处理和显示系统的配置和功能处理;
处理元件(PE),具有内部和外部存储器;
剖析功能单元,用于将基准数据递交给所述各多管道驱动器;以及
显示器接口,用于运行单个或多个显示器屏幕。
23.如权利要求22所述的计算机系统,其特征在于,所述图形数据流在所述控制单元的控制下并根据当前并行化模式被分布在所述各GPU驱动管道核心之间。
24.如权利要求22所述的计算机系统,其特征在于,所述硅芯片具有各自包含使用一个或多个并行化模式支持图像处理的并行化的图形处理单元(GPU)的多个GPU驱动管道核心,并且适于与计算系统接口,所述计算系统具有用于在至少一个计算机屏幕上显示图像的装置并且支持(i)用于发布图形命令的一个或多个软件应用,(ii)用于存储用以实现所述图形命令的一个或多个图形库(状态机),(iii)用于允许所述各GPU驱动管道核心与所述图形库交互的多管道驱动器。
25.如权利要求24所述的计算机系统,其特征在于,所述多管道驱动器包括:
(1)GPU驱动器单元,用于执行与和所述计算系统的操作系统(OS)、以及图形库的交互相关联的一般化GPU驱动器的功能;
(2)分布式图形功能控制模块,用于执行与根据并行化策略管理执行不同的并行化模式相关联的功能;
(3)状态监视驱动器模块,用于连续地分析包括状态命令的所有传入命令,将某些状态命令和部分数据传送至所述所有GPU驱动管道核心以保持跨所述各GPU驱动图形管道核心的有效状态;
(4)应用剖析和分析驱动器模块,用于对所述计算系统中的应用参数执行实时连续监视以标识所述图形系统内可能引起数据瓶颈的问题区,其中所述应用剖析和分析驱动模块使用来自以下的输入(i)所述多个GPU驱动管道核心的寄存器、(ii)所述控制单元的寄存器,以及图形API命令,以及
(5)并行性策略管理驱动器模块,用于使用所述应用剖析和分析驱动器模块的结果在每帧的基础上决定所述各GPU驱动管道核心的并行化模式,并且使这些决定由MP-SOC的控制单元来实行。
26.如权利要求22所述的计算机系统,其特征在于,还包括高速缓冲存储器,用于服务于所述处理元件,并用于高速缓冲为所述各GPU驱动管道核心共有的图形数据。
27.如权利要求22所述的计算机系统,其特征在于,所述图形数据从纹理和顶点对象当中选择。
28.如权利要求22所述的计算机系统,其特征在于,所述基准参数包括从存储器速度、按字节计的存储器使用量、渲染的总像素数、进入渲染的几何数据、帧速率、每个管道核心的工作负荷、图形管道之间的负荷平衡、传输的数据量、纹理计数、以及深度复杂度当中选择的数据。
29.如权利要求22所述的计算机系统,其特征在于,所述图形库从OpenGL和DirectX当中选择。
30.如权利要求22所述的计算机系统,其特征在于,所述GPU驱动管道核心的数目没有架构限制。
31.如权利要求22所述的计算机系统,其特征在于,所述各GPU驱动管道核心以不同的并行化模式组织以解决性能瓶颈。
32.如权利要求22所述的计算机系统,其特征在于,所述并行化模式包括对象分割模式、图像分割模式以及时间分割模式。
33.一种包含具有无限制图形并行性的多个图形核心、避开了单GPU系统固有的汇集瓶颈的图形处理和显示系统。
34.一种确保最佳图形性能、消除了受限的GPU间通信带宽、机械复杂度(尺寸、功率、和发热)、组件冗余、以及高成本等多芯片系统的不足的图形处理和显示系统。
35.一种图形处理和显示系统,所述系统通过在单硅芯片中并行化多个图形核心而具有增强的图形处理和显示能力。
36.一种图形处理和显示系统,所述系统在具有不受限数目的多个图形核心的硅芯片上实现。
37.一种图形处理和显示系统,所述系统在利用多个图形核心群集的硅芯片上实现。
38.一种图形处理和显示系统,所述系统在具有多个图形核心或管道(即,多管道芯片上系统,或MP-SOC)并提供架构灵活性以实现先进的并行图形显示性能的硅芯片上实现。
39.一种图形处理和显示系统,所述系统在具有多个图形核心、并在其几何和像素处理子系统两者内均自适应地支持不同并行模式的硅芯片上实现。
40.一种图形处理和显示系统,所述系统在具有多个GPU核心、并提供针对高度先进的图形处理和显示性能的自适应性的硅芯片上实现。
41.一种图形处理和显示系统及方法,其中顶点(即,3D多边形几何)处理和片段处理的图形管道瓶颈被透明而巧妙地解决。
42.一种用于巧妙分解数据和图形命令、保持图形库的基本特征作为状态机并紧密遵循图形标准的方法。
43.一种视频图形卡,所述视频图形卡支持在具有多个图形核心并提供架构灵活性以实现最佳的并行性能的硅芯片上实现的图形处理和显示系统。
44.一种具有拟真图形处理和显示能力的计算系统,所述计算系统采用包含具有多个图形核心并提供架构灵活性以实现最佳并行性能的硅芯片的图形卡。
45.一种计算系统,所述计算系统具有包括使用个人计算设备的视频游戏、虚拟现实、科学可视化、以及需要或要求拟真图形显示能力的其它交互应用在内的应用所需的拟真图形处理和显示性能。
CN200680002976A 2005-01-25 2006-01-25 在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统 Pending CN101849227A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US64714605P 2005-01-25 2005-01-25
PCT/IB2006/001529 WO2006117683A2 (en) 2005-01-25 2006-01-25 Graphics processing and display system employing multiple graphics cores on a silicon chip of monolithic construction
US11/340,402 US7812844B2 (en) 2004-01-28 2006-01-25 PC-based computing system employing a silicon chip having a routing unit and a control unit for parallelizing multiple GPU-driven pipeline cores according to the object division mode of parallel operation during the running of a graphics application

Publications (1)

Publication Number Publication Date
CN101849227A true CN101849227A (zh) 2010-09-29

Family

ID=37108069

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200680002976A Pending CN101849227A (zh) 2005-01-25 2006-01-25 在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统

Country Status (6)

Country Link
US (19) US7812844B2 (zh)
EP (1) EP1846834A2 (zh)
JP (1) JP2008538620A (zh)
CN (1) CN101849227A (zh)
CA (1) CA2595085A1 (zh)
WO (1) WO2006117683A2 (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101303771B (zh) * 2007-05-11 2012-07-18 汤姆逊许可公司 借助于一组显示命令来呈现图像帧的渲染器
CN103608777A (zh) * 2011-06-20 2014-02-26 高通股份有限公司 图形处理单元中的存储器共享
CN109408456A (zh) * 2018-12-07 2019-03-01 中国地质大学(武汉) 一种基于s905d芯片与stm32芯片协同工作硬件电路
CN110335190A (zh) * 2019-06-20 2019-10-15 合肥芯碁微电子装备有限公司 基于cuda的直写式光刻机数据拓展方法
CN110895788A (zh) * 2019-11-29 2020-03-20 上海众链科技有限公司 一种增强图形处理能力的系统及外接设备
CN111491059A (zh) * 2020-04-09 2020-08-04 上海众链科技有限公司 图像渲染增强系统及方法
CN112419147A (zh) * 2020-04-14 2021-02-26 上海哔哩哔哩科技有限公司 图像渲染方法及装置
WO2021136433A1 (zh) * 2019-12-31 2021-07-08 华为技术有限公司 一种电子设备及计算机系统
WO2022193774A1 (zh) * 2021-03-19 2022-09-22 上海寒武纪信息科技有限公司 用于芯片的封装框架,加工方法及相关产品
CN115100022A (zh) * 2022-08-23 2022-09-23 芯动微电子科技(珠海)有限公司 图形处理方法及系统

Families Citing this family (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1890660A (zh) 2003-11-19 2007-01-03 路西德信息技术有限公司 Pc总线上的多重三维图形管线的方法及系统
US9363481B2 (en) * 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
US7423651B2 (en) * 2005-10-13 2008-09-09 V. R. Technology Co., Ltd. Single-chip multi-output graphic system
US7483032B1 (en) * 2005-10-18 2009-01-27 Nvidia Corporation Zero frame buffer
US7705850B1 (en) * 2005-11-08 2010-04-27 Nvidia Corporation Computer system having increased PCIe bandwidth
US7948497B2 (en) * 2005-11-29 2011-05-24 Via Technologies, Inc. Chipset and related method of processing graphic signals
US7546574B2 (en) * 2005-12-02 2009-06-09 Gauda, Inc. Optical proximity correction on hardware or software platforms with graphical processing units
US7685371B1 (en) * 2006-04-19 2010-03-23 Nvidia Corporation Hierarchical flush barrier mechanism with deadlock avoidance
US7659901B2 (en) * 2006-07-24 2010-02-09 Microsoft Corporation Application program interface for programmable graphics pipeline
US7969443B2 (en) * 2006-08-01 2011-06-28 Nvidia Corporation System and method for dynamically processing content being communicated over a network for display purposes
US7961192B2 (en) * 2006-08-01 2011-06-14 Nvidia Corporation Multi-graphics processor system and method for processing content communicated over a network for display purposes
US9275430B2 (en) 2006-12-31 2016-03-01 Lucidlogix Technologies, Ltd. Computing system employing a multi-GPU graphics processing and display subsystem supporting single-GPU non-parallel (multi-threading) and multi-GPU application-division parallel modes of graphics processing operation
US11714476B2 (en) 2006-12-31 2023-08-01 Google Llc Apparatus and method for power management of a computing system
US7940261B2 (en) * 2007-01-10 2011-05-10 Qualcomm Incorporated Automatic load balancing of a 3D graphics pipeline
GB0715000D0 (en) * 2007-07-31 2007-09-12 Symbian Software Ltd Command synchronisation
US7982742B2 (en) * 2007-09-06 2011-07-19 Dell Products L.P. System and method for an information handling system having an external graphics processor system for operating multiple monitors
GB0723536D0 (en) * 2007-11-30 2008-01-09 Imagination Tech Ltd Multi-core geometry processing in a tile based rendering system
KR100980449B1 (ko) * 2007-12-17 2010-09-07 한국전자통신연구원 병렬 전역조명 렌더링 방법 및 시스템
KR100969322B1 (ko) 2008-01-10 2010-07-09 엘지전자 주식회사 멀티 그래픽 컨트롤러를 구비한 데이터 처리 장치 및 이를이용한 데이터 처리 방법
US8477143B2 (en) 2008-03-04 2013-07-02 Apple Inc. Buffers for display acceleration
US8289333B2 (en) * 2008-03-04 2012-10-16 Apple Inc. Multi-context graphics processing
WO2009118731A2 (en) 2008-03-27 2009-10-01 Rocketick Technologies Ltd Design simulation using parallel processors
US8319782B2 (en) * 2008-07-08 2012-11-27 Dell Products, Lp Systems and methods for providing scalable parallel graphics rendering capability for information handling systems
KR101607495B1 (ko) * 2008-07-10 2016-03-30 로케틱 테크놀로지즈 리미티드 디펜던시 문제의 효율적인 병렬 계산
US9032377B2 (en) 2008-07-10 2015-05-12 Rocketick Technologies Ltd. Efficient parallel computation of dependency problems
US7930519B2 (en) * 2008-12-17 2011-04-19 Advanced Micro Devices, Inc. Processor with coprocessor interfacing functional unit for forwarding result from coprocessor to retirement unit
US8248535B2 (en) * 2009-02-18 2012-08-21 Csr Technology Inc. System and method for a versatile display pipeline architecture for an LCD display panel
US9336028B2 (en) * 2009-06-25 2016-05-10 Apple Inc. Virtual graphics device driver
US9142057B2 (en) 2009-09-03 2015-09-22 Advanced Micro Devices, Inc. Processing unit with a plurality of shader engines
US8400458B2 (en) * 2009-09-09 2013-03-19 Hewlett-Packard Development Company, L.P. Method and system for blocking data on a GPU
US20110212761A1 (en) * 2010-02-26 2011-09-01 Igt Gaming machine processor
US8798386B2 (en) * 2010-04-22 2014-08-05 Broadcom Corporation Method and system for processing image data on a per tile basis in an image sensor pipeline
US20120159090A1 (en) * 2010-12-16 2012-06-21 Microsoft Corporation Scalable multimedia computer system architecture with qos guarantees
US20120218277A1 (en) * 2011-02-25 2012-08-30 ST-Ericcson SA Display list mechanism and scalable display engine structures
US8786619B2 (en) 2011-02-25 2014-07-22 Adobe Systems Incorporated Parallelized definition and display of content in a scripting environment
US9128748B2 (en) 2011-04-12 2015-09-08 Rocketick Technologies Ltd. Parallel simulation using multiple co-simulators
US9886899B2 (en) * 2011-05-17 2018-02-06 Ignis Innovation Inc. Pixel Circuits for AMOLED displays
US10013731B2 (en) * 2011-06-30 2018-07-03 Intel Corporation Maximizing parallel processing in graphics processors
JP5361962B2 (ja) * 2011-08-25 2013-12-04 株式会社東芝 グラフィクスプロセッシングユニットおよび情報処理装置
US10217270B2 (en) 2011-11-18 2019-02-26 Intel Corporation Scalable geometry processing within a checkerboard multi-GPU configuration
US9619855B2 (en) 2011-11-18 2017-04-11 Intel Corporation Scalable geometry processing within a checkerboard multi-GPU configuration
WO2014084419A1 (ko) * 2012-11-29 2014-06-05 Lee Eun-Suk 전원이 오프된 상태에서 설정된 컨텐츠를 화면을 통해 제공하는 것이 가능한 컴퓨터
CN103064657B (zh) * 2012-12-26 2016-09-28 深圳中微电科技有限公司 单个处理器上实现多应用并行处理的方法及装置
US9348602B1 (en) 2013-09-03 2016-05-24 Amazon Technologies, Inc. Resource allocation for staged execution pipelining
KR102244620B1 (ko) 2014-09-05 2021-04-26 삼성전자 주식회사 렌더링 수준 제어 방법 및 장치
WO2016074166A1 (en) * 2014-11-12 2016-05-19 Intel Corporation Live migration of virtual machines from/to host computers with graphics virtualization
US20180081847A1 (en) * 2015-03-27 2018-03-22 Intel Corporation Dynamic configuration of input/output controller access lanes
US9622182B2 (en) * 2015-04-17 2017-04-11 Suunto Oy Embedded computing device
US10796397B2 (en) * 2015-06-12 2020-10-06 Intel Corporation Facilitating dynamic runtime transformation of graphics processing commands for improved graphics performance at computing devices
US11295506B2 (en) 2015-09-16 2022-04-05 Tmrw Foundation Ip S. À R.L. Chip with game engine and ray trace engine
JP6766495B2 (ja) * 2016-07-21 2020-10-14 富士通株式会社 プログラム、コンピュータ及び情報処理方法
KR20180038793A (ko) * 2016-10-07 2018-04-17 삼성전자주식회사 영상 데이터 처리 방법 및 장치
KR102644276B1 (ko) * 2016-10-10 2024-03-06 삼성전자주식회사 그래픽 처리 장치 및 방법
CN106648547A (zh) * 2016-12-12 2017-05-10 中国航空工业集团公司西安航空计算技术研究所 一种gpu图形状态参数的分布式统一管理方法
JP6550418B2 (ja) * 2017-04-03 2019-07-24 エンパイア テクノロジー ディベロップメント エルエルシー オンラインゲーム
US10872394B2 (en) * 2017-04-27 2020-12-22 Daegu Gyeongbuk Institute Of Science And Technology Frequent pattern mining method and apparatus
EP3676710A4 (en) * 2017-08-31 2021-07-28 Rail Vision Ltd SYSTEM AND METHOD FOR IMPROVING THE FLOW RATE IN MANY CALCULATIONS
US11301951B2 (en) * 2018-03-15 2022-04-12 The Calany Holding S. À R.L. Game engine and artificial intelligence engine on a chip
CN112005218B (zh) * 2018-04-28 2024-01-30 华为技术有限公司 一种图像处理器的功率分配的方法、装置及系统
CN110032597B (zh) * 2018-11-30 2023-04-11 创新先进技术有限公司 应用程序操作行为的可视化处理方法及装置
US11625884B2 (en) 2019-06-18 2023-04-11 The Calany Holding S. À R.L. Systems, methods and apparatus for implementing tracked data communications on a chip
US11475601B2 (en) * 2019-10-21 2022-10-18 Google Llc Image decoding during bitstream interruptions
CN111221771B (zh) * 2019-11-18 2023-04-28 天津津航计算技术研究所 一种适用于vpx架构的gpu刀片装置
CN111045623B (zh) * 2019-11-21 2023-06-13 中国航空工业集团公司西安航空计算技术研究所 一种多gpu拼接环境下图形命令的处理方法
US11263718B2 (en) 2020-02-03 2022-03-01 Sony Interactive Entertainment Inc. System and method for efficient multi-GPU rendering of geometry by pretesting against in interleaved screen regions before rendering
US11170461B2 (en) 2020-02-03 2021-11-09 Sony Interactive Entertainment Inc. System and method for efficient multi-GPU rendering of geometry by performing geometry analysis while rendering
US11508110B2 (en) 2020-02-03 2022-11-22 Sony Interactive Entertainment Inc. System and method for efficient multi-GPU rendering of geometry by performing geometry analysis before rendering
US11514549B2 (en) 2020-02-03 2022-11-29 Sony Interactive Entertainment Inc. System and method for efficient multi-GPU rendering of geometry by generating information in one rendering phase for use in another rendering phase
US11321800B2 (en) * 2020-02-03 2022-05-03 Sony Interactive Entertainment Inc. System and method for efficient multi-GPU rendering of geometry by region testing while rendering
US11080814B1 (en) 2020-02-03 2021-08-03 Sony Interactive Entertainment Inc. System and method for efficient multi-GPU rendering of geometry by pretesting against screen regions using prior frame information
US11120522B2 (en) * 2020-02-03 2021-09-14 Sony Interactive Entertainment Inc. System and method for efficient multi-GPU rendering of geometry by subdividing geometry
US11315209B2 (en) * 2020-05-08 2022-04-26 Black Sesame Technolgies Inc. In-line and offline staggered bandwidth efficient image signal processing
US11662798B2 (en) 2021-07-30 2023-05-30 Advanced Micro Devices, Inc. Technique for extended idle duration for display to improve power consumption
KR20240032993A (ko) * 2021-08-11 2024-03-12 애플 인크. 그래픽스 프로세서들에 대한 로직 슬롯 대 하드웨어 슬롯 맵핑
CN113849448A (zh) * 2021-09-28 2021-12-28 联想(北京)有限公司 一种电子设备

Family Cites Families (226)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07104923B2 (ja) 1988-12-28 1995-11-13 工業技術院長 並列画像表示処理方法
US5392391A (en) * 1991-10-18 1995-02-21 Lsi Logic Corporation High performance graphics applications controller
CA2073516A1 (en) 1991-11-27 1993-05-28 Peter Michael Kogge Dynamic multi-mode parallel processor array architecture computer system
JPH07325934A (ja) 1992-07-10 1995-12-12 Walt Disney Co:The 仮想世界に向上したグラフィックスを提供する方法および装置
JP3199205B2 (ja) 1993-11-19 2001-08-13 株式会社日立製作所 並列演算装置
US5495419A (en) 1994-04-19 1996-02-27 Lsi Logic Corporation Integrated circuit physical design automation system utilizing optimization process decomposition and parallel processing
US5734874A (en) * 1994-04-29 1998-03-31 Sun Microsystems, Inc. Central processing unit with integrated graphics functions
EP0693737A3 (en) 1994-07-21 1997-01-08 Ibm Method and apparatus for managing tasks in a multiprocessor system
US5745762A (en) 1994-12-15 1998-04-28 International Business Machines Corporation Advanced graphics driver architecture supporting multiple system emulations
US5687357A (en) 1995-04-14 1997-11-11 Nvidia Corporation Register array for utilizing burst mode transfer on local bus
US5754866A (en) 1995-05-08 1998-05-19 Nvidia Corporation Delayed interrupts with a FIFO in an improved input/output architecture
US5909595A (en) 1995-05-15 1999-06-01 Nvidia Corporation Method of controlling I/O routing by setting connecting context for utilizing I/O processing elements within a computer system to produce multimedia effects
US5623692A (en) 1995-05-15 1997-04-22 Nvidia Corporation Architecture for providing input/output operations in a computer system
US5758182A (en) 1995-05-15 1998-05-26 Nvidia Corporation DMA controller translates virtual I/O device address received directly from application program command to physical i/o device address of I/O device on device bus
US5794016A (en) 1995-12-11 1998-08-11 Dynamic Pictures, Inc. Parallel-processor graphics architecture
US5838756A (en) * 1996-01-08 1998-11-17 Kabushiki Kaisha Toshiba Radiation computed tomography apparatus
KR100269106B1 (ko) 1996-03-21 2000-11-01 윤종용 멀티프로세서 그래픽스 시스템
WO1998007266A1 (en) 1996-08-14 1998-02-19 Northern Telecom Limited Internet-based telephone call manager
US5797016A (en) * 1996-10-29 1998-08-18 Cheyenne Software Inc. Regeneration agent for back-up software
US5977997A (en) * 1997-03-06 1999-11-02 Lsi Logic Corporation Single chip computer having integrated MPEG and graphical processors
US6118462A (en) 1997-07-01 2000-09-12 Memtrax Llc Computer system controller having internal memory and external memory control
US6169553B1 (en) 1997-07-02 2001-01-02 Ati Technologies, Inc. Method and apparatus for rendering a three-dimensional scene having shadowing
US6201545B1 (en) 1997-09-23 2001-03-13 Ati Technologies, Inc. Method and apparatus for generating sub pixel masks in a three dimensional graphic processing system
US6856320B1 (en) 1997-11-25 2005-02-15 Nvidia U.S. Investment Company Demand-based memory system for graphics applications
US6337686B2 (en) 1998-01-07 2002-01-08 Ati Technologies Inc. Method and apparatus for line anti-aliasing
US6496187B1 (en) 1998-02-17 2002-12-17 Sun Microsystems, Inc. Graphics system configured to perform parallel sample to pixel calculation
US6473089B1 (en) 1998-03-02 2002-10-29 Ati Technologies, Inc. Method and apparatus for a video graphics circuit having parallel pixel processing
US6259460B1 (en) 1998-03-26 2001-07-10 Silicon Graphics, Inc. Method for efficient handling of texture cache misses by recirculation
US7038692B1 (en) 1998-04-07 2006-05-02 Nvidia Corporation Method and apparatus for providing a vertex cache
JP3497988B2 (ja) * 1998-04-15 2004-02-16 株式会社ルネサステクノロジ 図形処理装置及び図形処理方法
US6092124A (en) 1998-04-17 2000-07-18 Nvidia Corporation Method and apparatus for accelerating the rendering of images
US6184908B1 (en) 1998-04-27 2001-02-06 Ati Technologies, Inc. Method and apparatus for co-processing video graphics data
US6212617B1 (en) 1998-05-13 2001-04-03 Microsoft Corporation Parallel processing method and system using a lazy parallel data type to reduce inter-processor communication
US6477687B1 (en) 1998-06-01 2002-11-05 Nvidia U.S. Investment Company Method of embedding RAMS and other macrocells in the core of an integrated circuit chip
US6646639B1 (en) 1998-07-22 2003-11-11 Nvidia Corporation Modified method and apparatus for improved occlusion culling in graphics systems
US6636215B1 (en) 1998-07-22 2003-10-21 Nvidia Corporation Hardware-assisted z-pyramid creation for host-based occlusion culling
US7023437B1 (en) 1998-07-22 2006-04-04 Nvidia Corporation System and method for accelerating graphics processing using a post-geometry data stream during multiple-pass rendering
US7068272B1 (en) 2000-05-31 2006-06-27 Nvidia Corporation System, method and article of manufacture for Z-value and stencil culling prior to rendering in a computer graphics processing pipeline
US6415345B1 (en) 1998-08-03 2002-07-02 Ati Technologies Bus mastering interface control system for transferring multistream data over a host bus
US6191800B1 (en) 1998-08-11 2001-02-20 International Business Machines Corporation Dynamic balancing of graphics workloads using a tiling strategy
AU5688199A (en) 1998-08-20 2000-03-14 Raycer, Inc. System, apparatus and method for spatially sorting image data in a three-dimensional graphics pipeline
US6492987B1 (en) 1998-08-27 2002-12-10 Ati Technologies, Inc. Method and apparatus for processing object elements that are being rendered
US6188412B1 (en) 1998-08-28 2001-02-13 Ati Technologies, Inc. Method and apparatus for performing setup operations in a video graphics system
US6591347B2 (en) * 1998-10-09 2003-07-08 National Semiconductor Corporation Dynamic replacement technique in a shared cache
US6292200B1 (en) 1998-10-23 2001-09-18 Silicon Graphics, Inc. Apparatus and method for utilizing multiple rendering pipes for a single 3-D display
US6731407B1 (en) 1998-11-02 2004-05-04 Seiko Epson Corporation Image processing method and device
US6323866B1 (en) * 1998-11-25 2001-11-27 Silicon Integrated Systems Corp. Integrated circuit device having a core controller, a bus bridge, a graphical controller and a unified memory control unit built therein for use in a computer system
US6362825B1 (en) 1999-01-19 2002-03-26 Hewlett-Packard Company Real-time combination of adjacent identical primitive data sets in a graphics call sequence
US6477683B1 (en) 1999-02-05 2002-11-05 Tensilica, Inc. Automated processor generation system for designing a configurable processor and method for the same
US6753878B1 (en) 1999-03-08 2004-06-22 Hewlett-Packard Development Company, L.P. Parallel pipelined merge engines
JP3169933B2 (ja) 1999-03-16 2001-05-28 四国日本電気ソフトウェア株式会社 並列描画装置
US6535209B1 (en) 1999-03-17 2003-03-18 Nvidia Us Investments Co. Data stream splitting and storage in graphics data processing
US6288418B1 (en) 1999-03-19 2001-09-11 Nvidia Corporation Multiuse input/output connector arrangement for graphics accelerator integrated circuit
US6333744B1 (en) 1999-03-22 2001-12-25 Nvidia Corporation Graphics pipeline including combiner stages
US6181352B1 (en) 1999-03-22 2001-01-30 Nvidia Corporation Graphics pipeline selectively providing multiple pixels or multiple textures
US6577320B1 (en) 1999-03-22 2003-06-10 Nvidia Corporation Method and apparatus for processing multiple types of pixel component representations including processes of premultiplication, postmultiplication, and colorkeying/chromakeying
DE19917092A1 (de) 1999-04-15 2000-10-26 Sp3D Chip Design Gmbh Verfahren zur Rasterisierung eines Graphikgrundelements
US6442656B1 (en) 1999-08-18 2002-08-27 Ati Technologies Srl Method and apparatus for interfacing memory with a bus
US6578068B1 (en) 1999-08-31 2003-06-10 Accenture Llp Load balancer in environment services patterns
US6352479B1 (en) 1999-08-31 2002-03-05 Nvidia U.S. Investment Company Interactive gaming server and online community forum
US6657635B1 (en) 1999-09-03 2003-12-02 Nvidia Corporation Binning flush in graphics data processing
US7002577B2 (en) 1999-12-06 2006-02-21 Nvidia Corporation Clipping system and method for a single graphics semiconductor platform
US6870540B1 (en) 1999-12-06 2005-03-22 Nvidia Corporation System, method and computer program product for a programmable pixel processing model with instruction set
US6844880B1 (en) 1999-12-06 2005-01-18 Nvidia Corporation System, method and computer program product for an improved programmable vertex processing model with instruction set
US6452595B1 (en) 1999-12-06 2002-09-17 Nvidia Corporation Integrated graphics processing unit with antialiasing
US6573900B1 (en) 1999-12-06 2003-06-03 Nvidia Corporation Method, apparatus and article of manufacture for a sequencer in a transform/lighting module capable of processing multiple independent execution threads
US6417851B1 (en) 1999-12-06 2002-07-09 Nvidia Corporation Method and apparatus for lighting module in a graphics processor
US6353439B1 (en) 1999-12-06 2002-03-05 Nvidia Corporation System, method and computer program product for a blending operation in a transform module of a computer graphics pipeline
US6198488B1 (en) 1999-12-06 2001-03-06 Nvidia Transform, lighting and rasterization system embodied on a single semiconductor platform
US6473086B1 (en) 1999-12-09 2002-10-29 Ati International Srl Method and apparatus for graphics processing using parallel graphics processors
US6557065B1 (en) 1999-12-20 2003-04-29 Intel Corporation CPU expandability bus
US6760031B1 (en) 1999-12-31 2004-07-06 Intel Corporation Upgrading an integrated graphics subsystem
US6864984B2 (en) 2000-03-16 2005-03-08 Fuji Photo Film Co., Ltd. Measuring method and apparatus using attenuation in total reflection
US6975319B1 (en) 2000-03-24 2005-12-13 Nvidia Corporation System, method and article of manufacture for calculating a level of detail (LOD) during computer graphics processing
US6831652B1 (en) 2000-03-24 2004-12-14 Ati International, Srl Method and system for storing graphics data
US20030132291A1 (en) 2002-01-11 2003-07-17 Metrologic Instruments, Inc. Point of sale (POS) station having bar code reading system with integrated internet-enabled customer-kiosk terminal
US6741243B2 (en) 2000-05-01 2004-05-25 Broadcom Corporation Method and system for reducing overflows in a computer graphics system
US6725457B1 (en) 2000-05-17 2004-04-20 Nvidia Corporation Semaphore enhancement to improve system performance
US6633296B1 (en) 2000-05-26 2003-10-14 Ati International Srl Apparatus for providing data to a plurality of graphics processors and method thereof
US6728820B1 (en) 2000-05-26 2004-04-27 Ati International Srl Method of configuring, controlling, and accessing a bridge and apparatus therefor
US6789154B1 (en) 2000-05-26 2004-09-07 Ati International, Srl Apparatus and method for transmitting data
US6670958B1 (en) 2000-05-26 2003-12-30 Ati International, Srl Method and apparatus for routing data to multiple graphics devices
US6662257B1 (en) 2000-05-26 2003-12-09 Ati International Srl Multiple device bridge apparatus and method thereof
US6690372B2 (en) 2000-05-31 2004-02-10 Nvidia Corporation System, method and article of manufacture for shadow mapping
US6724394B1 (en) 2000-05-31 2004-04-20 Nvidia Corporation Programmable pixel shading architecture
US6593923B1 (en) 2000-05-31 2003-07-15 Nvidia Corporation System, method and article of manufacture for shadow mapping
US6532013B1 (en) 2000-05-31 2003-03-11 Nvidia Corporation System, method and article of manufacture for pixel shaders for programmable shading
US6664963B1 (en) 2000-05-31 2003-12-16 Nvidia Corporation System, method and computer program product for programmable shading using pixel shaders
JP2002008060A (ja) 2000-06-23 2002-01-11 Hitachi Ltd データ処理方法、記録媒体及びデータ処理装置
US6801202B2 (en) 2000-06-29 2004-10-05 Sun Microsystems, Inc. Graphics system configured to parallel-process graphics data using multiple pipelines
US7405734B2 (en) 2000-07-18 2008-07-29 Silicon Graphics, Inc. Method and system for presenting three-dimensional computer graphics images using multiple graphics processing units
US6959110B1 (en) 2000-08-17 2005-10-25 Nvidia Corporation Multi-mode texture compression algorithm
US7116331B1 (en) 2000-08-23 2006-10-03 Intel Corporation Memory controller hub interface
US6842180B1 (en) 2000-09-20 2005-01-11 Intel Corporation Opportunistic sharing of graphics resources to enhance CPU performance in an integrated microprocessor
US6885378B1 (en) * 2000-09-28 2005-04-26 Intel Corporation Method and apparatus for the implementation of full-scene anti-aliasing supersampling
US6502173B1 (en) 2000-09-29 2002-12-31 Ati Technologies, Inc. System for accessing memory and method therefore
US6532525B1 (en) 2000-09-29 2003-03-11 Ati Technologies, Inc. Method and apparatus for accessing memory
US6828980B1 (en) 2000-10-02 2004-12-07 Nvidia Corporation System, method and computer program product for z-texture mapping
US6731298B1 (en) 2000-10-02 2004-05-04 Nvidia Corporation System, method and article of manufacture for z-texture mapping
JP3580789B2 (ja) 2000-10-10 2004-10-27 株式会社ソニー・コンピュータエンタテインメント データ通信システム及び方法、コンピュータプログラム、記録媒体
US6961057B1 (en) 2000-10-12 2005-11-01 Nvidia Corporation Method and apparatus for managing and accessing depth data in a computer graphics system
US6362997B1 (en) 2000-10-16 2002-03-26 Nvidia Memory system for use on a circuit board in which the number of loads are minimized
US6636212B1 (en) 2000-11-14 2003-10-21 Nvidia Corporation Method and apparatus for determining visibility of groups of pixels
US6778181B1 (en) 2000-12-07 2004-08-17 Nvidia Corporation Graphics processing system having a virtual texturing array
US7027972B1 (en) 2001-01-24 2006-04-11 Ati Technologies, Inc. System for collecting and analyzing graphics data and method thereof
US7358974B2 (en) 2001-01-29 2008-04-15 Silicon Graphics, Inc. Method and system for minimizing an amount of data needed to test data against subarea boundaries in spatially composited digital video
US6888580B2 (en) 2001-02-27 2005-05-03 Ati Technologies Inc. Integrated single and dual television tuner having improved fine tuning
US7130316B2 (en) 2001-04-11 2006-10-31 Ati Technologies, Inc. System for frame based audio synchronization and method thereof
US6542971B1 (en) 2001-04-23 2003-04-01 Nvidia Corporation Memory access system and method employing an auxiliary buffer
US6664960B2 (en) 2001-05-10 2003-12-16 Ati Technologies Inc. Apparatus for processing non-planar video graphics primitives and associated method of operation
US6700583B2 (en) 2001-05-14 2004-03-02 Ati Technologies, Inc. Configurable buffer for multipass applications
WO2002101497A2 (en) 2001-06-08 2002-12-19 Nvidia Corporation System, method and computer program product for programmable fragment processing in a graphics pipeline
US6894687B1 (en) 2001-06-08 2005-05-17 Nvidia Corporation System, method and computer program product for vertex attribute aliasing in a graphics pipeline
US6697064B1 (en) 2001-06-08 2004-02-24 Nvidia Corporation System, method and computer program product for matrix tracking during vertex processing in a graphics pipeline
JP2003030641A (ja) 2001-07-19 2003-01-31 Nec System Technologies Ltd 描画装置とその並列描画方法、及び並列描画プログラム
US6828987B2 (en) 2001-08-07 2004-12-07 Ati Technologies, Inc. Method and apparatus for processing video and graphics data
US6778189B1 (en) 2001-08-24 2004-08-17 Nvidia Corporation Two-sided stencil testing system and method
US6744433B1 (en) 2001-08-31 2004-06-01 Nvidia Corporation System and method for using and collecting information from a plurality of depth layers
US6704025B1 (en) 2001-08-31 2004-03-09 Nvidia Corporation System and method for dual-depth shadow-mapping
US6989840B1 (en) 2001-08-31 2006-01-24 Nvidia Corporation Order-independent transparency rendering system and method
US6947047B1 (en) 2001-09-20 2005-09-20 Nvidia Corporation Method and system for programmable pipelined graphics processing with branching instructions
US6938176B1 (en) 2001-10-05 2005-08-30 Nvidia Corporation Method and apparatus for power management of graphics processors and subsystems that allow the subsystems to respond to accesses when subsystems are idle
US6999076B2 (en) 2001-10-29 2006-02-14 Ati Technologies, Inc. System, method, and apparatus for early culling
US7091971B2 (en) 2001-10-29 2006-08-15 Ati Technologies, Inc. System, method, and apparatus for multi-level hierarchical Z buffering
US6677953B1 (en) 2001-11-08 2004-01-13 Nvidia Corporation Hardware viewport system and method for use in a graphics pipeline
US20030117971A1 (en) 2001-12-21 2003-06-26 Celoxica Ltd. System, method, and article of manufacture for profiling an executable hardware model using calls to profiling functions
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
US7012610B2 (en) 2002-01-04 2006-03-14 Ati Technologies, Inc. Portable device for providing dual display and method thereof
US6774895B1 (en) 2002-02-01 2004-08-10 Nvidia Corporation System and method for depth clamping in a hardware graphics pipeline
US6829689B1 (en) 2002-02-12 2004-12-07 Nvidia Corporation Method and system for memory access arbitration for minimizing read/write turnaround penalties
US6947865B1 (en) 2002-02-15 2005-09-20 Nvidia Corporation Method and system for dynamic power supply voltage adjustment for a semiconductor integrated circuit device
JP4079410B2 (ja) 2002-02-15 2008-04-23 株式会社バンダイナムコゲームス 画像生成システム、プログラム及び情報記憶媒体
US6933943B2 (en) 2002-02-27 2005-08-23 Hewlett-Packard Development Company, L.P. Distributed resource architecture and system
US6700580B2 (en) 2002-03-01 2004-03-02 Hewlett-Packard Development Company, L.P. System and method utilizing multiple pipelines to render graphical data
US6853380B2 (en) 2002-03-04 2005-02-08 Hewlett-Packard Development Company, L.P. Graphical display system and method
US20030171907A1 (en) 2002-03-06 2003-09-11 Shay Gal-On Methods and Apparatus for Optimizing Applications on Configurable Processors
US6919896B2 (en) * 2002-03-11 2005-07-19 Sony Computer Entertainment Inc. System and method of optimizing graphics processing
US7009605B2 (en) 2002-03-20 2006-03-07 Nvidia Corporation System, method and computer program product for generating a shader program
JP4193990B2 (ja) * 2002-03-22 2008-12-10 ディーリング,マイケル,エフ. スケーラブルな高性能3dグラフィックス
US20030212735A1 (en) 2002-05-13 2003-11-13 Nvidia Corporation Method and apparatus for providing an integrated network of processors
US20040153778A1 (en) 2002-06-12 2004-08-05 Ati Technologies, Inc. Method, system and software for configuring a graphics processing communication mode
US6980209B1 (en) 2002-06-14 2005-12-27 Nvidia Corporation Method and system for scalable, dataflow-based, programmable processing of graphics data
US6812927B1 (en) 2002-06-18 2004-11-02 Nvidia Corporation System and method for avoiding depth clears using a stencil buffer
US6876362B1 (en) 2002-07-10 2005-04-05 Nvidia Corporation Omnidirectional shadow texture mapping
US6797998B2 (en) 2002-07-16 2004-09-28 Nvidia Corporation Multi-configuration GPU interface device
US6825843B2 (en) 2002-07-18 2004-11-30 Nvidia Corporation Method and apparatus for loop and branch instructions in a programmable graphics pipeline
US6954204B2 (en) 2002-07-18 2005-10-11 Nvidia Corporation Programmable graphics system and method using flexible, high-precision data formats
US6864893B2 (en) 2002-07-19 2005-03-08 Nvidia Corporation Method and apparatus for modifying depth values using pixel programs
US6952206B1 (en) 2002-08-12 2005-10-04 Nvidia Corporation Graphics application program interface system and method for accelerating graphics processing
US7112884B2 (en) 2002-08-23 2006-09-26 Ati Technologies, Inc. Integrated circuit having memory disposed thereon and method of making thereof
US6779069B1 (en) 2002-09-04 2004-08-17 Nvidia Corporation Computer system with source-synchronous digital link
JP4467267B2 (ja) 2002-09-06 2010-05-26 株式会社ソニー・コンピュータエンタテインメント 画像処理方法、画像処理装置、および画像処理システム
US7061495B1 (en) * 2002-11-18 2006-06-13 Ati Technologies, Inc. Method and apparatus for rasterizer interpolation
US7633506B1 (en) * 2002-11-27 2009-12-15 Ati Technologies Ulc Parallel pipeline graphics system
US7324547B1 (en) 2002-12-13 2008-01-29 Nvidia Corporation Internet protocol (IP) router residing in a processor chipset
US6885376B2 (en) 2002-12-30 2005-04-26 Silicon Graphics, Inc. System, method, and computer program product for near-real time load balancing across multiple rendering pipelines
EP1590769A4 (en) 2003-01-28 2007-04-04 Lucid Information Technology Ltd METHOD AND SYSTEM FOR COMPOSING THREE-DIMENSIONAL GRAPHICS USING AN ASSOCIATIVE DECISION MECHANISM
US7145565B2 (en) 2003-02-27 2006-12-05 Nvidia Corporation Depth bounds testing
US6911983B2 (en) 2003-03-12 2005-06-28 Nvidia Corporation Double-buffering of pixel data using copy-on-write semantics
US7129909B1 (en) 2003-04-09 2006-10-31 Nvidia Corporation Method and system using compressed display mode list
US6900810B1 (en) 2003-04-10 2005-05-31 Nvidia Corporation User programmable geometry engine
US6940515B1 (en) 2003-04-10 2005-09-06 Nvidia Corporation User programmable primitive engine
US7120816B2 (en) 2003-04-17 2006-10-10 Nvidia Corporation Method for testing synchronization and connection status of a graphics processing unit module
US7483031B2 (en) 2003-04-17 2009-01-27 Nvidia Corporation Method for synchronizing graphics processing units
US7068278B1 (en) 2003-04-17 2006-06-27 Nvidia Corporation Synchronized graphics processing units
US7038678B2 (en) 2003-05-21 2006-05-02 Nvidia Corporation Dependent texture shadow antialiasing
US7415708B2 (en) 2003-06-26 2008-08-19 Intel Corporation Virtual machine management using processor state information
US7038685B1 (en) 2003-06-30 2006-05-02 Nvidia Corporation Programmable graphics processor for multithreaded execution of programs
US7119808B2 (en) 2003-07-15 2006-10-10 Alienware Labs Corp. Multiple parallel processor computer graphics system
US6995767B1 (en) 2003-07-31 2006-02-07 Nvidia Corporation Trilinear optimization for texture filtering
WO2005015504A1 (ja) * 2003-08-07 2005-02-17 Renesas Technology Corp. 画像処理用半導体プロセッサ
US7525547B1 (en) 2003-08-12 2009-04-28 Nvidia Corporation Programming multiple chips from a command buffer to process multiple images
US7015915B1 (en) 2003-08-12 2006-03-21 Nvidia Corporation Programming multiple chips from a command buffer
US6956579B1 (en) 2003-08-18 2005-10-18 Nvidia Corporation Private addressing in a multi-processor graphics processing system
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
US8250412B2 (en) 2003-09-26 2012-08-21 Ati Technologies Ulc Method and apparatus for monitoring and resetting a co-processor
US20050086040A1 (en) * 2003-10-02 2005-04-21 Curtis Davis System incorporating physics processing unit
US7782325B2 (en) * 2003-10-22 2010-08-24 Alienware Labs Corporation Motherboard for supporting multiple graphics cards
US8035646B2 (en) 2003-11-14 2011-10-11 Microsoft Corporation Systems and methods for downloading algorithmic elements to a coprocessor and corresponding techniques
US7221896B2 (en) * 2003-12-09 2007-05-22 Sharp Kabushiki Kaisha Fixing device for fixing an unfixed developing agent on a recording medium and image forming apparatus including the same
US7015914B1 (en) 2003-12-10 2006-03-21 Nvidia Corporation Multiple data buffers for processing graphics data
US7053901B2 (en) 2003-12-11 2006-05-30 Nvidia Corporation System and method for accelerating a special purpose processor
US7248261B1 (en) 2003-12-15 2007-07-24 Nvidia Corporation Method and apparatus to accelerate rendering of shadow effects for computer-generated images
JP3879002B2 (ja) 2003-12-26 2007-02-07 国立大学法人宇都宮大学 自己最適化演算装置
US6975325B2 (en) 2004-01-23 2005-12-13 Ati Technologies Inc. Method and apparatus for graphics processing using state and shader management
US7259606B2 (en) 2004-01-27 2007-08-21 Nvidia Corporation Data sampling clock edge placement training for high speed GPU-memory interface
US7483034B2 (en) 2004-02-25 2009-01-27 Siemens Medical Solutions Usa, Inc. System and method for GPU-based 3D nonrigid registration
US7289125B2 (en) 2004-02-27 2007-10-30 Nvidia Corporation Graphics device clustering with PCI-express
US7027062B2 (en) 2004-02-27 2006-04-11 Nvidia Corporation Register based queuing for texture requests
US7978194B2 (en) 2004-03-02 2011-07-12 Ati Technologies Ulc Method and apparatus for hierarchical Z buffering and stenciling
US20050195186A1 (en) 2004-03-02 2005-09-08 Ati Technologies Inc. Method and apparatus for object based visibility culling
US20050275760A1 (en) 2004-03-02 2005-12-15 Nvidia Corporation Modifying a rasterized surface, such as by trimming
US7315912B2 (en) 2004-04-01 2008-01-01 Nvidia Corporation Deadlock avoidance in a bus fabric
US7336284B2 (en) 2004-04-08 2008-02-26 Ati Technologies Inc. Two level cache memory architecture
US7265759B2 (en) 2004-04-09 2007-09-04 Nvidia Corporation Field changeable rendering system for a computing device
US6985152B2 (en) 2004-04-23 2006-01-10 Nvidia Corporation Point-to-point bus bridging without a bridge controller
US20050237329A1 (en) 2004-04-27 2005-10-27 Nvidia Corporation GPU rendering to system memory
US7738045B2 (en) 2004-05-03 2010-06-15 Broadcom Corporation Film-mode (3:2/2:2 Pulldown) detector, method and video device
US7079156B1 (en) 2004-05-14 2006-07-18 Nvidia Corporation Method and system for implementing multiple high precision and low precision interpolators for a graphics pipeline
US7426724B2 (en) 2004-07-02 2008-09-16 Nvidia Corporation Optimized chaining of vertex and fragment programs
US7218291B2 (en) 2004-09-13 2007-05-15 Nvidia Corporation Increased scalability in the fragment shading pipeline
CN101091175B (zh) 2004-09-16 2012-03-14 辉达公司 负载均衡
US7571296B2 (en) 2004-11-11 2009-08-04 Nvidia Corporation Memory controller-adaptive 1T/2T timing control
US7477256B1 (en) 2004-11-17 2009-01-13 Nvidia Corporation Connecting graphics adapters for scalable performance
US8066515B2 (en) 2004-11-17 2011-11-29 Nvidia Corporation Multiple graphics adapter connection systems
US7598958B1 (en) 2004-11-17 2009-10-06 Nvidia Corporation Multi-chip graphics processing unit apparatus, system, and method
US7633505B1 (en) * 2004-11-17 2009-12-15 Nvidia Corporation Apparatus, system, and method for joint processing in graphics processing units
US7275123B2 (en) 2004-12-06 2007-09-25 Nvidia Corporation Method and apparatus for providing peer-to-peer data transfer within a computing environment
US7451259B2 (en) 2004-12-06 2008-11-11 Nvidia Corporation Method and apparatus for providing peer-to-peer data transfer within a computing environment
US7372465B1 (en) 2004-12-17 2008-05-13 Nvidia Corporation Scalable graphics processing for remote display
US20060156399A1 (en) 2004-12-30 2006-07-13 Parmar Pankaj N System and method for implementing network security using a sequestered partition
US7924281B2 (en) 2005-03-09 2011-04-12 Ati Technologies Ulc System and method for determining illumination of a pixel by shadow planes
US7796095B2 (en) 2005-03-18 2010-09-14 Ati Technologies Ulc Display specific image processing in an integrated circuit
US7568056B2 (en) 2005-03-28 2009-07-28 Nvidia Corporation Host bus adapter that interfaces with host computer bus to multiple types of storage devices
US7681187B2 (en) 2005-03-31 2010-03-16 Nvidia Corporation Method and apparatus for register allocation in presence of hardware constraints
US7817155B2 (en) 2005-05-24 2010-10-19 Ati Technologies Inc. Master/slave graphics adapter arrangement
US20080143731A1 (en) 2005-05-24 2008-06-19 Jeffrey Cheng Video rendering across a high speed peripheral interconnect bus
US7539801B2 (en) 2005-05-27 2009-05-26 Ati Technologies Ulc Computing device with flexibly configurable expansion slots, and method of operation
US20060282604A1 (en) 2005-05-27 2006-12-14 Ati Technologies, Inc. Methods and apparatus for processing graphics data using multiple processing circuits
US7516301B1 (en) * 2005-12-16 2009-04-07 Nvidia Corporation Multiprocessor computing systems with heterogeneous processors
US7325086B2 (en) 2005-12-15 2008-01-29 Via Technologies, Inc. Method and system for multiple GPU support
US7728841B1 (en) 2005-12-19 2010-06-01 Nvidia Corporation Coherent shader output for multiple targets
US7768517B2 (en) 2006-02-21 2010-08-03 Nvidia Corporation Asymmetric multi-GPU processing
US8284204B2 (en) 2006-06-30 2012-10-09 Nokia Corporation Apparatus, method and a computer program product for providing a unified graphics pipeline for stereoscopic rendering
US7941791B2 (en) 2007-04-13 2011-05-10 Perry Wang Programming environment for heterogeneous processor resource integration

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101303771B (zh) * 2007-05-11 2012-07-18 汤姆逊许可公司 借助于一组显示命令来呈现图像帧的渲染器
CN103608777A (zh) * 2011-06-20 2014-02-26 高通股份有限公司 图形处理单元中的存储器共享
CN103608777B (zh) * 2011-06-20 2017-05-10 高通股份有限公司 图形处理单元中的存储器共享
CN109408456A (zh) * 2018-12-07 2019-03-01 中国地质大学(武汉) 一种基于s905d芯片与stm32芯片协同工作硬件电路
CN109408456B (zh) * 2018-12-07 2023-08-29 中国地质大学(武汉) 一种基于s905d芯片与stm32芯片协同工作硬件电路
CN110335190A (zh) * 2019-06-20 2019-10-15 合肥芯碁微电子装备有限公司 基于cuda的直写式光刻机数据拓展方法
CN110895788A (zh) * 2019-11-29 2020-03-20 上海众链科技有限公司 一种增强图形处理能力的系统及外接设备
CN113129205A (zh) * 2019-12-31 2021-07-16 华为技术有限公司 一种电子设备及计算机系统
WO2021136433A1 (zh) * 2019-12-31 2021-07-08 华为技术有限公司 一种电子设备及计算机系统
CN111491059A (zh) * 2020-04-09 2020-08-04 上海众链科技有限公司 图像渲染增强系统及方法
CN112419147A (zh) * 2020-04-14 2021-02-26 上海哔哩哔哩科技有限公司 图像渲染方法及装置
CN112419147B (zh) * 2020-04-14 2023-07-04 上海哔哩哔哩科技有限公司 图像渲染方法及装置
WO2022193774A1 (zh) * 2021-03-19 2022-09-22 上海寒武纪信息科技有限公司 用于芯片的封装框架,加工方法及相关产品
CN115100022A (zh) * 2022-08-23 2022-09-23 芯动微电子科技(珠海)有限公司 图形处理方法及系统
CN115100022B (zh) * 2022-08-23 2022-12-06 芯动微电子科技(珠海)有限公司 图形处理方法及系统

Also Published As

Publication number Publication date
US20190180408A1 (en) 2019-06-13
US7808504B2 (en) 2010-10-05
US20140253565A1 (en) 2014-09-11
US20080122850A1 (en) 2008-05-29
WO2006117683A2 (en) 2006-11-09
WO2006117683A3 (en) 2009-05-22
US7812846B2 (en) 2010-10-12
US20060232590A1 (en) 2006-10-19
US20080136827A1 (en) 2008-06-12
US20080129741A1 (en) 2008-06-05
US20080136826A1 (en) 2008-06-12
US10614545B2 (en) 2020-04-07
US20210104010A1 (en) 2021-04-08
US9659340B2 (en) 2017-05-23
JP2008538620A (ja) 2008-10-30
US20110169841A1 (en) 2011-07-14
US10867364B2 (en) 2020-12-15
US20080117219A1 (en) 2008-05-22
EP1846834A2 (en) 2007-10-24
US20060279577A1 (en) 2006-12-14
US20080117218A1 (en) 2008-05-22
US20080129742A1 (en) 2008-06-05
US20080129745A1 (en) 2008-06-05
US20080122851A1 (en) 2008-05-29
CA2595085A1 (en) 2006-11-09
US11341602B2 (en) 2022-05-24
US7834880B2 (en) 2010-11-16
US7812845B2 (en) 2010-10-12
US20200184594A1 (en) 2020-06-11
US10147157B2 (en) 2018-12-04
US7843457B2 (en) 2010-11-30
US20080129744A1 (en) 2008-06-05
US20140292775A1 (en) 2014-10-02
US20080129743A1 (en) 2008-06-05
US7812844B2 (en) 2010-10-12
US8754897B2 (en) 2014-06-17

Similar Documents

Publication Publication Date Title
CN101849227A (zh) 在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统
US9405586B2 (en) Method of dynamic load-balancing within a PC-based computing system employing a multiple GPU-based graphics pipeline architecture supporting multiple modes of GPU parallelization
US20090096798A1 (en) Graphics Processing and Display System Employing Multiple Graphics Cores on a Silicon Chip of Monolithic Construction

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20100929