CN102763081A - 图形处理单元间基于策略的切换 - Google Patents

图形处理单元间基于策略的切换 Download PDF

Info

Publication number
CN102763081A
CN102763081A CN2010800637857A CN201080063785A CN102763081A CN 102763081 A CN102763081 A CN 102763081A CN 2010800637857 A CN2010800637857 A CN 2010800637857A CN 201080063785 A CN201080063785 A CN 201080063785A CN 102763081 A CN102763081 A CN 102763081A
Authority
CN
China
Prior art keywords
gpu
computer system
shape library
incidents
computer
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
CN2010800637857A
Other languages
English (en)
Other versions
CN102763081B (zh
Inventor
C·C·尼德欧尔
G·G·斯达尔
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.)
Apple Inc
Original Assignee
Apple Computer 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 Apple Computer Inc filed Critical Apple Computer Inc
Publication of CN102763081A publication Critical patent/CN102763081A/zh
Application granted granted Critical
Publication of CN102763081B publication Critical patent/CN102763081B/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
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3218Monitoring of peripheral devices of display devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • 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/48Program initiating; Program switching, e.g. by interrupt

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Power Sources (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)

Abstract

所公开的实施例提供了一种用于配置计算机系统以在图形处理单元(GPU)之间切换的系统。在一种实施例中,该系统使用计算机系统中的第一图形处理单元(GPU)来驱动显示器。然后,该系统检测与对计算机系统中的第二GPU的一种或多种依赖性相关联的一个或多个事件。最后,响应于该事件,系统准备从第一GPU切换到第二GPU,作为用于驱动显示器的信号源。

Description

