Tiered Memory Interface for Thread Blocking Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Tiered memory systems face challenges such as poor application software portability and overhead due to blocking other threads during slow memory access, which existing technologies fail to address effectively.
Innovation Solution
A lightweight memory interface that exposes tiered memory access, enabling improved application performance and energy efficiency by allowing the system to detect slow memory accesses and adapt to memory region characteristics on a per-access basis, thereby avoiding blocking other threads and reducing reliance on OS scheduling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If a tiered memory system is implemented to reduce costs, then memory capacity and cost-effectiveness are improved, but application software portability deteriorates and system complexity increases
Solution Approach 1:
The patent introduces a memory interface as an intermediary layer between the application software and the tiered memory system. This interface abstracts the complexity of tiered memory management, providing a unified access method that maintains software portability while enabling cost-effective large-memory systems through tiered architecture.
2Quantity of substance
If a tiered memory system is implemented to reduce costs, then memory capacity and cost-effectiveness are improved, but application software portability deteriorates
Solution Approach 1:
The memory interface is designed with universal functionality that works across different tiered memory configurations and application software. It provides a standardized interface that can adapt to various memory tiering schemes while maintaining consistent software behavior, thus improving both cost-effectiveness and software portability simultaneously.
3Reliability
If the system waits for slow tier memory access to complete before servicing other threads, then memory access accuracy is maintained, but thread execution efficiency deteriorates due to blocking overhead
Solution Approach 1:
The system performs preliminary detection of memory access characteristics before actually accessing the data. By detecting slow memory accesses in advance and identifying their characteristics, the system can take preliminary actions such as prefetching data or adjusting access strategies, thereby maintaining memory access accuracy while reducing blocking overhead and improving thread execution efficiency.
Data Source
AI summary
A tier identification (TID) is to indicate a characteristic of a memory region associated with a virtual address in a tiered memory system. A thread may be serviced according to a first path based on the TID indicating a first characteristic. The thread may be serviced according to a second path based on the TID indicating a second characteristic.


