Translation Table Share Bits for Memory Block Consolidation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data compression methods in computer systems fail to efficiently manage memory by not fully utilizing the potential for sharing identical or similar memory blocks, leading to suboptimal memory usage.

Innovation Solution

A translation table with share and delta bits, along with reuse bits in memory blocks, identifies and enables sharing of identical or similar memory blocks, allowing multiple entries to reference the same block, thereby freeing up memory and enhancing compression efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If multiple translation table entries reference separate memory blocks, then address translation is achieved, but memory usage is suboptimal due to duplicate storage of identical data

Engineering Contradiction:
Improvememory usageVSAvoidtranslation table structure
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

Multiple translation table entries that reference identical memory blocks are merged to point to the same memory block, eliminating duplicate storage. The system detects when different translation table entries map to identical physical memory blocks and consolidates these references, thereby reducing overall memory usage while maintaining address translation functionality.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

A single memory block is made universal by allowing multiple translation table entries to reference it simultaneously. The memory block serves multiple purposes and multiple address spaces at the same time, enabling one memory block to fulfill the role of what would traditionally require multiple separate blocks, thus optimizing memory utilization.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Quantity of substance

If data compression is applied to reduce memory storage, then memory space is reduced, but identical parts of data may remain in multiple blocks

Engineering Contradiction:
Improvememory spaceVSAvoidcompression efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The system implements a feedback mechanism that continuously monitors memory block references and identifies when identical or similar data exists in multiple memory blocks. This feedback loop enables the system to detect duplication patterns and trigger consolidation operations, improving compression efficiency by eliminating redundant data across memory blocks.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The translation table structure is modified by adding share and delta bits to entries, changing the parameters of the translation table to enable identification and sharing of identical data fragments. This parameter change allows the system to track and consolidate duplicate data, thereby improving overall compression efficiency beyond what traditional compression methods achieve.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8954684B2Translation table and method for compressed data
Publication Date: 2015.02.10 LENOVO GLOBAL TECHNOLOGIES SWITZERLAND INTERNATIONAL GMBH
  • US8954684B2 patent drawing
  • US8954684B2 patent drawing
  • US8954684B2 patent drawing

AI summary

A translation table has entries that each include a share bit and a delta bit, with pointers that point to a memory block that includes reuse bits. When two translation table entries reference identical fragments in a memory block, one of the translation table entries is changed to refer to the same memory block referenced in the other translation table entry, which frees up a memory block. The share bit is set to indicate a translation table entry is sharing its memory block with another translation table entry. In addition, a translation table entry may include a private delta in the form of a pointer that references a memory fragment in the memory block that is not shared with other translation table entries. When a translation table has a private delta, its delta bit is set.