图形处理单元间基于策略的切换
技术领域
所公开的实施例涉及用于在计算机系统中的图形处理单元(GPU)之间切换的技术。更具体地,所公开的实施例涉及用于在计算机系统中的GPU之间基于策略的切换的技术。
背景技术
电源管理对于许多电子器件是至关重要的。例如,诸如膝上型计算机、移动电话和个人数字助理(PDA)之类的便携式电子器件需要节约电能以靠电池电能来运行任意时长。同时,这些便携式电子器件中许多都在开始并有高分辨率的、大功率的图形技术。该领域的快速发展在2D和3D图形技术方面带来了显著的进步,从而在从图形用户接口到逼真的游戏环境的领域内给用户提供了越来越复杂的视觉体验。作为这些改进中的许多改进的基础的是专用图形渲染器件或图形处理单元(GPU)的开发。典型的GPU包括用于通过快速地执行一系列的原始(primitive)操作以及在图形显示器上显示所产生的图像来有效地操纵图形对象的高度并行的结构。
不幸的是,存在着与这些提高的图形能力关联的成本。特别地,图形性能的提高典型地伴随着相应的功耗的增加。结果,许多计算机系统和便携式电子器件可能会将它们相当大量的电能专用于支持高性能的GPU,这会降低电池的寿命并且导致散热问题。
该问题的一种解决方案是通过从提供较高性能的高功率GPU切换到具有较低性能的低功率GPU而在低活动量的时段内节省电能。计算机系统的设计者正开始开发支持此类系统的硬件结构。但是,它还有精确地确定何时在低功率和高功率的GPU之间切换的挑战性问题。
因此,所需要的是用于帮助确定何时在具有多个GPU的系统中的GPU之间切换的方法和装置。
发明内容
所公开的实施例提供一种用于配置计算机系统以切换GPU的系统。在操作期间,该系统使用计算机系统中的第一图形处理单元(GPU)来驱动显示器。然后,该系统通过应用编程接口(API)或者与GPU相关的系统事件来检测计算机系统中与对第二GPU的依赖性相关联的事件。响应于该检测,系统将启动从第一GPU到作为用于驱动显示器的信号源的第二GPU的切换。
在某些实施例中,API与图形库、视频重放或窗口管理器关联。
在某些实施例中,依赖性对应于下列项中的至少一项:
(i)计算机系统中的图形库的使用;
(ii)可解码内容的视频重放;
(iii)对从第一GPU到第二GPU的切换的请求;以及
(iv)与计算机系统中的图形性能相关联的用户偏好。
在某些实施例中,请求是对窗口管理器或图形库作出的。
在某些实施例中,系统的一些部分(例如,窗口管理器)能够控制GPU间的切换以补偿可能另外导致GPU间的切换的处理或事件。
在某些实施例中,对图形库的使用包括下列项中的至少一项:
(i)链接至图形库;
(ii)在应用执行期间装载图形库;以及
(iii)对图形库的方法调用。
在某些实施例中,事件是下列项中的至少一项:
(i)与对第二GPU的依赖性关联的应用的初始化;
(ii)对从第一GPU切换到第二GPU的请求的调用;
(iii)图形库的使用;以及
(iv)可解码内容的视频重放。
在某些实施例中,系统在对第二GPU的全部依赖性被去除之后还将信号源切换回到第一GPU。
在某些实施例中,第一GPU是集成于系统芯片集中的低功率GPU,而第二GPU是位于分立的GPU芯片上的高功率GPU。第一GPU和第二GPU能够具有基本上相同的电路和相似的能力,或者具有不同的电路和/或能力。
在某些实施例中,第一GPU是运行图形代码的通用处理器,而第二GPU是专用GPU。
在某些实施例中,当前并没有在驱动显示器的“离线的”GPU能够被用来执行其他的任务。例如,当应用异步地使用分立的GPU来执行工作时,在线的集成的GPU能够专用于窗口管理器的用户接口(UI)。
附图说明
图1示出了根据一种实施例的能够在不同的图形源之间切换以驱动同一显示器的计算机系统。
图2示出了根据一种实施例的图形多路复用器(multiplexer)的结构。
图3示出了根据一种实施例的用于在计算机系统中的GPU之间切换的示例性策略。
图4示出了用于例示根据一种实施例的配置计算机系统的处理的流程图。
图5示出了用于例示根据一种实施例的GPU切换处理的另一流程图。
在附图中,同样的附图标记指示相同的附图元件。
具体实施方式
下面的描述被给出以使本领域技术人员能够实现并使用实施例,并且下面的描述是在特定的应用及其要求的情况下提供的。对所公开的实施例的各种修改对本领域技术人员来说应当是显而易见的,并且本文所定义的一般原理在不脱离本公开内容的精神和范围的情况下可以应用于其他实施例和应用。因而,本发明并不限于所示出的实施例,而是应当符合与本文所公开的原理和特征一致的最广泛的范围。
在具体实施方式部分所描述的数据结构和代码通常存储于计算机可读存储介质上,该存储介质可以是能够存储由计算机系统使用的代码和/或数据的任意器件或介质。计算机可读存储介质包括,但不限于,易失性存储器、非易失性存储器、磁存储器件和光存储器件(例如,盘驱动器、磁带、CD(光盘)、DVD(数字通用盘或数字视频盘)或者现在已知的或以后开发的能够存储代码和/或数据的其他介质。
在具体实施方式部分所描述的方法和处理能够被实现为代码和/或数据,该代码和/或数据能够存储于以上所描述的计算机可读存储介质内。当计算机系统读取并执行存储于计算机可读存储介质上的代码和/或数据时,计算机系统执行被实现为数据结构和代码并被存储于计算机可读存储介质内的方法和处理。
而且,本文所描述的方法和处理能够包含于硬件模块或装置内。这些模块或装置可以包括,但不限于,专用集成电路(ASIC)芯片、场可编程门阵列(FPGA)、在特定的时间执行特定的软件模块或一段代码的专用的或共用的处理器、和/或现在已知的或以后开发的其他可编程逻辑器件。当硬件模块或装置被激活时,它们执行包含于它们之内的方法和处理。
所公开的实施例提供用于在计算机系统中的多个图形处理单元(GPU)之间切换的方法和系统。计算机系统可以对应于膝上型计算机、个人计算机、工作站和/或含有嵌入的GPU和分立的GPU的便携式电子器件。嵌入的GPU可以消耗比分立的GPU小的功率,而分立的GPU可以提供比嵌入的GPU更好的图形性能。结果,在计算机系统中对图形的渲染和显示可能涉及在性能和电能节省之间的权衡。
更具体地,实施例提供用于在计算机系统中的多个GPU之间基于策略的切换的方法和系统。策略可以将计算机系统中的事件与对单独的GPU的依赖性相关联;与较高的图形性能要求关联的事件可以依赖更强大的GPU,而与较低的图形性能要求关联的事件可以依赖较不强大的GPU和/或取消对更强大的GPU的依赖性。(注意,事件一般可以包括计算机系统的硬件或软件操作状态的任意变化,然而依赖性是在事件与具体GPU的使用之间的关联。)例如,依赖分立的GPU的事件可以触发从嵌入的GPU到分立的GPU的切换以驱动计算机系统的显示器。对GPU的依赖性还可以基于与计算机系统中的图形性能相关联的用户偏好。例如,对较高性能的图形的用户偏好与对较低性能的图形的用户偏好相比可以产生对强大的GPU更大的依赖性。
在切换至较高性能的GPU以驱动显示器之后,可以不切换回到较低性能的GPU,直到对较高性能的GPU的全部依赖性都去除了。例如,分立的GPU可以在要求视频重放、使用图形库、请求GPU支持和/或以其他方式而图形密集的应用的执行期间驱动显示器。一旦全部图形密集的应用和/或操作终止,计算机系统就可以切换到嵌入的GPU以节省电能。在计算机系统中的GPU之间基于策略的切换由此可以提高具有较高的图形处理负荷的应用的图形性能,而在此类应用不被执行时节省电能。如下面所讨论的,基于策略的切换另外还可以允许独立于安装在计算机系统上的应用而对计算机系统中的图形处理进行动态配置,以及通过在切换到某一GPU之前触发该GPU在后台的配置的事件而在GPU之间无缝切换。
图1示出了根据一种实施例的计算机系统100。计算机系统100可以对应于个人计算机、膝上型计算机、便携式电子器件、工作站和/或能够在两个图形源之间切换以驱动显示器的其他电子器件。参照图1,两个图形源包括各自都能够单独地驱动显示器114的(1)分立的GPU110和(2)嵌入的GPU 118。图形源驱动显示器114由用于在GPU 110和GPU 118之间进行选择的GPU多路复用器(GMUX)120来确定。因此,计算机系统100可以使用GMUX 120来基于当前的操作条件选择图形源。
在操作期间,来自分立的GPU 110的显示流122和来自嵌入的GPU 118的显示流124两者都馈入GMUX 120的数据输入。源选择信号126馈入GMUX 120的选择输入,并确定该两个图形源中的哪一个将驱动显示器114。在所示出的实施例中,源选择信号126由桥接芯片104产生,该桥接芯片126包括用于生成源选择信号126的特定逻辑。(注意,源选择信号126还能够由与桥接芯片104不同的逻辑块产生。例如,源选择信号126能够由一个或多个处理单元102产生。)来自所选择的图形源的显示流然后馈入显示器114。
在一种实施例中,分立的GPU 110和嵌入的GPU 118通过数据通路128来通信以使它们的显示流同步。注意,使显示流同步可以包括使各自的定时信号和各自的数据信号两者同步。
在一种实施例中,相对于嵌入的GPU 118(其为消耗较少量的电能的较低性能的GPU),分立的GPU 110是消耗相当大量的电能的高性能GPU。在本实施例中,当图形处理负荷为轻时,系统从使用分立的GPU 110切换到使用嵌入的GPU 118来驱动显示器114,并且随后给分立的GPU 110断电,从而节省电能。另一方面,当图形处理负荷再次变得繁重时,系统将图形源从嵌入的GPU 118切换回到分立的GPU110。
尽管我们已经描述了包括分立的GPU和嵌入的GPU的系统,但是所公开的技术一般可以在包括两个或更多个GPU的任何计算机系统中工作,其中这些GPU每个都可以单独地驱动显示器114。而且,在同一计算机系统中的GPU可以具有不同的操作特性和功耗水平。例如,计算机系统可以在一个或多个处理单元102当中的通用处理器(例如,中央处理单元(CPU))与专用GPU(例如,分立的GPU 110)之间切换,以驱动显示器114。因此,所公开的技术并不限于图1所示的具体实施例。
同样地,注意,上述用于在图形源之间切换的处理不包括关闭或重新初始化计算机系统。结果,与要求重新初始化的情形相比,该切换处理能够花费显著少的时间。因此,所公开的技术便于在图形源之间快速和频繁地切换。
在一种或多种实施例中,计算机系统100提供在分立的GPU 110和嵌入的GPU 118之间基于策略的切换以作为用于驱动显示器114的信号源。具体而言,计算机系统100可以基于与计算机系统100中的图形性能相关的策略,来选择分立的GPU 110或嵌入的GPU 118以驱动显示器114。该策略可以将计算机系统中的事件与对单独的GPU的依赖性相关联;与较高的图形性能要求关联的事件可以与分立的GPU 110关联,而与较低的图形性能要求关联的事件可以与嵌入的GPU 118关联。
计算机系统100可以从使用嵌入的GPU 118作为用于驱动显示器114的信号源开始,直到通过与图形库、视频重放和/或窗口管理器关联的应用编程接口(API)检测到与对分立的GPU 110的依赖性关联的事件。当应用通过一个或多个预定的API进行函数调用时,系统能够推断出该应用将需要更强大的还是较不强大的图形处理能力。响应于一个或多个函数调用,系统可以启动GPU切换。例如,依赖性可以对应于计算机系统中的OpenGL(OpenGLTM是Silicon Graphics公司的注册商标)的使用(例如,链接、装载、方法调用等)和/或可解码的(例如,加密的、压缩的、编码的等)视频内容的QuickTime(QuickTimeTM是Apple公司的注册商标)重放。依赖性还可以由单独的应用和/或用户在与计算机系统中的图形性能关联的应用执行和/或用户偏好期间通过对从嵌入的GPU 118到分立的GPU 110的切换的显式请求(例如,通过图形库和/或窗口管理器)来触发。
注意,GPU切换并不一定由显式的API调用来触发或者与显式的API调用关联。更具体地,GPU切换可以通过与下列项对应的事件来触发:(1)与对第二GPU的依赖性相关联的应用的启动;(2)与对GPU的依赖性相关联的应用的终止;(3)对从第一GPU到第二GPU的切换的请求的调用(例如,通过应用);(4)在应用内切换模式或功能;以及(5)图形库的使用和/或可解码的(例如,数字版权管理(DRM))内容的视频重放。与在GPU之间基于策略的切换关联的事件和/或依赖性将在下面参照图3更详细地讨论。
响应于事件,计算机系统100可以从嵌入的GPU 118切换到分立的GPU 110以作为用于驱动显示器114的信号源。在切换期间,依赖于分立的GPU 110的线程可以被阻止,直到分立的GPU 110完全驱动显示器114。可以在对分立的GPU 110的全部依赖性被去除之后切换回到嵌入的GPU 118以作为信号源。例如,计算机系统100可以在硬件可解码内容的视频重放、图形库的使用、和/或与分立的GPU 110关联的应用的执行完成之后恢复到嵌入的GPU 118作为信号源。
因为在分立的GPU 110和嵌入的GPU 118之间的切换基于计算机系统100中与图形处理要求关联的事件,所以计算机系统100可以包括用于对应用和用户的图形性能要求的变化快速响应的功能,由此改善图形性能和电能节省。而且,在计算机系统100中通过一个或多个API检测此类事件可以允许独立于安装在计算机系统100上的应用而动态地配置计算机系统100中的图形的显示。最终,用于管理GPU间的切换的可适应的策略的使用可以允许与计算机系统100关联的个体应用和/或用户来调整嵌入的GPU 118和/或分立的GPU 110在驱动显示器114方面的使用。
图2示出了根据一种实施例的(在上面参照图1描述的)图形多路复用器120的内部结构。参照图2,来自分立的GPU 110的显示流122和来自嵌入的GPU 118的显示流124分别馈入数据时钟捕捉块205和210。数据时钟捕捉块205和210使显示流122和124解串行化(de-serialize),并且还提取各自的数据时钟信号221和222。
这些数据时钟信号221和222馈入时钟MUX 225,时钟MUX 225用于选择数据时钟信号221和222之一以将其转发到显示流汇集器(assembler)240。在一种实施例中,GMUX控制器235给时钟MUX225提供选择信号236。另选地,选择信号236可以由其他源(例如,在一个或多个处理单元102中的处理器或其他控制器)来提供。
然后,具有分离的数据时钟的显示流122和124分别馈入数据缓冲器215和220。数据缓冲器215和220检查显示流122和124以确定消隐间隔何时出现,并且产生各自的消隐间隔信号233和234。数据缓冲器215和220还产生馈入数据MUX 230的输出数据流。
消隐间隔信号233和234馈入GMUX控制器235,该GMUX控制器235比较消隐间隔233和234以确定在显示流122和124的消隐间隔之间存在多少交叠(若存在的话)。(注意,消隐间隔信号233和234可以指示垂直的或水平的消隐间隔。)如果GMUX控制器235确定消隐间隔233和234具有足够多的交叠量,则GMUX控制器235在消隐间隔开始交叠时断言(assert)选择信号236。这导致时钟MUX 225和数据MUX 230在显示流122和124的消隐间隔交叠的时段期间在显示流122和124之间切换。因为切换发生在消隐间隔期间,所以切换过程在显示器114上将是不可见的。
最后,数据MUX 230的输出和所选择的数据时钟223馈入显示流汇集器240,该显示流汇集器240在将数据流发送到显示器114之前使数据流重新串行化(re-serialize)。
图3给出了用于例示根据一种实施例的在计算机系统中的GPU之间切换的示例性策略的图。如上所述,该策略可以被用来在作为用于驱动计算机系统中的显示器的信号源的两个不同的GPU(例如,分立的GPU和嵌入的GPU或者GPU和CPU)之间切换。而且,策略可以基于事件304来指定某一GPU的使用,该事件304例如可以通过由计算机系统中的API来执行应用而生成。特别地,策略可以识别与对较高性能的GPU(例如,分立的GPU 110)的依赖性关联的事件,以及去除对较高性能的GPU的依赖性的事件。
如图3所示,事件304可以与图形库306的使用、视频重放308和/或窗口管理器310的动作相关联。图形库306可以允许应用302在计算机系统上使用图形硬件加速。结果,图形库306的使用可以与较高的图形性能要求关联并且触发分立的GPU的使用320。例如,三维(3D)的计算机游戏可以使用OpenGL来渲染使用图形硬件加速的复杂的场景和人物。而且,3D计算机游戏可能需要分立的GPU的功能来实时地渲染和显示图形。
特别地,如果应用没有隐式地支持两个GPU(意即离线渲染器在对图形库306的调用期间得不到支持312)和/或应用通过对图形库306中的函数的调用来作出对分立的GPU的显示请求314以使用分立的GPU 320,则可以触发分立的GPU的使用320。另一方面,如果应用支持离线的渲染,则策略可以不指示到分立的GPU的立即切换。作为代替,策略可以允许应用通过对图形库306的另外的方法调用来配置两个GPU的使用。而且,应用可以通过后续对使用嵌入的GPU的显式请求315来去除之前产生的对分立的GPU的依赖性322。
如上所述,图形库306的使用可以对应于链接至图形库306、图形库306在应用执行期间的装载和/或由应用对图形库306的方法调用。结果,到分立的GPU的切换可以在应用执行之前、在应用执行期间和/或在应用使用图形硬件加速期间触发。另外,诸如链接或装载之类的事件可以被用来配置分立的GPU,从而可以在应用最终通过图形库306使用图形硬件加速时无缝切换到分立的GPU。更多细节请参见例如关于图5的描述。
如果包括可解码的内容和/或高分辨率/高比特率的重放316,则视频重放308可以与对分立的GPU的依赖性相关联。例如,如果视频内容使用允许由分立的GPU进行的解码、解密和/或解压缩的机制来编码、加密和/或压缩,则可以将分立的GPU用于重放320。使用分立的GPU320来解码视频内容可以进一步由正在播放的视频的分辨率和/或比特率确定。例如,策略可以指定由计算机系统的CPU为低分辨率的视频进行解码以及由分立的GPU 320为高分辨率/高比特率的视频进行解码。作为选择,分立的GPU可以用于离线的环境以解码之后由嵌入的GPU显示于计算机系统上的视频内容。一旦视频重放停止321,就可以去除322与视频重放308相关的依赖性。
窗口管理器310的动作同样可以触发切换到分立的GPU 320,例如在所捕捉的显示、显式的请求和/或外部显示318的连接的情况下。更具体地,由应用进行的对显示的捕捉(其中该应用假定对呈现于显示屏(例如,“全屏”)上的内容的完全控制)可以改变计算机系统中的显示配置并且触发图形库306的使用,图形库的使用进而可以促进分立的GPU的使用320。类似地,应用可以提出使用分立的GPU的显式请求和/或通过窗口管理器310请求GPU支持,从而触发切换到分立的GPU320。外部显示与计算机系统的连接还可以提高计算机系统的图形性能需求并且使得使用分立的GPU 320。当这些触发条件由于例如所捕捉的显示的释放、GPU支持的停止、对使用嵌入的GPU的显式请求315和/或外部显示的断开而停止321时,该停止可以触发去除对分立的GPU的一种或多种依赖性322。
最终,策略可以在对分立的GPU的全部依赖性都被去除328之后指定使用嵌入的GPU 330。换言之,对分立的GPU的单一依赖性可以触发到分立的GPU的切换,而当没有正在执行的应用依赖分立的GPU时使用嵌入的GPU。
本领域技术人员应当意识到,用于在GPU之间切换的不同策略可以基于用户偏好、应用要求和/或与计算机系统关联的GPU特性来使用。例如,如果一个GPU的某些特征在计算机系统中的其他GPU上不可用,则可以存在与该GPU的特征的使用关联的依赖性。按照相同的方式,对较高性能的图形的用户偏好可以在策略中促进对分立的GPU的另外的依赖性的识别,然而对较低性能的图形的用户偏好可以在策略中减少对分立的GPU的依赖性的数量。
同样应当注意,应用的全部依赖性都能够在应用终止时去除。
图4示出了用于例示根据一种实施例的配置计算机系统的处理的流程图。在一种或多种实施例中,可以省略、重复和/或按不同的顺序执行一个或多个步骤。因此,图4所示的步骤的具体安排不应被看作是对实施例的范围的限制。
起初,显示器使用计算机系统中的第一GPU来驱动(操作402)。第一GPU可以对应于低功率的和/或低性能的GPU,例如,执行图形代码的通用处理器和/或集成的GPU。然后,通过API来检测与对计算机系统中第二GPU的依赖性相关联的事件(操作404)。与第一GPU相比,第二GPU可以与较高的性能和功耗相关联。例如,如果第一GPU是集成的GPU,则第二GPU可以对应于分立的GPU,或者如果第一GPU是CPU,则第二GPU可以对应于专用的GPU。API可以与图形库、视频重放和/或窗口管理器相关联。结果,通过API检测到的事件可以被用来评估计算机系统的图形性能要求以及触发第一GPU和第二GPU之间的切换。
响应于该事件,从第一GPU切换第二GPU以作为用于驱动显示器的信号源(操作406)。如上所述,通过在切换之前配置第二GPU可以有利于第一GPU和第二GPU之间的无缝切换。例如,对第二GPU的配置可以在将图形库装载到应用的可执行文件中时开始,而到第二GPU的切换可以不发生,直到该应用使用图形库来执行“绘制”操作时。
第二GPU可以继续用作信号源,直到对第二GPU的所有依赖性被去除(操作408)。例如,第二GPU可以继续驱动显示器,直到全部图形密集的应用和/或由与计算机系统关联的策略指定的操作完成了执行。如果依赖性仍然存在,则第二GPU继续用作信号源(操作410)。但是,如果对第二GPU的依赖性不再存在,则信号源被切换回到第一GPU(操作412)以在计算机系统中节省电能。
图5给出了用于例示根据一种实施例的GPU切换处理的另一流程图。
起初,显示器使用第一GPU来驱动(操作502)。然后,响应于检测到初始事件或函数调用,系统配置第二GPU以进行GPU切换(操作504)。在一种实施例中,到第二GPU的切换立即发生,使得显示器由第二GPU来驱动。在另一实施例中,切换响应于检测到后续的事件或函数调用而发生(操作506)。
以上关于各种实施例的描述仅出于图示和描述的目的而给出。它们并非意指为穷尽的或者将本发明限于所公开的形式。因此,许多修改和变化对本领域技术人员而言将是显而易见的。另外,上述公开内容并非旨在限制本发明。

Claims (32)

1.一种用于配置计算机系统的方法,包括:
使用所述计算机系统中的第一图形处理单元(GPU)来驱动显示器;
检测一个或多个事件,其中所述一个或多个事件与对所述计算机系统中的第二GPU的一种或多种依赖性相关联;并且
响应于所述一个或多个事件,准备从所述第一GPU切换至所述第二GPU,作为用于驱动所述显示器的信号源。
2.根据权利要求1所述的方法,其中,所述一个或多个事件通过一个或多个应用编程接口(API)来检测。
3.根据权利要求1所述的方法,其中,在准备切换之后,所述方法还包括从所述第一GPU切换至所述第二GPU。
4.根据权利要求1所述的方法,其中,所述方法还包括在检测到一个或多个后续的事件之后从所述第一GPU切换至所述第二GPU。
5.根据权利要求2所述的方法,其中,所述一个或多个API与图形库、视频重放或窗口管理器中的至少一项相关联。
6.根据权利要求5所述的方法,其中,所述一种或多种依赖性对应于下列项中的至少一项:
对所述计算机系统中的所述图形库的使用;
对可解码内容的视频重放;
用以从所述第一GPU切换到所述第二GPU的请求;
与所述计算机系统中的图形性能相关联的用户偏好;以及
系统事件,例如,插入外设或显示器。
7.根据权利要求6所述的方法,其中,所述请求是对所述窗口管理器或所述图形库作出的。
8.根据权利要求6所述的方法,其中,对所述图形库的使用包括下列项中的至少一项:
链接至所述图形库;
在应用执行期间装载所述图形库;以及
对所述图形库的方法调用。
9.根据权利要求8所述的方法,其中,所述一个或多个事件是下列项中的至少一项:
与对所述第二GPU的所述一种或多种依赖性相关联的应用的初始化;
对用以从所述第一GPU切换到所述第二GPU的请求的调用;
对所述图形库的使用;
对所述可解码内容的视频重放;以及
系统事件,例如,插入外设或显示器。
10.根据权利要求1所述的方法,还包括:
在对所述第二GPU的全部依赖性都被去除之后将所述信号源切换回到所述第一GPU。
11.根据权利要求1所述的方法,
其中,所述第一GPU是集成于系统芯片集内的低功率GPU,而所述第二GPU是位于分立的GPU芯片上的高功率GPU,并且
其中,所述第一GPU和所述第二GPU具有基本上相同的电路和相似的能力。
12.根据权利要求1所述的方法,其中,所述第一GPU是运行图形代码的通用处理器,而所述第二GPU是专用GPU。
13.一种用于从第一图形处理器切换至第二图形处理器以驱动显示器的计算机系统,包括:
第一图形处理单元(GPU);以及
第二GPU;
其中,所述计算机系统被配置用于:
检测与对所述计算机系统中的所述第二GPU的依赖性相关联的一个或多个事件;并且
响应于所述一个或多个事件,从所述第一GPU切换至所述第二GPU,作为用于驱动所述显示器的信号源。
14.根据权利要求13所述的计算机系统,其中,所述一个或多个事件通过一个或多个API来检测。
15.根据权利要求13所述的计算机系统,其中,在准备切换之后,所述计算机系统被配置用于从所述第一GPU切换至所述第二GPU。
16.根据权利要求13所述的计算机系统,其中,所述计算机系统被配置用于在检测到一个或多个后续的事件之后从所述第一GPU切换至所述第二GPU。
17.根据权利要求14所述的计算机系统,其中,所述一个或多个API与图形库、视频重放或窗口管理器中的至少一项相关联。
18.根据权利要求17所述的计算机系统,其中,所述一种或多种依赖性对应于下列项中的至少一项:
对所述计算机系统中的所述图形库的使用;
对可解码内容的视频重放;
用以从所述第一GPU切换到所述第二GPU的请求;
与所述计算机系统中的图形性能相关联的用户偏好;以及
系统事件,例如,插入外设或显示器。
19.根据权利要求18所述的计算机系统,其中,所述请求是对所述窗口管理器或所述图形库作出的。
20.根据权利要求18所述的计算机系统,其中,对所述图形库的使用包括下列项中的至少一项:
链接至所述图形库;
在应用执行期间装载所述图形库;以及
对所述图形库的方法调用。
21.根据权利要求20所述的计算机系统,其中,所述一个或多个事件包括下列项中的至少一项:
与对所述第二GPU的所述一种或多种依赖性相关联的应用的初始化;
对用以从所述第一GPU切换到所述第二GPU的请求的调用;
对所述图形库的使用;
对硬件可解码内容的视频重放;以及
系统事件,例如,插入外设或显示器。
22.根据权利要求13所述的计算机系统,其中,所述计算机系统还被配置用于:
在对所述第二GPU的全部依赖性都被去除之后将所述信号源切换回到所述第一GPU。
23.一种用于存储指令的计算机可读存储介质,所述指令在由计算机执行时使得所述计算机执行用于配置计算机系统的方法,所述方法包括:
使用所述计算机系统中的第一图形处理单元(GPU)来驱动显示器;
检测一个或多个事件,其中所述一个或多个事件与对所述计算机系统中的第二GPU的一种或多种依赖性相关联;并且
响应于所述一个或多个事件,从所述第一GPU切换至所述第二GPU,作为用于驱动所述显示器的信号源。
24.根据权利要求23所述的计算机可读存储介质,其中,所述一个或多个事件通过一个或多个API来检测。
25.根据权利要求23所述的计算机可读存储介质,其中,在准备切换之后,所述方法还包括从所述第一GPU切换至所述第二GPU。
26.根据权利要求23所述的计算机可读存储介质,其中,所述方法还包括在检测到一个或多个后续的事件之后从所述第一GPU切换至所述第二GPU。
27.根据权利要求24所述的计算机可读存储介质,其中,所述一个或多个API与图形库、视频重放或窗口管理器中的至少一项相关联。
28.根据权利要求27所述的计算机可读存储介质,其中,所述一种或多种依赖性对应于下列项中的至少一项:
对所述计算机系统中的所述图形库的使用;
对可解码内容的视频重放;
用以从所述第一GPU切换到所述第二GPU的请求;
与所述计算机系统中的图形性能相关联的用户偏好;以及
系统事件,例如,插入外设或显示器。
29.根据权利要求28所述的计算机可读存储介质,其中,所述请求是对所述窗口管理器或所述图形库作出的。
30.根据权利要求28所述的计算机可读存储介质,其中,对所述图形库的使用包括下列项中的至少一项:
链接至所述图形库;
在应用执行期间装载所述图形库;以及
对所述图形库的方法调用。
31.根据权利要求30所述的计算机可读存储介质,其中,所述一个或多个事件是下列项中的至少一项:
与对所述第二GPU的所述一种或多种依赖性相关联的应用的初始化;
对用以从所述第一GPU切换到所述第二GPU的请求的调用;
对所述图形库的使用;
对所述可解码内容的视频重放;以及
系统事件,例如,插入外设或显示器。
32.根据权利要求23所述的计算机可读存储介质,还包括:
在对所述第二GPU的全部依赖性都被去除之后将所述信号源切换回到所述第一GPU。
CN201080063785.7A 2010-01-06 2010-12-22 用于配置计算机系统的方法和设备 Active CN102763081B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US29272110P 2010-01-06 2010-01-06
US61/292,721 2010-01-06
US12/695,265 2010-01-28
US12/695,265 US8368702B2 (en) 2010-01-06 2010-01-28 Policy-based switching between graphics-processing units
PCT/US2010/061820 WO2011084831A1 (en) 2010-01-06 2010-12-22 Policy-based switching between graphics-processing units

Publications (2)

Publication Number Publication Date
CN102763081A true CN102763081A (zh) 2012-10-31
CN102763081B CN102763081B (zh) 2016-06-01

Family

ID=44224472

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080063785.7A Active CN102763081B (zh) 2010-01-06 2010-12-22 用于配置计算机系统的方法和设备

Country Status (7)

Country Link
US (2) US8368702B2 (zh)
EP (1) EP2521971B1 (zh)
JP (1) JP5784633B2 (zh)
KR (1) KR101606428B1 (zh)
CN (1) CN102763081B (zh)
TW (1) TWI452514B (zh)
WO (1) WO2011084831A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103531217A (zh) * 2012-07-02 2014-01-22 宏碁股份有限公司 影像处理的调整方法及其电子装置
CN105446462A (zh) * 2014-06-27 2016-03-30 联想(北京)有限公司 一种显示方法、装置、电路及电子设备
CN112416441A (zh) * 2020-11-03 2021-02-26 西安领创电子科技有限公司 基于物联网的设备管理方法及装置、系统
CN113777476A (zh) * 2021-08-30 2021-12-10 苏州浪潮智能科技有限公司 一种gpu故障诊断系统、诊断方法、设备及可读存储介质

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8300056B2 (en) 2008-10-13 2012-10-30 Apple Inc. Seamless display migration
US8797334B2 (en) 2010-01-06 2014-08-05 Apple Inc. Facilitating efficient switching between graphics-processing units
US8648868B2 (en) * 2010-01-06 2014-02-11 Apple Inc. Color correction to facilitate switching between graphics-processing units
US8368702B2 (en) 2010-01-06 2013-02-05 Apple Inc. Policy-based switching between graphics-processing units
US20120243031A1 (en) * 2011-03-25 2012-09-27 Konica Minolta Laboratory U.S.A., Inc. Gpu accelerated color analysis and control system
US8560453B2 (en) * 2011-06-30 2013-10-15 Intel Corporation Method and apparatus for dynamic, real-time ad insertion based on meta-data within a hardware based root of trust
US8692833B2 (en) * 2011-08-09 2014-04-08 Apple Inc. Low-power GPU states for reducing power consumption
KR101861742B1 (ko) 2011-08-30 2018-05-30 삼성전자주식회사 이종의 가속기들 사이에서 스위칭할 수 있는 데이터 처리 시스템과 그 방법
US9672609B1 (en) * 2011-11-11 2017-06-06 Edge 3 Technologies, Inc. Method and apparatus for improved depth-map estimation
TWI511078B (zh) * 2012-06-11 2015-12-01 Acer Inc 影像處理的調整方法及其電子裝置
KR20140013652A (ko) * 2012-07-26 2014-02-05 삼성전자주식회사 시스템 온 칩 및 이를 포함하는 전자 기기
US9760967B2 (en) 2013-11-13 2017-09-12 Qualcomm Incorporated System and method of dynamically throttling CPU frequency for gaming workloads
KR102092315B1 (ko) * 2013-11-14 2020-04-14 한화테크윈 주식회사 영상 기록 시스템, 호스트 시스템의 영상 처리 방법 및 장치
EP2962192B1 (en) * 2014-05-09 2017-12-06 Huawei Technologies Co., Ltd. System and method thereof to optimize boot time of computers having multiple cpus
KR101706088B1 (ko) * 2015-11-10 2017-02-13 홍성규 Ssd 제어기에서의 프로세서 스위칭 방법 및 장치
US9971708B2 (en) 2015-12-02 2018-05-15 Advanced Micro Devices, Inc. System and method for application migration between docking station and dockable device
KR102130361B1 (ko) * 2015-12-03 2020-08-05 후아웨이 테크놀러지 컴퍼니 리미티드 시나리오에 따라 그래픽 처리 해상도를 변경하기 위한 방법 및 휴대용 전자 디바이스
US10528509B2 (en) 2016-01-29 2020-01-07 Hewlett Packard Enterprise Development Lp Expansion bus devices comprising retimer switches
JP6658136B2 (ja) 2016-03-14 2020-03-04 コニカミノルタ株式会社 描画処理装置、画像処理装置、描画処理方法及び描画処理プログラム
US10255652B2 (en) * 2017-01-18 2019-04-09 Amazon Technologies, Inc. Dynamic and application-specific virtualized graphics processing
US10776895B2 (en) * 2017-02-10 2020-09-15 Apple Inc. GPU power and performance management
TWI676129B (zh) * 2018-06-29 2019-11-01 致茂電子股份有限公司 多核心同步處理裝置及其同步控制方法
JP6695942B2 (ja) * 2018-08-24 2020-05-20 レノボ・シンガポール・プライベート・リミテッド 情報処理装置、制御方法、及びプログラム
US11107181B2 (en) * 2018-11-15 2021-08-31 Arizona Board Of Regents On Behalf Of Arizona State University Fidelity-driven runtime thermal management for near-sensor architectures
WO2021167591A1 (en) * 2020-02-18 2021-08-26 Hewlett-Packard Development Company, L.P. Graphics processor switching based on coupled display devices
US11763414B2 (en) * 2020-09-23 2023-09-19 Ati Technologies Ulc Glitchless GPU switching at a multiplexer
WO2023277869A1 (en) * 2021-06-29 2023-01-05 Hewlett-Packard Development Company, L.P. Activation of integrated graphical processing units

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050012749A1 (en) * 2003-07-15 2005-01-20 Nelson Gonzalez Multiple parallel processor computer graphics system
US20080034238A1 (en) * 2006-08-03 2008-02-07 Hendry Ian C Multiplexed graphics architecture for graphics power management
US20080204460A1 (en) * 2006-05-30 2008-08-28 Ati Technologies Ulc Device having multiple graphics subsystems and reduced power consumption mode, software and methods
WO2009038902A1 (en) * 2007-09-20 2009-03-26 Apple Inc. Switching between graphics sources to facilitate power management and/or security
CN101536080A (zh) * 2006-05-30 2009-09-16 Ati技术Ulc公司 具有多图形子系统及降能耗模式的设备、软件及方法
US20090295810A1 (en) * 2008-05-28 2009-12-03 Kabushiki Kaisha Toshiba Information processing apparatus

Family Cites Families (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4862156A (en) 1984-05-21 1989-08-29 Atari Corporation Video computer system including multiple graphics controllers and associated method
EP0482678B1 (en) 1984-07-23 1998-01-14 Texas Instruments Incorporated Video system
US5155595A (en) 1991-01-31 1992-10-13 Lsi Logic Corp. Genlock frequency generator
JPH066708A (ja) 1992-06-23 1994-01-14 Mitsubishi Electric Corp 画面表示装置
EP0734011A3 (en) 1995-03-21 1999-01-20 Sun Microsystems, Inc. Field synchronization of independent frame buffers
US5969728A (en) 1997-07-14 1999-10-19 Cirrus Logic, Inc. System and method of synchronizing multiple buffers for display
US5943064A (en) 1997-11-15 1999-08-24 Trident Microsystems, Inc. Apparatus for processing multiple types of graphics data for display
JP3464924B2 (ja) 1998-03-13 2003-11-10 株式会社東芝 同期制御回路
US6424320B1 (en) 1999-06-15 2002-07-23 Ati International Srl Method and apparatus for rendering video
US6624816B1 (en) 1999-09-10 2003-09-23 Intel Corporation Method and apparatus for scalable image processing
US6778187B1 (en) 1999-12-27 2004-08-17 Oak Technology, Inc. Methods and devices to process graphics and/or video data
US6535208B1 (en) 2000-09-05 2003-03-18 Ati International Srl Method and apparatus for locking a plurality of display synchronization signals
EP1189198A1 (en) 2000-09-18 2002-03-20 Siemens Aktiengesellschaft A method and system for operating a unified memory and graphics controller combination
US6903732B2 (en) 2001-01-15 2005-06-07 Matsushita Electric Industrial Co., Ltd. Image display device
US6646645B2 (en) 2001-04-23 2003-11-11 Quantum3D, Inc. System and method for synchronization of video display outputs from multiple PC graphics subsystems
US6943844B2 (en) 2001-06-13 2005-09-13 Intel Corporation Adjusting pixel clock
US7245272B2 (en) 2002-10-19 2007-07-17 Via Technologies, Inc. Continuous graphics display for dual display devices during the processor non-responding period
JP3726905B2 (ja) 2003-01-31 2005-12-14 セイコーエプソン株式会社 表示ドライバ及び電気光学装置
US7483031B2 (en) 2003-04-17 2009-01-27 Nvidia Corporation Method for synchronizing graphics processing units
JPWO2004108163A1 (ja) 2003-06-04 2006-07-20 塩野義製薬株式会社 低帯電性粉末の製造方法
TW591375B (en) 2003-08-08 2004-06-11 Via Tech Inc Video display system and its power-saving method
US7839419B2 (en) 2003-10-23 2010-11-23 Microsoft Corporation Compositing desktop window manager
US7499044B2 (en) 2003-10-30 2009-03-03 Silicon Graphics, Inc. System for synchronizing display of images in a multi-display computer system
US6985152B2 (en) 2004-04-23 2006-01-10 Nvidia Corporation Point-to-point bus bridging without a bridge controller
JP2005316176A (ja) 2004-04-28 2005-11-10 Toshiba Corp 電子機器及び表示制御方法
US20070094444A1 (en) 2004-06-10 2007-04-26 Sehat Sutardja System with high power and low power processors and thread transfer
US8446417B2 (en) 2004-06-25 2013-05-21 Nvidia Corporation Discrete graphics system unit for housing a GPU
GB2415852B (en) 2004-07-02 2010-07-14 Filmlight Ltd Method and apparatus for image processing
TWM261751U (en) 2004-07-09 2005-04-11 Uniwill Comp Corp Switching display processing architecture for information device
US7576745B1 (en) 2004-11-17 2009-08-18 Nvidia Corporation Connecting graphics adapters
US7502947B2 (en) * 2004-12-03 2009-03-10 Hewlett-Packard Development Company, L.P. System and method of controlling a graphics controller
US7522167B1 (en) * 2004-12-16 2009-04-21 Nvidia Corporation Coherence of displayed images for split-frame rendering in multi-processor graphics system
US8274518B2 (en) 2004-12-30 2012-09-25 Microsoft Corporation Systems and methods for virtualizing graphics subsystems
US8681160B2 (en) 2005-05-27 2014-03-25 Ati Technologies, Inc. Synchronizing multiple cards in multiple video processing unit (VPU) systems
CN100549870C (zh) 2005-06-28 2009-10-14 佳能株式会社 应用程序管理系统、应用程序管理方法、程序及存储介质
JP4847168B2 (ja) 2005-06-28 2011-12-28 キヤノン株式会社 アプリケーション管理システム、アプリケーション管理方法およびプログラム
US7545381B2 (en) 2005-11-10 2009-06-09 Via Technologies, Inc. Interruptible GPU and method for context saving and restoring
US7340557B2 (en) 2005-12-15 2008-03-04 Via Technologies, Inc. Switching method and system for multiple GPU support
JP5076317B2 (ja) 2005-12-27 2012-11-21 ソニー株式会社 情報処理装置、情報処理方法及びそのプログラム
JP4625781B2 (ja) * 2006-03-22 2011-02-02 株式会社東芝 再生装置
US7882380B2 (en) * 2006-04-20 2011-02-01 Nvidia Corporation Work based clock management for display sub-system
US7499043B2 (en) 2006-05-30 2009-03-03 Intel Corporation Switching of display refresh rates
US20080030510A1 (en) 2006-08-02 2008-02-07 Xgi Technology Inc. Multi-GPU rendering system
JP4952119B2 (ja) * 2006-08-02 2012-06-13 日本電気株式会社 ファイルサーバを用いたコンテンツ管理システムと方法およびプログラム
US8681159B2 (en) * 2006-08-04 2014-03-25 Apple Inc. Method and apparatus for switching between graphics sources
US7830389B2 (en) 2006-10-03 2010-11-09 Honeywell International Inc. Dual processor accelerated graphics rendering
US8199155B2 (en) * 2006-11-22 2012-06-12 Nvidia Corporation System, method, and computer program product for saving power in a multi-graphics processor environment
KR100829111B1 (ko) 2006-11-27 2008-05-16 삼성전자주식회사 휴대단말기 및 그 제어방법
KR101467558B1 (ko) 2007-07-26 2014-12-01 엘지전자 주식회사 그래픽데이터 처리 장치 및 방법
US8233000B1 (en) 2007-11-08 2012-07-31 Nvidia Corporation System and method for switching between graphical processing units
US8487943B2 (en) * 2007-12-13 2013-07-16 Advanced Micro Devices, Inc. Driver architecture for computing device having multiple graphics subsystems, reduced power consumption modes, software and methods
US8022956B2 (en) 2007-12-13 2011-09-20 Ati Technologies Ulc Settings control in devices comprising at least two graphics processors
US8330762B2 (en) 2007-12-19 2012-12-11 Advanced Micro Devices, Inc. Efficient video decoding migration for multiple graphics processor systems
US8300056B2 (en) 2008-10-13 2012-10-30 Apple Inc. Seamless display migration
US8797334B2 (en) 2010-01-06 2014-08-05 Apple Inc. Facilitating efficient switching between graphics-processing units
US8368702B2 (en) 2010-01-06 2013-02-05 Apple Inc. Policy-based switching between graphics-processing units
US20110216078A1 (en) 2010-03-04 2011-09-08 Paul Blinzer Method, System, and Apparatus for Processing Video and/or Graphics Data Using Multiple Processors Without Losing State Information

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050012749A1 (en) * 2003-07-15 2005-01-20 Nelson Gonzalez Multiple parallel processor computer graphics system
US20080204460A1 (en) * 2006-05-30 2008-08-28 Ati Technologies Ulc Device having multiple graphics subsystems and reduced power consumption mode, software and methods
CN101536080A (zh) * 2006-05-30 2009-09-16 Ati技术Ulc公司 具有多图形子系统及降能耗模式的设备、软件及方法
US20080034238A1 (en) * 2006-08-03 2008-02-07 Hendry Ian C Multiplexed graphics architecture for graphics power management
WO2009038902A1 (en) * 2007-09-20 2009-03-26 Apple Inc. Switching between graphics sources to facilitate power management and/or security
CN101802774A (zh) * 2007-09-20 2010-08-11 苹果公司 在图形源之间切换以便于实现功率管理和/或安全性
US20090295810A1 (en) * 2008-05-28 2009-12-03 Kabushiki Kaisha Toshiba Information processing apparatus

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103531217A (zh) * 2012-07-02 2014-01-22 宏碁股份有限公司 影像处理的调整方法及其电子装置
CN103531217B (zh) * 2012-07-02 2016-06-08 宏碁股份有限公司 影像处理的调整方法及其电子装置
CN105446462A (zh) * 2014-06-27 2016-03-30 联想(北京)有限公司 一种显示方法、装置、电路及电子设备
CN105446462B (zh) * 2014-06-27 2020-12-18 联想(北京)有限公司 一种显示方法、装置、电路及电子设备
CN112416441A (zh) * 2020-11-03 2021-02-26 西安领创电子科技有限公司 基于物联网的设备管理方法及装置、系统
CN113777476A (zh) * 2021-08-30 2021-12-10 苏州浪潮智能科技有限公司 一种gpu故障诊断系统、诊断方法、设备及可读存储介质
CN113777476B (zh) * 2021-08-30 2024-02-23 苏州浪潮智能科技有限公司 一种gpu故障诊断系统、诊断方法、设备及可读存储介质

Also Published As

Publication number Publication date
JP5784633B2 (ja) 2015-09-24
TW201142702A (en) 2011-12-01
WO2011084831A1 (en) 2011-07-14
US8564599B2 (en) 2013-10-22
KR101606428B1 (ko) 2016-03-28
KR20120120281A (ko) 2012-11-01
US20110164046A1 (en) 2011-07-07
CN102763081B (zh) 2016-06-01
US8368702B2 (en) 2013-02-05
JP2013516697A (ja) 2013-05-13
TWI452514B (zh) 2014-09-11
EP2521971B1 (en) 2018-09-12
US20130088500A1 (en) 2013-04-11
EP2521971A1 (en) 2012-11-14

Similar Documents

Publication Publication Date Title
CN102763081A (zh) 图形处理单元间基于策略的切换
US9013491B2 (en) Low-power GPU states for reducing power consumption
US20120092351A1 (en) Facilitating atomic switching of graphics-processing units
US20140362098A1 (en) Display stream compression
TWI507992B (zh) 同步化媒體處理技術
US9202445B2 (en) Display drive integrated circuit
US20170127012A1 (en) Updating regions for display based on video decoding mode
US20160267881A1 (en) Seamless video transitions
JP2013508846A (ja) ディスプレイ出力スタッタのための方法及び装置
US11763414B2 (en) Glitchless GPU switching at a multiplexer
CN112804410A (zh) 多显示屏同步显示方法及装置、视频处理设备和存储介质
US20230274720A1 (en) Synchronous Display Pipeline Systems and Methods
WO2018080625A1 (en) Concurrent multi-layer fetching and processing for composing display frames
US11169683B2 (en) System and method for efficient scrolling
CN111107404A (zh) 汽车与移动端的界面视频快速播放方法、系统及存储介质
CN116325714B (zh) 一种图像处理方法以及电子设备
US20200225728A1 (en) System and apparatus for improved display processing blinking operation
CN116325714A (zh) 跟随器模式视频操作
WO2021026868A1 (en) Methods and apparatus to recover a mobile device when a command-mode panel timing synchronization signal is lost

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