RLE Decompression Hardware Instruction for Higher Throughput

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current run-length encoding (RLE) decompression methods are inefficient due to lack of optimization at the hardware level, leading to slower performance in decompressing RLE-encoded values.

Innovation Solution

Implementation of a specialized hardware instruction, RLE_BURST, which decompresses RLE-encoded values by replicating bits based on run lengths using pipelined execution stages, resulting in a 64-bit decompression result with improved throughput.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If high-level computing instructions (Java, C++) are used for RLE decompression, then the decompression functionality is achieved, but the execution speed is slow due to lack of hardware-level optimization

Engineering Contradiction:
Improvedecompression speedVSAvoidinstruction complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent replaces software-based decompression (mechanical system of high-level instructions being compiled and executed) with a dedicated hardware instruction (RLE_BURST) that performs decompression directly in the processor. This substitution eliminates the overhead of compilation and interpretation, achieving hardware-level optimization for faster decompression speed.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Productivity

If conventional decompression methods are used, then implementation simplicity is maintained, but productivity is reduced due to slower processing

Engineering Contradiction:
Improvedecompression throughputVSAvoidimplementation complexity
Core Design Contradiction:
ProductivityVSEase of manufacture

Solution Approach 1:

The decompression process is segmented into distinct operational phases within the RLE_BURST instruction: bit extraction, run-length interpretation, bit replication, and result assembly. This segmentation allows each phase to be optimized independently while maintaining overall simplicity of implementation through a unified hardware instruction.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-configuring the hardware instruction with the run-length encoding format expectations, allowing the decompression to proceed directly without runtime interpretation. The instruction is designed to automatically handle the decomposition logic, eliminating the need for complex software implementation while improving throughput.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10534606B2Run-length encoding decompression
Publication Date: 2020.01.14 ORACLE INT CORP
  • US10534606B2 patent drawing
  • US10534606B2 patent drawing
  • US10534606B2 patent drawing

AI summary

Approaches are described to improve database performance by implementing a RLE decompression function at a low level within a general-purpose processor or an external block. Specifically, embodiments of a hardware implementation of an instruction for RLE decompression are disclosed. The described approaches improve performance by supporting the RLE decompression function within a processor and/or external block. Specifically, a RLE decompression hardware implementation is disclosed that produces a 64-bit RLE decompression result, with an example embodiment performing the task in two pipelined execution stages with a throughput of one per cycle. According to embodiments, hardware organization of narrow-width shifters operating in parallel, controlled by computed shift counts, is used to perform the decompression. Because of the decreased time required to perform RLE decompression according to embodiments, the performance of tasks that use embodiments described herein for decompression of run-length encoded data is made more efficient.