Virtual Memory Pagelets for Low-Latency Paging and TLB Translation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional computing systems experience delays and inefficiencies due to the frequent relocation of large virtual pages between physical and secondary storage, leading to bandwidth limitations, power issues, and performance bottlenecks, particularly when large pages are transferred.
Innovation Solution
Implementing a virtual memory system that segments pages into smaller pagelets, allowing individual pagelets to be transferred between memory and secondary storage with reduced latency, with mechanisms to manage pagelet states and translations using a pagelet translation lookaside buffer.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If large virtual pages are transferred between physical and secondary storage, then memory capacity is improved, but transfer latency and bandwidth usage deteriorate
Solution Approach 1:
The patent divides a large virtual page into multiple smaller pagelets (e.g., 4KB pagelets from a 64KB or 1MB page). This segmentation allows the system to transfer only the specific pagelets that need to be accessed or modified, rather than transferring entire large pages. The page table is enhanced with pagelet state indicators (validity and dirty bits) for each pagelet, enabling fine-grained control over which pagelets are paged in or out, thereby reducing transfer latency and bandwidth consumption while maintaining the capacity benefits of large pages.
2Quantity of substance
If large virtual pages are transferred between physical and secondary storage, then memory capacity is improved, but bandwidth consumption deteriorates
Solution Approach 1:
By segmenting large pages into smaller pagelets with individual validity and dirty state indicators, the system can selectively transfer only the necessary pagelets between physical and secondary storage. This prevents wasteful bandwidth consumption that would occur with traditional large-page transfers, where entire pages must be moved even if only small portions are modified or accessed.
3Loss of time
If individual pagelets are transferred instead of entire pages, then transfer latency is reduced, but system complexity increases
Solution Approach 1:
The patent introduces pagelet-level granularity by dividing pages into pagelets and adding pagelet state indicators to page table entries. This segmentation enables selective transfer of individual pagelets, reducing latency for accessing or modifying specific regions of a page without requiring transfer of the entire page, thus improving performance while managing complexity through structured state tracking.
Solution Approach 2:
The patent applies local quality by maintaining individual validity and dirty state indicators for each pagelet within a page, rather than a single state for the entire page. This allows the system to treat different regions of a page differently, transferring or retaining only those pagelets that require it, thereby optimizing transfer latency for local modifications while maintaining overall system organization.
4Productivity
If pagelet state indicators are maintained for each pagelet, then transfer efficiency is improved, but page table size increases
Solution Approach 1:
The patent segments the page table structure to include pagelet state indicators (validity and dirty bits) for each pagelet within a page. While this increases the page table size compared to traditional page-level tracking, it enables fine-grained control over pagelet transfers, significantly improving transfer efficiency by allowing the system to identify and transfer only the specific pagelets that need to be paged in or out, rather than entire pages.
Data Source
AI summary
A page in a memory is sectioned into a plurality of pagelets (sub-pages) of sizes smaller than the page to speed up data transfers. The pagelets in the page are used to store, transport and process data, wherein individual pagelets are transferred between a memory and a secondary storage or transferred between a memory and a network via a network interface. Pagelets may be transferred in an order that prioritizes the transfer of critical chunks of data as demanded by an agent. Pagelets of a page share one entry in a page table that also includes a virtual to physical translation. A pagelet translation lookaside buffer that handles pages having pagelets is used to cache frequently used translations and a critical pagelet determiner is used to indicate the critical pagelet involved in a transaction.


