Instruction set architecture extensions for performing power versus performance tradeoffs
    31.
    发明授权
    Instruction set architecture extensions for performing power versus performance tradeoffs 失效
    用于执行功率与性能折衷的指令集架构扩展

    公开(公告)号:US08589665B2

    公开(公告)日:2013-11-19

    申请号:US12788940

    申请日:2010-05-27

    IPC分类号: G06F9/00

    摘要: Mechanisms are provided for processing an instruction in a processor of a data processing system. The mechanisms operate to receive, in a processor of the data processing system, an instruction, the instruction including power/performance tradeoff information associated with the instruction. The mechanisms further operate to determine power/performance tradeoff priorities or criteria, specifying whether power conservation or performance is prioritized with regard to execution of the instruction, based on the power/performance tradeoff information. Moreover, the mechanisms process the instruction in accordance with the power/performance tradeoff priorities or criteria identified based on the power/performance tradeoff information of the instruction.

    摘要翻译: 提供了用于处理数据处理系统的处理器中的指令的机制。 这些机制操作以在数据处理系统的处理器中接收指令,该指令包括与指令相关联的功率/性能权衡信息。 这些机制进一步操作以基于功率/性能折衷信息来确定功率/性能折衷优先级或标准,指定功率节省或关于指令的执行是否优先的性能。 此外,机构根据功率/性能折衷优先级或基于指令的功率/性能折衷信息识别的标准处理指令。

    Techniques for dynamically sharing a fabric to facilitate off-chip communication for multiple on-chip units
    32.
    发明授权
    Techniques for dynamically sharing a fabric to facilitate off-chip communication for multiple on-chip units 失效
    用于动态共享结构以促进多个片上单元的片外通信的技术

    公开(公告)号:US08346988B2

    公开(公告)日:2013-01-01

    申请号:US12786716

    申请日:2010-05-25

    IPC分类号: G06F3/00 G06F13/00

    摘要: A technique for sharing a fabric to facilitate off-chip communication for on-chip units includes dynamically assigning a first unit that implements a first communication protocol to a first portion of the fabric when private fabrics are indicated for the on-chip units. The technique also includes dynamically assigning a second unit that implements a second communication protocol to a second portion of the fabric when the private fabrics are indicated for the on-chip units. In this case, the first and second units are integrated in a same chip and the first and second protocols are different. The technique further includes dynamically assigning, based on off-chip traffic requirements of the first and second units, the first unit or the second unit to the first and second portions of the fabric when the private fabrics are not indicated for the on-chip units.

    摘要翻译: 一种用于共享一个结构以促进片上单元的片外通信的技术包括:当针对片上单元指示专用结构时,动态分配实现第一通信协议的第一单元到该结构的第一部分。 该技术还包括当为片上单元指示专用结构时,动态地将实现第二通信协议的第二单元分配给该结构的第二部分。 在这种情况下,第一和第二单元集成在相同的芯片中,并且第一和第二协议是不同的。 该技术还包括:当私有结构未被指示用于片上单元时,基于第一单元或第二单元的片外流量要求将第一单元或第二单元动态地分配给该结构的第一和第二部分 。

    Fine Grained Cache Allocation
    33.
    发明申请
    Fine Grained Cache Allocation 有权
    细粒度缓存分配

    公开(公告)号:US20110022773A1

    公开(公告)日:2011-01-27

    申请号:US12509752

    申请日:2009-07-27

    IPC分类号: G06F12/08 G06F12/00

    摘要: A mechanism is provided in a virtual machine monitor for fine grained cache allocation in a shared cache. The mechanism partitions a cache tag into a most significant bit (MSB) portion and a least significant bit (LSB) portion. The MSB portion of the tags is shared among the cache lines in a set. The LSB portion of the tags is private, one per cache line. The mechanism allows software to set the MSB portion of tags in a cache to allocate sets of cache lines. The cache controller determines whether a cache line is locked based on the MSB portion of the tag.

    摘要翻译: 在虚拟机监视器中提供了用于共享高速缓存中的细粒度高速缓存分配的机制。 该机制将高速缓存标签分成最高有效位(MSB)部分和最低有效位(LSB)部分。 标签的MSB部分在一组中的高速缓存行之间共享。 标签的LSB部分是私有的,每个缓存行一个。 该机制允许软件将缓存中的标签的MSB部分设置为分配高速缓存行集合。 高速缓存控制器基于标签的MSB部分来确定高速缓存行是否被锁定。

    Complier assisted victim cache bypassing
    34.
    发明授权
    Complier assisted victim cache bypassing 失效
    Complier辅助受害者缓存绕过

    公开(公告)号:US07506119B2

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

    申请号:US11381563

    申请日:2006-05-04

    IPC分类号: G06F12/08 G06F12/12

    摘要: A method for compiler assisted victim cache bypassing including: identifying a cache line as a candidate for victim cache bypassing; conveying a bypassing-the-victim-cache information to a hardware; and checking a state of the cache line to determine a modified state of the cache line, wherein the cache line is identified for cache bypassing if the cache line that has no reuse within a loop or loop nest and there is no immediate loop reuse or there is a substantial across loop reuse distance so that it will be replaced from both main and victim cache before being reused.

    摘要翻译: 一种用于编译器辅助的受害者缓存旁路的方法,包括:将高速缓存行标识为用于受害者缓存旁路的候选者; 向硬件传送绕过受害者缓存信息; 并且检查高速缓存行的状态以确定高速缓存行的修改状态,其中如果在循环或循环嵌套内没有重用的高速缓存行并且不存在立即循环重用或那里,则高速缓存行被识别用于高速缓存绕过 是一个实质的跨循环重用距离,因此它将被重新使用之前被替换为主缓存和受害缓存。

    Latency-tolerant 3D on-chip memory organization
    35.
    发明授权
    Latency-tolerant 3D on-chip memory organization 失效
    延迟容忍的3D片上存储器组织

    公开(公告)号:US08612687B2

    公开(公告)日:2013-12-17

    申请号:US12787895

    申请日:2010-05-26

    IPC分类号: H01L29/00 H01L21/00 G06F12/00

    CPC分类号: G06F12/0895 G11C8/18

    摘要: A mechanism is provided within a 3D stacked memory organization to spread or stripe cache lines across multiple layers. In an example organization, a 128B cache line takes eight cycles on a 16B-wide bus. Each layer may provide 32B. The first layer uses the first two of the eight transfer cycles to send the first 32B. The next layer sends the next 32B using the next two cycles of the eight transfer cycles, and so forth. The mechanism provides a uniform memory access.

    摘要翻译: 在3D堆叠存储器组织内提供了一种机制,用于跨多层传播或条带化高速缓存行。 在一个示例组织中,128B高速缓存行在16B宽的总线上需要八个周期。 每层可提供32B。 第一层使用八个传输周期中的前两个发送第一个32B。 下一层使用八个传输周期的接下来的两个周期发送下一个32B,等等。 该机制提供了一个统一的内存访问。

    Fine grained cache allocation
    36.
    发明授权
    Fine grained cache allocation 有权
    细粒度缓存分配

    公开(公告)号:US08543769B2

    公开(公告)日:2013-09-24

    申请号:US12509752

    申请日:2009-07-27

    IPC分类号: G06F12/00

    摘要: A mechanism is provided in a virtual machine monitor for fine grained cache allocation in a shared cache. The mechanism partitions a cache tag into a most significant bit (MSB) portion and a least significant bit (LSB) portion. The MSB portion of the tags is shared among the cache lines in a set. The LSB portion of the tags is private, one per cache line. The mechanism allows software to set the MSB portion of tags in a cache to allocate sets of cache lines. The cache controller determines whether a cache line is locked based on the MSB portion of the tag.

    摘要翻译: 在虚拟机监视器中提供了用于共享高速缓存中的细粒度高速缓存分配的机制。 该机制将高速缓存标签分成最高有效位(MSB)部分和最低有效位(LSB)部分。 标签的MSB部分在一组中的高速缓存行之间共享。 标签的LSB部分是私有的,每个缓存行一个。 该机制允许软件将缓存中的标签的MSB部分设置为分配高速缓存行集合。 高速缓存控制器基于标签的MSB部分来确定高速缓存行是否被锁定。

    Cache directed sequential prefetch
    37.
    发明授权
    Cache directed sequential prefetch 失效
    缓存定向顺序预取

    公开(公告)号:US08458408B2

    公开(公告)日:2013-06-04

    申请号:US13023615

    申请日:2011-02-09

    IPC分类号: G06F12/00

    CPC分类号: G06F12/0862 G06F2212/6026

    摘要: A technique for performing stream detection and prefetching within a cache memory simplifies stream detection and prefetching. A bit in a cache directory or cache entry indicates that a cache line has not been accessed since being prefetched and another bit indicates the direction of a stream associated with the cache line. A next cache line is prefetched when a previously prefetched cache line is accessed, so that the cache always attempts to prefetch one cache line ahead of accesses, in the direction of a detected stream. Stream detection is performed in response to load misses tracked in the load miss queue (LMQ). The LMQ stores an offset indicating a first miss at the offset within a cache line. A next miss to the line sets a direction bit based on the difference between the first and second offsets and causes prefetch of the next line for the stream.

    摘要翻译: 用于在高速缓冲存储器内执行流检测和预取的技术简化了流检测和预取。 高速缓存目录或高速缓存条目中的一点表示高速缓存行未被访问,并且另一位指示与高速缓存行相关联的流的方向。 当先前预取的高速缓存行被访问时,预取下一个高速缓存行,使得高速缓存总是尝试在检测到的流的方向上预取访问之前的一个高速缓存行。 响应于在负载未命中队列(LMQ)中跟踪的加载未命中,执行流检测。 LMQ存储指示高速缓存行内的偏移处的第一个未命中的偏移。 下一个未命中的线路将基于第一和第二个偏移量之间的差异设置方向位,并导致流的下一行的预取。

    Reducing energy consumption of set associative caches by reducing checked ways of the set association
    38.
    发明授权
    Reducing energy consumption of set associative caches by reducing checked ways of the set association 失效
    通过减少集合关联的检查方式来减少集合关联缓存的能量消耗

    公开(公告)号:US08341355B2

    公开(公告)日:2012-12-25

    申请号:US12787122

    申请日:2010-05-25

    IPC分类号: G06F12/00

    摘要: Mechanisms for accessing a set associative cache of a data processing system are provided. A set of cache lines, in the set associative cache, associated with an address of a request are identified. Based on a determined mode of operation for the set, the following may be performed: determining if a cache hit occurs in a preferred cache line without accessing other cache lines in the set of cache lines; retrieving data from the preferred cache line without accessing the other cache lines in the set of cache lines, if it is determined that there is a cache hit in the preferred cache line; and accessing each of the other cache lines in the set of cache lines to determine if there is a cache hit in any of these other cache lines only in response to there being a cache miss in the preferred cache line(s).

    摘要翻译: 提供了访问数据处理系统的集合关联缓存的机制。 识别与集合关联高速缓存中的与请求的地址相关联的一组高速缓存行。 基于针对集合的确定的操作模式,可以执行以下操作:确定高速缓存命中是否发生在优选高速缓存行中,而不访问该组高速缓存行中的其他高速缓存行; 如果确定在所述优选高速缓存行中存在高速缓存命中,则从所述优选高速缓存行中检索数据而不访问所述一组高速缓存行中的其它高速缓存行; 以及访问该组高速缓存行中的每个其它高速缓存行,以仅在响应于优选高速缓存行中存在高速缓存未命中时确定在这些其它高速缓存行中的任何一个中是否存在高速缓存命中。

    Cache directed sequential prefetch
    39.
    发明授权
    Cache directed sequential prefetch 失效
    缓存定向顺序预取

    公开(公告)号:US07958317B2

    公开(公告)日:2011-06-07

    申请号:US12185219

    申请日:2008-08-04

    IPC分类号: G06F12/00

    CPC分类号: G06F12/0862 G06F2212/6026

    摘要: A technique for performing stream detection and prefetching within a cache memory simplifies stream detection and prefetching. A bit in a cache directory or cache entry indicates that a cache line has not been accessed since being prefetched and another bit indicates the direction of a stream associated with the cache line. A next cache line is prefetched when a previously prefetched cache line is accessed, so that the cache always attempts to prefetch one cache line ahead of accesses, in the direction of a detected stream. Stream detection is performed in response to load misses tracked in the load miss queue (LMQ). The LMQ stores an offset indicating a first miss at the offset within a cache line. A next miss to the line sets a direction bit based on the difference between the first and second offsets and causes prefetch of the next line for the stream.

    摘要翻译: 用于在高速缓冲存储器内执行流检测和预取的技术简化了流检测和预取。 高速缓存目录或高速缓存条目中的一点表示高速缓存行未被访问,并且另一位指示与高速缓存行相关联的流的方向。 当先前预取的高速缓存行被访问时,预取下一个高速缓存行,使得高速缓存总是尝试在检测到的流的方向上预取访问之前的一个高速缓存行。 响应于在负载未命中队列(LMQ)中跟踪的加载未命中,执行流检测。 LMQ存储指示高速缓存行内的偏移处的第一个未命中的偏移。 下一个未命中的线路将基于第一和第二个偏移量之间的差异设置方向位,并导致流的下一行的预取。

    CACHE DIRECTED SEQUENTIAL PREFETCH
    40.
    发明申请
    CACHE DIRECTED SEQUENTIAL PREFETCH 失效
    高速缓存指令序列预选

    公开(公告)号:US20100030973A1

    公开(公告)日:2010-02-04

    申请号:US12185219

    申请日:2008-08-04

    IPC分类号: G06F12/00

    CPC分类号: G06F12/0862 G06F2212/6026

    摘要: A technique for performing stream detection and prefetching within a cache memory simplifies stream detection and prefetching. A bit in a cache directory or cache entry indicates that a cache line has not been accessed since being prefetched and another bit indicates the direction of a stream associated with the cache line. A next cache line is prefetched when a previously prefetched cache line is accessed, so that the cache always attempts to prefetch one cache line ahead of accesses, in the direction of a detected stream. Stream detection is performed in response to load misses tracked in the load miss queue (LMQ). The LMQ stores an offset indicating a first miss at the offset within a cache line. A next miss to the line sets a direction bit based on the difference between the first and second offsets and causes prefetch of the next line for the stream.

    摘要翻译: 用于在高速缓冲存储器内执行流检测和预取的技术简化了流检测和预取。 高速缓存目录或高速缓存条目中的一点表示高速缓存行未被访问,并且另一位指示与高速缓存行相关联的流的方向。 当先前预取的高速缓存行被访问时,预取下一个高速缓存行,使得高速缓存总是尝试在检测到的流的方向上预取访问之前的一个高速缓存行。 响应于在负载未命中队列(LMQ)中跟踪的加载未命中,执行流检测。 LMQ存储指示高速缓存行内的偏移处的第一个未命中的偏移。 下一个未命中的线路将基于第一和第二个偏移量之间的差异设置方向位,并导致流的下一行的预取。