Processing in Memory Data Compression for Bandwidth Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional computer architectures experience increased data transfer latency, reduced data communication bandwidth, and higher energy consumption due to the distance between memory and remote processing units, especially when handling large data volumes, which hampers computational performance.

Innovation Solution

Implementing a Processing in Memory (PIM) component within the memory module to compress and decompress data locally, reducing the need for data transfer by storing compressed data in a dedicated block within the memory, thereby offloading compression and decompression tasks from the processing unit and conserving computational resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is transferred between memory and remote processing unit, then data communication is achieved, but data transfer latency increases and bandwidth reduces

Engineering Contradiction:
Improvedata transfer speedVSAvoidcommunication pathway length
Core Design Contradiction:
SpeedVSLength of moving object

Solution Approach 1:

The patent merges the processing unit with the memory module to create a PIM component, eliminating the need for long-distance data transfer between separate memory and processing units. This integration allows data processing to occur directly within the memory module, significantly reducing communication pathway length and improving data transfer speed.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The PIM component acts as an intermediary between the memory and the remote processing unit, handling data processing tasks locally before results need to be communicated back. This intermediary function reduces the volume of data that must traverse the long communication pathway between memory and remote processor.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Use of energy by moving object

If data is transferred between memory and remote processing unit, then data communication is achieved, but data communication energy increases

Engineering Contradiction:
Improvedata communication energyVSAvoidcommunication pathway length
Core Design Contradiction:
Use of energy by moving objectVSLength of moving object

Solution Approach 1:

By merging the processing unit with the memory module, the patent eliminates long-distance data transfers that consume significant energy. The PIM component processes data locally within the memory module, dramatically reducing the energy required for data communication over long pathways.

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If compression tasks are performed by the processing unit, then data compression is achieved, but computational resources are consumed

Engineering Contradiction:
Improvecompression efficiencyVSAvoidcomputational resource consumption
Core Design Contradiction:
ProductivityVSPower

Solution Approach 1:

The PIM component provides self-service by performing compression tasks locally within the memory module, eliminating the need for the remote processing unit to consume computational resources for compression. The data is compressed at the source without requiring additional processing power from the main CPU.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent extracts the compression function from the remote processing unit and places it within the memory module's PIM component. This extraction of the compression task from the main processor reduces computational resource consumption while maintaining compression efficiency.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12050531B2Data compression and decompression for processing in memory
Publication Date: 2024.07.30 ADVANCED MICRO DEVICES INC
  • US12050531B2 patent drawing
  • US12050531B2 patent drawing
  • US12050531B2 patent drawing

AI summary

In accordance with the described techniques for data compression and decompression for processing in memory, a page address is received by a processing in memory component that maps to a first location in memory where data of a page is maintained. The data of the page is compressed by the processing in memory component. Further, compressed data of the page is written by the processing in memory component to a compressed block device responsive to the compressed data satisfying one or more compressibility criteria. The compressed block device is a portion of the memory dedicated to storing data in a compressed form.