System and method for pre-fetching for pointer linked data structures
US6782454B1 · kind B1 · utility
Assignee
Inventor
Key dates
| Filing date | Sep 29, 2000 |
| Grant date | Aug 24, 2004 |
| Priority date | — |
| Expiry date | Feb 13, 2022 |
Classification
- Technology area (CPC G)Physics
- CPC primaryG06F2212/6028
- WIPO fieldComputer technology
- WIPO sectorElectrical engineering
Abstract
A system and method are provided for efficiently prefetching data in a pointer linked data structure (140). In one embodiment, a data processing system (100) is provided including a processor (110) capable of executing a program, a main-memory (115) and a prefetch engine (175) configured to prefetch data from a plurality of locations in main-memory in response to a prefetch request from the processor. When the data in main-memory (115) has a linked-data-structure having a number nodes (145) each with data (150) stored therein, prefetch engine (175) is configured to traverse the linked-data-structure and prefetch data from the nodes. The prefetch engine (175) is configured to determine from data contained in a prefetched first node (145A) and an offset value a new starting address for a second node (145B) to be prefetched. In one embodiment, the prefetch engine (175) includes a number of sets of prefetch registers (180), one set of prefetch registers for each prefetch request from processor (110) that is yet to be completed. Each set of prefetch registers (180) includes (i) a prefetch address register (190); (ii) an offset register (195); (iii) a termination register (200); (iv) a s…
Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.