Programming means for dynamic specifications of cache management preferences
    1.
    发明授权
    Programming means for dynamic specifications of cache management preferences 有权
    编程意味着缓存管理首选项的动态规范

    公开(公告)号:US07039760B2

    公开(公告)日:2006-05-02

    申请号:US10425443

    申请日:2003-04-28

    IPC分类号: G06F12/00

    CPC分类号: G06F12/123 G06F12/127

    摘要: A method and apparatus for managing cache lines in a data processing system. A special purpose register is employed in which this register may be manipulated by user code and operating system code to set preferences, such as a level 2 cache management policy preference for an application thread. These preferences may be dynamically set and an arbitration mechanism is employed to best satisfy preferences of multiple threads with a single aggregate preference. Members are represented using a least recently used tree. The least recent used tree has a set of nodes forming a path to member cache lines in a hierarchical structure. A state of a selected node is selectively biased within the set of nodes in the least recently used tree. At least one node on a level below the selected node is eliminated from being selected in managing the cache lines. In this manner, members can be biased against or for selection as victims when replacing cache lines in a cache memory.

    摘要翻译: 一种用于在数据处理系统中管理高速缓存行的方法和装置。 使用专用寄存器,其中该寄存器可以由用户代码和操作系统代码来操作以设置优先级,诸如针对应用程序线程的2级缓存管理策略偏好。 这些偏好可以被动态设置,并且使用仲裁机制来最好地满足具有单个聚合偏好的多个线程的偏好。 会员使用最近最少使用的树来表示。 最近使用的树具有一组以层次结构形成到成员高速缓存行的路径的节点。 所选节点的状态在最近最少使用的树中的节点集合内被有选择地偏置。 在选择的节点以下的级别上的至少一个节点在管理高速缓存行时被排除。 以这种方式,当替换高速缓冲存储器中的高速缓存行时,成员可以偏向于或被选择为受害者。

    Localized cache block flush instruction
    3.
    发明授权
    Localized cache block flush instruction 有权
    本地化缓存块刷新指令

    公开(公告)号:US07194587B2

    公开(公告)日:2007-03-20

    申请号:US10422677

    申请日:2003-04-24

    IPC分类号: G06F12/00

    摘要: A microprocessor and a related compiler support a local cache block flush instruction in which an execution unit of a processor determines an effective address. The processor forces all pending references to a cache block corresponding to the determined effective address to commit to the cache subsystem. If the referenced cache line is modified in the local cache (the cache subsystem corresponding to the processor executing the instruction), it is then written back to main memory. If the referenced block is valid in the local cache it is invalidated, but only in the local cache. If the referenced block is not valid in the local cache, there is no invalidation. Remote processors receiving a local cache block flush instruction from another processor via the system ignore the instruction.

    摘要翻译: 微处理器和相关编译器支持本地缓存块刷新指令,其中处理器的执行单元确定有效地址。 处理器强制所有未决引用对应于所确定的有效地址的缓存块以提交到缓存子系统。 如果引用的高速缓存行在本地缓存(与执行指令的处理器相对应的缓存子系统)中被修改,则将其写回主存储器。 如果引用的块在本地缓存中有效,则它将被无效,但仅在本地缓存中。 如果引用的块在本地缓存中无效,则不会产生无效。 通过系统从另一个处理器接收本地缓存块刷新指令的远程处理器忽略该指令。