CACHING SYSTEMS AND METHODS WITH SIMULATED NVDRAM
First Claim
1. A system, comprising:
- a host processor operable to generate Input/Output (I/O) requests;
a host memory communicatively coupled to the host processor and sectioned into pages;
a host bus adapter (HBA) communicatively coupled to the host processor to process the I/O requests, wherein the HBA comprises a Dynamic Random Access Memory (DRAM) and a Solid State Memory (SSD); and
an HBA driver operable on the host processorwherein the DRAM is sectioned into pages mapped to pages of the host memory, and the SSD is sectioned into pages mapped to pages of the DRAM, andwherein the HBA driver is operable to detect when the pages of the DRAM are accessed, to determine a rate of page reclamation based on the detection, and to reclaim pages of data in the DRAM by moving pages of data from the DRAM into the pages of the SSD based on the determined rate of page reclamation.
6 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods presented herein provide for simulated NVDRAM operations. In a host system, a host memory is sectioned into pages. An HBA in the host system comprises a DRAM and an SSD. The DRAM and the SSD are also sectioned into pages and mapped to pages of the host memory. A host processor is operable to generate Input/Output (I/O) requests. An HBA driver is operable to process the I/O requests. The HBA driver is also operable to detect when the pages of the DRAM are accessed, to determine a rate of page reclamation based on the detection, and to reclaim pages of data in the DRAM by moving pages of data from the DRAM into the pages of the SSD based on the determined rate of page reclamation.
-
Citations
20 Claims
-
1. A system, comprising:
-
a host processor operable to generate Input/Output (I/O) requests; a host memory communicatively coupled to the host processor and sectioned into pages; a host bus adapter (HBA) communicatively coupled to the host processor to process the I/O requests, wherein the HBA comprises a Dynamic Random Access Memory (DRAM) and a Solid State Memory (SSD); and an HBA driver operable on the host processor wherein the DRAM is sectioned into pages mapped to pages of the host memory, and the SSD is sectioned into pages mapped to pages of the DRAM, and wherein the HBA driver is operable to detect when the pages of the DRAM are accessed, to determine a rate of page reclamation based on the detection, and to reclaim pages of data in the DRAM by moving pages of data from the DRAM into the pages of the SSD based on the determined rate of page reclamation. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method operable in a host system comprising a host processer, a host memory, a host bus adapter (HBA), and an HBA driver operable on the host processor, the HBA comprising a Dynamic Random Access Memory (DRAM) and a Solid State Memory (SSD), the method comprising:
-
sectioning the host memory into pages; sectioning the DRAM into pages; sectioning the SSD into pages; mapping the host memory pages to the DRAM pages; mapping the pages of the DRAM to the pages of the SSD to provide the host processor with direct access to the pages of the SSD through the DRAM; detecting when the pages of the DRAM are accessed; determining a rate of page reclamation based on the detection; and replacing pages of data in the DRAM by loading pages of data from the SSD into the pages of the DRAM based on the determined rate of page reclamation. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer readable medium comprising instructions that, when directed by a processor in a host system comprising a host memory, a host bus adapter (HBA), and an HBA driver, the HBA comprising a Dynamic Random Access Memory (DRAM) and a Solid State Memory (SSD), direct the processor to:
-
section the host memory into pages; section the DRAM into pages; section the SSD into pages; map the host memory pages to the DRAM pages; map the pages of the DRAM to the pages of the SSD to provide the host processor with direct access to the pages of the SSD through the DRAM; detect when the pages of the DRAM are accessed; determine a rate of page reclamation based on the detection; and reclaim pages of data in the DRAM by moving pages of data from the DRAM into the pages of the SSD based on the determined rate of page reclamation. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification