# US 2014/0192064 A1 · Low-power gpu states for reducing power consumption

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0192064 A1
- Document ID: US20140192064A1
- Status: Published application
- Kind: A1
- Application number: 14/190,310
- Filed: 2014-02-26
- Published: 2014-07-10
- Earliest claimed: 2011-08-09
- Assignees: Apple Inc.
- Applicants: Apple Inc.
- Inventors: Ian C. Hendry; Rajabali M. Koduri
- Web page: https://patentgrep.com/patent/US20140192064A1

## CPC

- G06F 1/3293: by switching to a less power-consuming processor, e.g. sub-CPU
- G06F 1/3206: Monitoring of events, devices or parameters that trigger a change in power modality
- G06F 1/3265: {Power saving in display device}
- G06T 1/20: Processor architectures; Processor configuration, e.g. pipelining
- G09G 5/003: {Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto (specific for a CRT G09G1/165; for a flat panel G09G3/2092)}
- G09G 5/36: characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G 5/399: using two or more bit-mapped memories, the operations of which are switched in time, e.g. ping-pong buffers
- G06F 1/3218: of display devices
- G09G 2330/021: Power management, e.g. power saving
- G09G 2360/06: Use of more than one graphics processor to process data before displaying to one or more screens
- Y02D 10/00: Energy efficient computing, e.g. low power processors, power management or thermal management
- Y02D 30/50: in wire-line communication networks, e.g. low power modes or reduced link rate
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G09G: ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION (arrangements for transferring data between digital computers and displays G06F3/14; static indicating arrangements comprising an association of a number of separate sources or light control cells G09F9/00; static indicating arrangements comprising integral associations of a number of light sources H01J, H01K, H10H, H05B33/12; scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission, details thereof H04N1/00)
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

The disclosed embodiments provide a system that drives a display from a computer system. During operation, the system detects an idle state in a first graphics-processing unit (GPU) used to drive the display. During the idle state, the system switches from using the first GPU to using a second GPU to drive the display and places the first GPU into a low-power state, wherein the low-power state reduces a power consumption of the computer system.

## Claims

### Claim 1

A method for driving a display in a computer, comprising:
driving the display with a first graphics-processing unit (GPU);
switching from using the first GPU to drive the display to using a second GPU to drive the display; and
transitioning the first GPU into a low-power state, wherein transitioning the first GPU into the low-power state comprises powering off the first GPU and an interface with the first GPU, and maintaining power to video memory of the first GPU.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
detecting a disabling condition for the first GPU; and
based on detecting the disabling condition, performing the switching and transitioning operations.

### Claim 3 (depends on 2)

The method of claim 2, wherein the disabling condition is an idle state for the first GPU.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
when the first GPU is in the low-power state, intercepting a graphics call to the first GPU;
restoring the first GPU from the low-power state;
switching from using the second GPU to drive the display to using the first GPU to drive the display; and
directing the graphics call to the first GPU.

### Claim 5 (depends on 4)

The method of claim 4, wherein intercepting the graphics call to the first GPU comprises:
acquiring a lock for the graphics call to the first GPU; and
queuing the graphics call.

### Claim 6 (depends on 4)

The method of claim 4, further comprising:
prior to transitioning the first GPU into the low-power state, saving a GPU configuration state of the first GPU in a video memory in the first GPU,
wherein restoring the first GPU from the low-power state comprises restoring the GPU configuration state from the video memory.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
saving an interface configuration state of the interface with the first GPU in a memory in the computer; and
concurrently restoring the interface configuration state from the memory when restoring the GPU configuration state from the video memory.

### Claim 8 (depends on 1)

The method of claim 1, wherein switching from using the first GPU to drive the display to using the second GPU to drive the display comprises:
copying pixel values from a first framebuffer for the first GPU to a second framebuffer for the second GPU; and
initiating a switch from the first framebuffer to the second framebuffer as a signal source for driving the display.

### Claim 9 (depends on 1)

