Processing-in-memory sparse matrix operations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional computer architectures face increased data transfer latency and inefficiency when performing matrix operations on sparse matrices due to remote processing units being far from memory, leading to wasted computational resources and memory access energy issues.

Innovation Solution

Implementing a processing-in-memory (PIM) architecture that allows the processing-in-memory component to access sparse matrices stored in memory, identify non-zero elements, and perform operations locally, reducing the need for frequent data retrieval and minimizing traffic between the host processor and memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional remote processing architecture is used, then processing capability is provided, but data transfer latency increases and memory access energy increases

Engineering Contradiction:
Improveprocessing capabilityVSAvoiddata transfer latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent merges the processing function with the memory function by integrating processing-in-memory (PIM) cores directly into the memory module. This combines storage and computation in a single unified component, eliminating the need for separate remote processing units and reducing data transfer latency while maintaining processing capability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces an intermediary PIM core that acts as a mediator between memory and the host processor. This intermediary component performs computations directly within memory, reducing the communication distance and latency between data storage and processing operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If conventional remote processing architecture is used, then processing capability is provided, but memory access energy increases

Engineering Contradiction:
Improveprocessing capabilityVSAvoidmemory access energy
Core Design Contradiction:
ProductivityVSUse of energy by stationary object

Solution Approach 1:

By merging processing and memory functions into a single integrated PIM module, the patent eliminates repeated data transfers between remote processor and memory, thereby reducing memory access energy consumption while preserving processing capability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The PIM core serves as an intermediary that performs computations within memory proximity, reducing the energy-intensive data transfer operations between remote processing units and memory, thus lowering overall memory access energy consumption.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If dense matrix operations are applied to sparse matrices, then computational resources are allocated, but computational resources and processing time are wasted on handling zeroes

Engineering Contradiction:
Improvecomputational resource utilizationVSAvoidcomputational resource waste
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent applies local quality by implementing sparse matrix representations (CSR, CSC, COO) that store only non-zero elements with their positions, rather than storing the entire dense matrix. This allows the system to focus computational resources only on relevant non-zero values, eliminating waste on zero elements while maintaining processing capability.

Inventive Principle:
Principle #3Local quality

4Productivity

If sparse matrix operations are performed by host processor, then processing is completed, but host processor cannot perform additional tasks due to repeated data retrieval

Engineering Contradiction:
Improvetask completionVSAvoidhost processor idle time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent merges processing functionality into the memory module itself, allowing sparse matrix operations to be executed by PIM cores without requiring host processor intervention for each data retrieval. This enables the host processor to perform additional tasks concurrently while maintaining task completion.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The PIM core acts as an intermediary that autonomously performs sparse matrix operations using stored data, freeing the host processor from repeated data retrieval tasks. The PIM core can execute computations independently, allowing the host processor to undertake additional tasks without compromising task completion.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12254195B2Sparse matrix operations using processing-in-memory
Publication Date: 2025.03.18 ADVANCED MICRO DEVICES INC
  • US12254195B2 patent drawing
  • US12254195B2 patent drawing
  • US12254195B2 patent drawing

AI summary

Sparse matrix operations using processing-in-memory is described. In accordance with the described techniques, a processing-in-memory component of a memory module receives a request for a vector element stored at a first location in memory of the memory module. The processing-in-memory component identifies an index value for a non-zero element in a sparse matrix using a representation of the sparse matrix stored at a second location in the memory. The processing-in-memory component then outputs a result that includes the vector element by retrieving the vector element from the first location in memory using the index value.