CPU-GPU Task Distribution for Faster OS Decompression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current start-up routines for computing devices rely solely on the central processing unit (CPU) for decompressing the operating system image, which can be inefficient due to the CPU's limited arithmetic logic units (ALUs) compared to the graphics processing unit (GPU, leading to slower boot-up times.

Innovation Solution

Distributing the decompression tasks between the CPU and GPU, where the CPU directs the GPU to decompress portions of the compressed operating system image, leveraging the GPU's greater number of ALUs for faster decompression, and dynamically adjusting the decompression load based on conditions to optimize start-up time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the CPU performs decompression tasks alone during start-up routine, then the device structure remains simple, but the start-up time increases and processing efficiency decreases

Engineering Contradiction:
Improvedecompression speedVSAvoidprocessing task distribution complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the decompression task into multiple portions and distributes them between the CPU and GPU. The compressed operating system image is split into segments, with the CPU copying portions to volatile memory and the GPU performing decompression on specific portions. This segmentation allows parallel processing while maintaining manageable system complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent makes the GPU multi-functional by enabling it to perform decompression tasks in addition to its traditional graphics processing functions. The GPU's existing parallel processing architecture is leveraged for decompression, allowing one component to serve multiple purposes and improving overall system efficiency without adding dedicated decompression hardware.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Loss of time

If the GPU is utilized for decompression tasks, then the start-up time decreases, but the coordination complexity between CPU and GPU increases

Engineering Contradiction:
Improvestart-up timeVSAvoidtask distribution coordination
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent performs preliminary actions by having the CPU copy specific portions of the compressed operating system image to volatile memory before the GPU begins decompression. This preparation ensures that the GPU has the necessary data ready in fast memory, enabling immediate parallel decompression and reducing overall start-up time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms where the CPU monitors the decompression process and dynamically adjusts task distribution. The system evaluates whether to increase or decrease the decompression load on the GPU based on system conditions, allowing adaptive optimization of the CPU-GPU coordination while managing complexity.

Inventive Principle:
Principle #23Feedback

3Productivity

If more decompression load is assigned to the GPU, then the decompression speed increases, but the GPU resource consumption increases

Engineering Contradiction:
Improvedecompression throughputVSAvoidGPU energy consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent dynamically adjusts the decompression load assigned to the GPU based on system conditions and available resources. Rather than statically assigning all decompression tasks to the GPU, the system flexibly distributes portions of the compressed image between CPU and GPU, optimizing the balance between decompression speed and energy consumption in real-time.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes operational parameters by adjusting the size and distribution of decompression portions assigned to the GPU. The system modifies these parameters dynamically, increasing GPU load when high performance is needed and decreasing it when energy conservation is prioritized, thereby optimizing the trade-off between throughput and energy usage.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9418397B2Start-up processing task distribution among processing units
Publication Date: 2016.08.16 HARMAN INT IND INC
  • US9418397B2 patent drawing
  • US9418397B2 patent drawing
  • US9418397B2 patent drawing

AI summary

Embodiments are disclosed for distributing processing tasks during a start up routine for a computing device between a central processing unit (CPU) and a graphics processing unit (GPU). In some embodiments, a method of loading an operating system for a computing device with a CPU includes receiving power from a power supply and locating a master boot record in a non-volatile storage device. The method further includes copying a first portion of a compressed operating system image from an address indicated by the master boot record to a location in a volatile storage device and instructing a GPU to decompress the first portion of the compressed operating system image in the volatile storage device.