The method of claim 1, wherein the first GPU is a high-power GPU and the second GPU is a low-power GPU.

### Claim 10

A computer system that drives a display, comprising:
the display;
a first GPU;
a second GPU; and
a switching mechanism that performs operations for:
switching from using the first GPU to drive the display to using the second GPU to drive the display; and
transitioning the first GPU into a low-power state, wherein transitioning the first GPU into the low-power state comprises powering off the first GPU and an interface with the first GPU, and maintaining power to video memory of the first GPU.

### Claim 11 (depends on 10)

The computer system of claim 10, wherein the switching mechanism performs operations for:
detecting a disabling condition for the first GPU; and
based on detecting the disabling condition, performing the switching and transitioning operations.

### Claim 12 (depends on 11)

The computer system of claim 11, wherein the disabling condition is an idle state for the first GPU.

### Claim 13 (depends on 10)

The computer system of claim 10, further comprising:
a processor that performs operations for a shim, the operations comprising:
when the first GPU is in the low-power state, intercepting a graphics call to the first GPU;
based on the intercepted graphics call, causing the switching mechanism to perform operations for:
restoring the first GPU from the low-power state; and
switching from using the second GPU to drive the display to using the first GPU to drive the display; and
forwarding the graphics call to the first GPU.

### Claim 14 (depends on 13)

The computer system of claim 13, wherein, when intercepting the graphics call to the first GPU, the processor performs operations for:
acquiring a lock for the graphics call to the first GPU; and
queuing the graphics call in a queue that holds zero or more previous graphics calls for the first GPU.

### Claim 15 (depends on 13)

The computer system of claim 13, wherein the first GPU comprises:
a video memory;
wherein the processor further performs operations for a device driver, the operations comprising:
prior to transitioning the first GPU into the low-power state, saving a GPU configuration state of the first GPU in the video memory in the first GPU; and
restoring the GPU configuration state to the first GPU from the video memory in the first GPU when restoring the first GPU from the low-power state.

### Claim 16 (depends on 10)

The computer system of claim 10, further comprising:
a memory;
wherein the processor further performs operations for:
saving an interface configuration state of an interface with the first GPU in the memory; and
concurrently restoring the interface configuration state from the memory when restoring the GPU configuration state from the video memory.

### Claim 17 (depends on 10)

The computer system of claim 10, wherein, when switching from using the first GPU to drive the display to using the second GPU to drive the display, the switching mechanism performs operations for:
copying pixel values from a first framebuffer for the first GPU to a second framebuffer for the second GPU; and
initiating a switch from the first framebuffer to the second framebuffer as a signal source for driving the display.

### Claim 18 (depends on 10)

The computer system of claim 10, the first GPU is a high-power GPU and the second GPU is a low-power GPU.

### Claim 19

A non-transitory computer-readable storage medium storing instructions that, when executed by a computer, cause the computer to perform a method for driving a display in the computer, the method comprising:
driving a display with a first GPU;
switching from using the first GPU to drive the display to using a second GPU to drive the display; and
transitioning the first GPU into a low-power state, wherein transitioning the first GPU into the low-power state comprises powering off the first GPU and an interface with the first GPU, and maintaining power to video memory of the first GPU.

### Claim 20 (depends on 19)

The computer-readable storage medium of claim 19, further comprising:
detecting a disabling condition for the first GPU; and
based on detecting the disabling condition, performing the switching and transitioning operations.

### Claim 21 (depends on 19)

The computer-readable storage medium of claim 19, further comprising:
when the first GPU is in the low-power state, intercepting a graphics call to the first GPU;
restoring the first GPU from the low-power state;
switching from using the second GPU to drive the display to using the first GPU to drive the display; and
directing the graphics call to the first GPU.

### Claim 22 (depends on 21)

The computer-readable storage medium of claim 21, further comprising:
prior to transitioning the first GPU into the low-power state, saving a GPU configuration state of the first GPU in a video memory of the first GPU,
wherein restoring the first GPU from the low-power state comprises restoring the GPU configuration state from the video memory.
