In-Place Decompression Buffer Sizing With Safe IPS Offset

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing in-place safe decompression algorithms require significant memory resources due to the need for dual buffers, limiting system capability as they ensure a wide safety margin to prevent data overwrite, which reduces compression ratios and efficiency.

Innovation Solution

Calculating and storing an in-place safe (IPS) offset at compression time allows for decompression in a single memory buffer, ensuring no data overwrite by determining a minimum buffer size that accounts for the maximum offset between read and write pointers during decompression.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If dual-buffer memory allocation is used to prevent data overwrite, then reliability is improved, but memory usage increases significantly

Engineering Contradiction:
Improvedata overwrite preventionVSAvoidmemory usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges the input buffer and output buffer into a single memory buffer, allowing decompression to occur in-place. By carefully managing read and write pointer positions and calculating safe decomposition offsets, the system prevents data overwrite while eliminating the need for separate dual-buffer allocation, thus reducing memory usage while maintaining reliability

Inventive Principle:
Principle #5Merging (Combining)

2Reliability

If wide safety margin is used in in-place safe decompression, then reliability is improved, but compression ratio decreases

Engineering Contradiction:
Improvedata overwrite preventionVSAvoidcompression ratio
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The patent dynamically adjusts the safety margin parameters based on the specific decompression algorithm and data characteristics. By calculating precise decomposition offsets rather than using fixed wide safety margins, the system maintains reliable overwrite prevention while minimizing the impact on compression ratios, allowing for more efficient space utilization

Inventive Principle:
Principle #35Parameter changes

3Reliability

If dual-buffer memory allocation is used, then data overwrite prevention is improved, but system capability is reduced

Engineering Contradiction:
Improvedata overwrite preventionVSAvoidsystem capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

By combining input and output operations into a single memory buffer with intelligent pointer management, the system frees up memory resources that were previously tied up in dual-buffer allocation. This increased available memory enhances system capability to support other functions and improves overall system adaptability and versatility

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10768861B1In-place safe decompression
Publication Date: 2020.09.08 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10768861B1 patent drawing
  • US10768861B1 patent drawing
  • US10768861B1 patent drawing

AI summary

A method for providing in-place safe decompression of a data stream includes utilizing a stored offset to allocate a memory space for a decompression operation. The stored offset represents a maximum offset by which a write pointer position of an output stream exceeds a read pointer position for a corresponding input stream during in-place decompression of the compressed data stream.