Method and apparatus for affinity-guided speculative helper threads in chip multiprocessors
    5.
    发明授权
    Method and apparatus for affinity-guided speculative helper threads in chip multiprocessors 有权
    芯片多处理器中亲和力引导的投机辅助线程的方法和装置

    公开(公告)号:US07844801B2

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

    申请号:US10632431

    申请日:2003-07-31

    CPC classification number: G06F9/3842 G06F9/383 G06F9/3851 G06F12/0862

    Abstract: Apparatus, system and methods are provided for performing speculative data prefetching in a chip multiprocessor (CMP). Data is prefetched by a helper thread that runs on one core of the CMP while a main program runs concurrently on another core of the CMP. Data prefetched by the helper thread is provided to the helper core. For one embodiment, the data prefetched by the helper thread is pushed to the main core. It may or may not be provided to the helper core as well. A push of prefetched data to the main core may occur during a broadcast of the data to all cores of an affinity group. For at least one other embodiment, the data prefetched by a helper thread is provided, upon request from the main core, to the main core from the helper core's local cache.

    Abstract translation: 提供了用于在芯片多处理器(CMP)中执行推测性数据预取的装置,系统和方法。 数据由在CMP的一个核心上运行的辅助线程预取,而主程序在CMP的另一个核心上同时运行。 由辅助线程预取的数据被提供给辅助核心。 对于一个实施例,由辅助线程预取的数据被推送到主核心。 它也可以也可以不被提供给辅助核心。 在将数据广播到亲和组的所有核心的过程中,可能会将预取数据推送到主核心。 对于至少另一个实施例,根据主核心的请求,从辅助核心的本地高速缓存提供由辅助线程预取的数据到主核心。

    Parallel cachelets
    6.
    发明授权
    Parallel cachelets 有权
    并行缓存

    公开(公告)号:US07424576B2

    公开(公告)日:2008-09-09

    申请号:US09891523

    申请日:2001-06-27

    CPC classification number: G06F12/0864 G06F12/0897

    Abstract: Parallel cachelets are provided for a level of cache in a microprocessor. The cachelets may be independently addressable. The level of cache may accept multiple load requests in a single cycle and apply each to a respective cachelet. Depending upon the content stored in each cachelet, the cachelet may generate a hit/miss response to the respective load request. Load requests that hit their cachelets may be satisfied therefrom. Load requests that miss their cachelets may be referred to another level of cache.

    Abstract translation: 为微处理器中的高速缓存提供并行缓存。 缓存可以独立地寻址。 高速缓存的级别可以在单个周期中接受多个加载请求,并将每个加载请求应用于相应的缓存。 根据存储在每个cachelet中的内容,该cachelet可以产生对相应加载请求的命中/未命中响应。 可能会满足打入其缓存的加载请求。 加载丢失其cachelet的请求可能被称为另一个缓存级别。

    Method and apparatus for efficient utilization for prescient instruction prefetch
    7.
    发明授权
    Method and apparatus for efficient utilization for prescient instruction prefetch 有权
    有效利用预编程指令预取的方法和装置

    公开(公告)号:US07404067B2

    公开(公告)日:2008-07-22

    申请号:US10658072

    申请日:2003-09-08

    Abstract: Embodiments of an apparatus, system and method enhance the efficiency of processor resource utilization during instruction prefetching via one or more speculative threads. Renamer logic and a map table are utilized to perform filtering of instructions in a speculative thread instruction stream. The map table includes a yes-a-thing bit to indicate whether the associated physical register's content reflects the value that would be computed by the main thread. A thread progress beacon table is utilized to track relative progress of a main thread and a speculative helper thread. Based upon information in the thread progress beacon table, the main thread may effect termination of a helper thread that is not likely to provide a performance benefit for the main thread.

    Abstract translation: 装置,系统和方法的实施例通过一个或多个推测性线程增强在指令预取期间处理器资源利用的效率。 利用重命名逻辑和映射表来对推测性线程指令流中的指令进行滤波。 映射表包括一个肯定事件位,用于指示相关联的物理寄存器的内容是否反映由主线程计算的值。 线程进度信标表用于跟踪主线程和推测式辅助线程的相对进度。 基于线程进度信标表中的信息,主线程可能会影响不太可能为主线程提供性能优势的辅助线程的终止。

    Methods and apparatuses for thread management of multi-threading
    8.
    发明授权
    Methods and apparatuses for thread management of multi-threading 失效
    多线程线程管理方法与设备

    公开(公告)号:US07398521B2

    公开(公告)日:2008-07-08

    申请号:US10779193

    申请日:2004-02-13

    CPC classification number: G06F8/441

    Abstract: Methods and apparatuses for thread management for multi-threading are described herein. In one embodiment, exemplary process includes selecting, during a compilation of code having one or more threads executable in a data processing system, a current thread having a most bottom order, determining resources allocated to one or more child threads spawned from the current thread, and allocating resources for the current thread in consideration of the resources allocated to the current thread's one or more child threads to avoid resource conflicts between the current thread and its one or more child threads. Other methods and apparatuses are also described.

    Abstract translation: 本文描述了用于多线程的线程管理的方法和装置。 在一个实施例中,示例性过程包括在具有在数据处理系统中可执行的一个或多个线程的代码的编译期间选择具有最低阶的当前线程,确定分配给从当前线程产生的一个或多个子线程的资源, 并且考虑分配给当前线程的一个或多个子线程的资源来为当前线程分配资源,以避免当前线程与其一个或多个子线程之间的资源冲突。 还描述了其它方法和装置。

Patent Agency Ranking