Multi-Core Image Compression with Slice-Based Work Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current encoding systems for remote computing sessions do not effectively utilize multiple processors or processing cores, leading to increased processing time and reduced frame rates, which negatively impacts user experience due to high bandwidth requirements and inefficient compression.

Innovation Solution

A multi-processor work manager allocates CPU threads to cores, dividing images into slices for parallel compression and re-assembling them into coherent images, dynamically balancing workloads to reduce cache thrashing and enhance compression speed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If compression algorithms are used to reduce bandwidth, then bandwidth usage decreases, but processing time increases

Engineering Contradiction:
Improvebandwidth usageVSAvoidprocessing time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent divides the image into multiple slices and assigns each slice to a different processor core for parallel compression. This segmentation allows the compression task to be distributed across multiple processing units, reducing the overall processing time while maintaining the bandwidth reduction benefits of compression.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from single-threaded sequential processing to multi-threaded parallel processing by utilizing multiple CPU cores. This dimensional change in processing architecture enables simultaneous compression of multiple image slices, effectively reducing processing time without compromising compression efficiency.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Manufacturing precision

If more processing time is allocated to compression, then compression quality improves, but frame rate decreases

Engineering Contradiction:
Improvecompression qualityVSAvoidframe rate
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

By segmenting the image into multiple slices and processing them in parallel across different cores, the system maintains high compression quality for each slice while the overall processing is completed faster, thus preserving frame rate.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent ensures continuous processing by having multiple cores work simultaneously on different slices without idle time. This parallel continuous action maintains high frame rates while applying quality compression algorithms to each slice.

Inventive Principle:
Principle #20Continuity of useful action

3Device complexity

If single processor compression is used, then system complexity remains low, but compression speed is insufficient

Engineering Contradiction:
Improvesystem complexityVSAvoidcompression speed
Core Design Contradiction:
Device complexityVSSpeed

Solution Approach 1:

The patent segments the compression workload into multiple independent slice-processing tasks that can be executed in parallel. This segmentation enables the use of multiple processors without significantly increasing system complexity, as each processor handles an independent slice with minimal coordination overhead.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses standard multi-threading and parallel processing mechanisms that are universally supported by modern processors. This approach leverages existing multi-core processor capabilities without requiring specialized hardware, thus maintaining relatively low system complexity while achieving faster compression speeds.

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

Data Source

PatentEP2414959B1Image compression acceleration using multiple processors
Publication Date: 2024.12.04 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP2414959B1 patent drawingFigure 1
  • EP2414959B1 patent drawingFigure 2
  • EP2414959B1 patent drawingFigure 3

AI summary

Systems, methods and computer readable media are disclosed for accelerating the compression of images on a multi-processor computer. In an embodiment, an image is divided into a plurality of slices, each slice having the same width as the image. These slices are provided to a work manager that maintains a thread for each processor. The work manager assigns each slice to a thread for processing in an efficient manner (such as the thread corresponding to the first available processor), and when an indication that the slice has been compressed for each slice is received, the work manager assembles the compressed image.