IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
UP-0750266
(2007-05-17)
|
등록번호 |
US-7831800
(2010-11-25)
|
발명자
/ 주소 |
|
출원인 / 주소 |
|
인용정보 |
피인용 횟수 :
3 인용 특허 :
5 |
초록
▼
A processor system (100) includes a central processing unit (102) and a prefetch engine (110). The prefetch engine (110) is coupled to the central processing unit (102). The prefetch engine (110) is configured to detect, when data associated with the central processing unit (102) is read from a memo
A processor system (100) includes a central processing unit (102) and a prefetch engine (110). The prefetch engine (110) is coupled to the central processing unit (102). The prefetch engine (110) is configured to detect, when data associated with the central processing unit (102) is read from a memory (114), a stride pattern in an address stream based upon whether sums of a current stride and a previous stride are equal for a number of consecutive reads. The prefetch engine (110) is also configured to prefetch, for the central processing unit (102), data from the memory (114) based on the detected stride pattern.
대표청구항
▼
What is claimed is: 1. A method, comprising: detecting, when reading data from a memory associated with a device, a stride pattern in an address stream in response to determining a sum of a current stride and a previous stride associated with a first read is equal to a sum of a current stride and a
What is claimed is: 1. A method, comprising: detecting, when reading data from a memory associated with a device, a stride pattern in an address stream in response to determining a sum of a current stride and a previous stride associated with a first read is equal to a sum of a current stride and a previous stride associated with a second read, where the first read and the second read are consecutive reads; and prefetching, for the device, data from the memory based on the stride pattern. 2. The method of claim 1, further comprising: incrementing a confidence counter in response to detecting the stride pattern. 3. The method of claim 2, wherein the prefetching further comprises: prefetching, for a tracked thread, data from the memory at a next address in the memory when the confidence counter exceeds a threshold value, wherein the next address corresponds to a sum of a current address of the tracked thread and a next stride or a sum-of-strides included in the stride pattern. 4. The method of claim 1, further comprising: allocating a new entry in a memory prefetch table when a read from the memory does not match one or more tracked threads, wherein the new entry corresponds to a respective prefetch engine. 5. The method of claim 4, wherein the allocating further comprises: determining whether there is room in the memory prefetch table for an additional entry when the read from the memory does not match the one or more tracked threads; and reassigning a least recently used entry in the memory prefetch table when the read from the memory does not match the one or more tracked threads and there is no room in the memory prefetch table. 6. The method of claim 4, wherein allocating further comprises: determining whether a data prefetch crosses a page boundary; and invalidating a respective entry in the memory prefetch table when the data prefetch crosses the page boundary. 7. The method of claim 1, wherein the device is a central processing unit or an input/output device. 8. The method of claim 1, wherein the stride pattern is an alternating stride pattern. 9. A memory subsystem, comprising: a memory; and a prefetch engine coupled to the memory, wherein the prefetch engine is configured to: detect, when data associated with a device is read from the memory, a stride pattern in an address stream in response to determining a sum of a current stride and a previous stride associated with a first read is equal to a sum of a current stride and a previous stride associated with a second read, where the first read and the second read are consecutive reads; and prefetch, for the device, data from the memory based on the stride pattern. 10. The memory subsystem of claim 9, wherein the prefetch engine is further configured to: increment a confidence counter in response to detecting the stride pattern. 11. The memory subsystem of claim 10, wherein the prefetch engine is further configured to: prefetch data for a tracked thread from the memory at a next address in the memory when the confidence counter exceeds a threshold value, wherein the next address corresponds to a sum of a current address of the tracked thread and a next stride or a sum-of-strides included in the stride pattern. 12. The memory subsystem of claim 9, further comprising: logic configured to allocate a new entry in a memory prefetch table when a read from the memory does not match one or more tracked threads. 13. The memory subsystem of claim 12, wherein the logic is further configured to: determine whether there is room in the memory prefetch table for an additional entry when the read from the memory does not match the one or more tracked threads; and reassign a least recently used entry in the memory prefetch table when the read from the memory does not match the one or more tracked threads and there is no room in the memory prefetch table. 14. The memory subsystem of claim 12, wherein the logic is further configured to: determine whether a data prefetch crosses a page boundary; and invalidate a respective entry in the memory prefetch table when the data prefetch crosses the page boundary. 15. The memory subsystem of claim 9, wherein the device is a central processing unit or an input/output device. 16. The memory subsystem of claim 9, wherein the stride pattern is an alternating stride pattern. 17. A processor system, comprising: a central processing unit; and a prefetch engine coupled to the central processing unit, wherein the prefetch engine is configured to: detect, when data associated with the central processing unit is read from a memory, a stride pattern in an address stream in response to determining a sum of a current stride and a previous stride associated with a first read is equal to a sum of a current stride and a previous stride associated with a second read, where the first read and the second read are consecutive reads; and prefetch, for the central processing unit, data from the memory based on the stride pattern. 18. The processor system of claim 17, wherein the prefetch engine is further configured to: increment a confidence counter in response to detecting the stride pattern. 19. The processor system of claim 18, wherein the prefetch engine is further configured to: prefetch, for a tracked thread, data from the memory at a next address in the memory when the confidence counter exceeds a threshold value, wherein the next address corresponds to a sum of a current address of the tracked thread and a next stride or a sum-of-strides included in the stride pattern. 20. The processor system of claim 19, wherein the stride pattern is an alternating stride pattern.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.