Store stream prefetching in a microprocessor
    1.
    发明授权
    Store stream prefetching in a microprocessor 失效
    在微处理器中存储流预取

    公开(公告)号:US07716427B2

    公开(公告)日:2010-05-11

    申请号:US11969677

    申请日:2008-01-04

    IPC分类号: G06F12/00 G06F9/38

    摘要: In a microprocessor having a load/store unit and prefetch hardware, the prefetch hardware includes a prefetch queue containing entries indicative of allocated data streams. A prefetch engine receives an address associated with a store instruction executed by the load/store unit. The prefetch engine determines whether to allocate an entry in the prefetch queue corresponding to the store instruction by comparing entries in the queue to a window of addresses encompassing multiple cache blocks, where the window of addresses is derived from the received address. The prefetch engine compares entries in the prefetch queue to a window of 2M contiguous cache blocks. The prefetch engine suppresses allocation of a new entry when any entry in the prefetch queue is within the address window. The prefetch engine further suppresses allocation of a new entry when the data address of the store instruction is equal to an address in a border area of the address window.

    摘要翻译: 在具有加载/存储单元和预取硬件的微处理器中,预取硬件包括预取队列,其包含指示分配的数据流的条目。 预取引擎接收与由加载/存储单元执行的存储指令相关联的地址。 预取引擎通过将队列中的条目与包含多个高速缓存块的地址的窗口进行比较来确定是否对与存储指令相对应的预取队列中的条目进行分配,其中地址窗口从接收到的地址导出。 预取引擎将预取队列中的条目与2M个连续高速缓存块的窗口进行比较。 当预取队列中的任何条目都在地址窗口内时,预取引擎抑制新条目的分配。 当存储指令的数据地址等于地址窗口的边界区域中的地址时,预取引擎进一步抑制新条目的分配。

    STORE STREAM PREFETCHING IN A MICROPROCESSOR
    2.
    发明申请
    STORE STREAM PREFETCHING IN A MICROPROCESSOR 失效
    微处理器中的STORE STREAM PREFETCHING

    公开(公告)号:US20090070556A1

    公开(公告)日:2009-03-12

    申请号:US11969677

    申请日:2008-01-04

    IPC分类号: G06F9/38

    摘要: In a microprocessor having a load/store unit and prefetch hardware, the prefetch hardware includes a prefetch queue containing entries indicative of allocated data streams. A prefetch engine receives an address associated with a store instruction executed by the load/store unit. The prefetch engine determines whether to allocate an entry in the prefetch queue corresponding to the store instruction by comparing entries in the queue to a window of addresses encompassing multiple cache blocks, where the window of addresses is derived from the received address. The prefetch engine compares entries in the prefetch queue to a window of 2M contiguous cache blocks. The prefetch engine suppresses allocation of a new entry when any entry in the prefetch queue is within the address window. The prefetch engine further suppresses allocation of a new entry when the data address of the store instruction is equal to an address in a border area of the address window.

    摘要翻译: 在具有加载/存储单元和预取硬件的微处理器中,预取硬件包括预取队列,其包含指示分配的数据流的条目。 预取引擎接收与由加载/存储单元执行的存储指令相关联的地址。 预取引擎通过将队列中的条目与包含多个高速缓存块的地址的窗口进行比较来确定是否对与存储指令相对应的预取队列中的条目进行分配,其中地址窗口从接收到的地址导出。 预取引擎将预取队列中的条目与2M个连续高速缓存块的窗口进行比较。 当预取队列中的任何条目都在地址窗口内时,预取引擎抑制新条目的分配。 当存储指令的数据地址等于地址窗口的边界区域中的地址时,预取引擎进一步抑制新条目的分配。

    Store stream prefetching in a microprocessor
    3.
    发明授权
    Store stream prefetching in a microprocessor 失效
    在微处理器中存储流预取

    公开(公告)号:US07380066B2

    公开(公告)日:2008-05-27

    申请号:US11054871

    申请日:2005-02-10

    IPC分类号: G06F13/28 G06F12/00

    摘要: In a microprocessor having a load/store unit and prefetch hardware, the prefetch hardware includes a prefetch queue containing entries indicative of allocated data streams. A prefetch engine receives an address associated with a store instruction executed by the load/store unit. The prefetch engine determines whether to allocate an entry in the prefetch queue corresponding to the store instruction by comparing entries in the queue to a window of addresses encompassing multiple cache blocks, where the window of addresses is derived from the received address. The prefetch engine compares entries in the prefetch queue to a window of 2M contiguous cache blocks. The prefetch engine suppresses allocation of a new entry when any entry in the prefetch queue is within the address window. The prefetch engine further suppresses allocation of a new entry when the data address of the store instruction is equal to an address in a border area of the address window.

    摘要翻译: 在具有加载/存储单元和预取硬件的微处理器中,预取硬件包括预取队列,其包含指示分配的数据流的条目。 预取引擎接收与由加载/存储单元执行的存储指令相关联的地址。 预取引擎通过将队列中的条目与包含多个高速缓存块的地址的窗口进行比较来确定是否对与存储指令相对应的预取队列中的条目进行分配,其中地址窗口从接收到的地址导出。 预取引擎将预取队列中的条目与两个连续高速缓存块的窗口进行比较。 当预取队列中的任何条目都在地址窗口内时,预取引擎抑制新条目的分配。 当存储指令的数据地址等于地址窗口的边界区域中的地址时,预取引擎进一步抑制新条目的分配。

    Data stream prefetching in a microprocessor
    4.
    发明授权
    Data stream prefetching in a microprocessor 失效
    数据流在微处理器中预取

    公开(公告)号:US07904661B2

    公开(公告)日:2011-03-08

    申请号:US11953637

    申请日:2007-12-10

    IPC分类号: G06F12/00 G06F13/00

    CPC分类号: G06F12/0862 G06F2212/6028

    摘要: A method of prefetching data in a microprocessor includes identifying a data stream associated with a process and determining a depth associated with the data stream based upon prefetch factors including the number of currently concurrent data streams and data consumption rates associated with the concurrent data streams. Data prefetch requests are allocated with the data stream to reflect the determined depth of the data stream. Allocating data prefetch requests may include allocating prefetch requests for a number of cache lines away from the cache line currently being referenced, wherein the number of cache lines is equal to the determined depth. The method may include, responsive to determining the depth associated with a data stream, configuring prefetch hardware to reflect the determined depth for the identified data stream. Prefetch control bits in an instruction executed by the processor control the prefetch hardware configuration.

    摘要翻译: 在微处理器中预取数据的方法包括基于包括当前并发数据流的数量和与并发数据流相关联的数据消耗速率的预取因子来识别与进程相关联的数据流并确定与数据流相关联的深度。 数据预取请求被分配与数据流以反映确定的数据流的深度。 分配数据预取请求可以包括为当前被引用的高速缓存行分配多个高速缓存行的预取请求,其中高速缓存行的数量等于所确定的深度。 该方法可以响应于确定与数据流相关联的深度,配置预取硬件以反映所识别的数据流的确定的深度。 由处理器执行的指令中的预取控制位控制预取硬件配置。

    Data stream prefetching in a microprocessor
    5.
    发明授权
    Data stream prefetching in a microprocessor 失效
    数据流在微处理器中预取

    公开(公告)号:US07350029B2

    公开(公告)日:2008-03-25

    申请号:US11054889

    申请日:2005-02-10

    IPC分类号: G06F12/00 G06F13/00

    CPC分类号: G06F12/0862 G06F2212/6028

    摘要: A method of prefetching data in a microprocessor includes identifying a data stream associated with a process and determining a depth associated with the data stream based upon prefetch factors including the number of currently concurrent data streams and data consumption rates associated with the concurrent data streams. Data prefetch requests are allocated with the data stream to reflect the determined depth of the data stream. Allocating data prefetch requests may include allocating prefetch requests for a number of cache lines away from the cache line currently being referenced, wherein the number of cache lines is equal to the determined depth. The method may include, responsive to determining the depth associated with a data stream, configuring prefetch hardware to reflect the determined depth for the identified data stream. Prefetch control bits in an instruction executed by the processor control the prefetch hardware configuration.

    摘要翻译: 在微处理器中预取数据的方法包括基于包括当前并发数据流的数量和与并发数据流相关联的数据消耗速率的预取因子来识别与进程相关联的数据流并确定与数据流相关联的深度。 数据预取请求被分配与数据流以反映确定的数据流的深度。 分配数据预取请求可以包括为当前被引用的高速缓存行分配多个高速缓存行的预取请求,其中高速缓存行的数量等于所确定的深度。 该方法可以响应于确定与数据流相关联的深度,配置预取硬件以反映所识别的数据流的确定的深度。 由处理器执行的指令中的预取控制位控制预取硬件配置。

    System using stream prefetching history to improve data prefetching performance
    6.
    发明授权
    System using stream prefetching history to improve data prefetching performance 失效
    系统使用流预取历史来提高数据预取性能

    公开(公告)号:US07689775B2

    公开(公告)日:2010-03-30

    申请号:US12400052

    申请日:2009-03-09

    IPC分类号: G06F12/00

    摘要: Computer implemented method, system and computer program product for prefetching data in a data processing system. A computer implemented method for prefetching data in a data processing system includes generating attribute information of prior data streams by associating attributes of each prior data stream with a storage access instruction which caused allocation of the data stream, and then recording the generated attribute information. The recorded attribute information is accessed, and a behavior of a new data stream is modified using the accessed recorded attribute information.

    摘要翻译: 计算机实现方法,系统和计算机程序产品,用于在数据处理系统中预取数据。 一种用于在数据处理系统中预取数据的计算机实现方法包括通过将每个先前数据流的属性与导致数据流分配的存储访问指令相关联,然后记录所生成的属性信息来生成先前数据流的属性信息。 访问记录的属性信息,并且使用所访问的记录的属性信息来修改新的数据流的行为。

    Method and System Using Prefetching History to Improve Data Prefetching Performance
    7.
    发明申请
    Method and System Using Prefetching History to Improve Data Prefetching Performance 失效
    方法和系统使用预取历史来提高数据预取性能

    公开(公告)号:US20090164509A1

    公开(公告)日:2009-06-25

    申请号:US12400052

    申请日:2009-03-09

    IPC分类号: G06F12/00 G06F17/30

    摘要: Computer implemented method, system and computer program product for prefetching data in a data processing system. A computer implemented method for prefetching data in a data processing system includes generating attribute information of prior data streams by associating attributes of each prior data stream with a storage access instruction which caused allocation of the data stream, and then recording the generated attribute information. The recorded attribute information is accessed, and a behavior of a new data stream is modified using the accessed recorded attribute information.

    摘要翻译: 计算机实现方法,系统和计算机程序产品,用于在数据处理系统中预取数据。 一种用于在数据处理系统中预取数据的计算机实现方法包括通过将每个先前数据流的属性与导致数据流分配的存储访问指令相关联,然后记录所生成的属性信息来生成先前数据流的属性信息。 访问记录的属性信息,并且使用所访问的记录的属性信息来修改新的数据流的行为。

    Method using stream prefetching history to improve data prefetching performance.
    8.
    发明授权
    Method using stream prefetching history to improve data prefetching performance. 失效
    使用流预取历史来提高数据预取性能的方法。

    公开(公告)号:US07516279B2

    公开(公告)日:2009-04-07

    申请号:US11364620

    申请日:2006-02-28

    IPC分类号: G06F12/00

    摘要: Computer implemented method, system and computer program product for prefetching data in a data processing system. A computer implemented method for prefetching data in a data processing system includes generating attribute information of prior data streams by associating attributes of each prior data stream with a storage access instruction which caused allocation of the data stream, and then recording the generated attribute information. The recorded attribute information is accessed, and a behavior of a new data stream is modified using the accessed recorded attribute information.

    摘要翻译: 计算机实现方法,系统和计算机程序产品,用于在数据处理系统中预取数据。 一种用于在数据处理系统中预取数据的计算机实现方法包括通过将每个先前数据流的属性与导致数据流分配的存储访问指令相关联,然后记录所生成的属性信息来生成先前数据流的属性信息。 访问记录的属性信息,并且使用所访问的记录的属性信息来修改新的数据流的行为。