In-Memory Popcount Processing for Data Transfer Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current real-time analytics frameworks face inefficiencies due to the need for extensive data transfer between memory and CPU for POPCOUNT and logical bitwise operations, leading to constrained performance and energy consumption in hyperscale data centers.

Innovation Solution

Implementing a Processing-In-Memory (PIM) model within a memory module, which includes a controller to execute POPCOUNT and logical bitwise operations directly within the memory, reducing the need for data transfer by using a hardware-based reduction tree and specialized registers for result storage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data transfer between memory and CPU is performed for POPCOUNT and logical bitwise operations, then the operations can be executed, but system performance is constrained and energy consumption increases

Engineering Contradiction:
Improvesystem performanceVSAvoidenergy consumption
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent merges the memory module and processing functionality by integrating a controller within the memory module that can execute POPCOUNT and logical bitwise operations directly on stored data. This combining of storage and computation resources eliminates the need for separate CPU processing, thereby improving system performance and reducing energy consumption associated with data transfer.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent segments the processing tasks by identifying specific operations (POPCOUNT and logical bitwise operations) that can be performed within the memory module itself. By separating these specific computation tasks from general CPU processing and handling them locally within the memory controller, the system reduces redundant data transfers and improves overall efficiency.

Inventive Principle:
Principle #1Segmentation

2Productivity

If data is transferred between memory and CPU for processing, then operations can be completed, but redundant data transfers occur reducing efficiency

Engineering Contradiction:
Improveprocessing efficiencyVSAvoiddata transfer time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The memory module performs self-service by executing POPCOUNT and logical bitwise operations internally through its integrated controller. This self-processing capability eliminates the need for data to be transferred to the CPU and back, thereby reducing data transfer time and improving processing efficiency without requiring external intervention.

Inventive Principle:
Principle #25Self-service

3Measurement precision

If POPCOUNT operations are performed on the host CPU, then accurate results are obtained, but the need for data transfer reduces productivity

Engineering Contradiction:
ImprovePOPCOUNT accuracyVSAvoidoperation throughput
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent combines the memory storage function with the POPCOUNT processing function by integrating a controller within the memory module. This allows the memory system to perform POPCOUNT operations directly on stored bit vectors, maintaining measurement precision while dramatically improving operation throughput by eliminating data transfer requirements.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9836277B2In-memory popcount support for real time analytics
Publication Date: 2017.12.05 SAMSUNG ELECTRONICS CO LTD
  • US9836277B2 patent drawing
  • US9836277B2 patent drawing
  • US9836277B2 patent drawing

AI summary

A Processing-In-Memory (PIM) model in which computations related to the POPCOUNT and logical bitwise operations are implemented within a memory module and not within a host Central Processing Unit (CPU). The in-memory executions thus eliminate the need to shift data from large bit vectors throughout the entire system. By off-loading the processing of these operations to the memory, the redundant data transfers over the memory-CPU interface are greatly reduced, thereby improving system performance and energy efficiency. A controller and a dedicated register in the logic die of the memory module operate to interface with the host and provide in-memory executions of popcounting and logical bitwise operations requested by the host. The PIM model of the present disclosure thus frees up the CPU for other tasks because many real-time analytics tasks can now be executed within a PIM-enabled memory itself. The memory module may be a Three Dimensional Stack (3DS) memory or any other semiconductor memory.