Thread Partitioning in a Multi-Core Environment
    62.
    发明申请
    Thread Partitioning in a Multi-Core Environment 有权
    多核环境中的线程分区

    公开(公告)号:US20100299496A1

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

    申请号:US12024211

    申请日:2008-02-01

    IPC分类号: G06F9/30 G06F15/76

    CPC分类号: G06F9/4843 G06F9/3851

    摘要: A set of helper thread binaries is created to retrieve data used by a set of main thread binaries. The set of helper thread binaries and the set of main thread binaries are partitioned according to common instruction boundaries. As a first partition in the set of main thread binaries executes within a first core, a second partition in the set of helper thread binaries executes within a second core, thus “warming up” the cache in the second core. When the first partition of the main completes execution, a second partition of the main core moves to the second core, and executes using the warmed up cache in the second core.

    摘要翻译: 创建一组辅助线程二进制文件来检索一组主线程二进制文件使用的数据。 辅助线程二进制文件集和主线程二进制文件集合根据公共指令边界进行分区。 作为主线程二进制文件集合中的第一分区在第一核心内执行,该辅助线程二进制文件集中的第二分区在第二核心内执行,从而“预热”第二核心中的高速缓存。 当主要的第一分区完成执行时,主核心的第二分区移动到第二核心,并使用第二核心中的预热高速缓存执行。

    Completion Arbitration for More than Two Threads Based on Resource Limitations
    63.
    发明申请
    Completion Arbitration for More than Two Threads Based on Resource Limitations 有权
    基于资源限制的两个以上线程的完成仲裁

    公开(公告)号:US20100262967A1

    公开(公告)日:2010-10-14

    申请号:US12423561

    申请日:2009-04-14

    IPC分类号: G06F9/46

    CPC分类号: G06F9/485

    摘要: A mechanism is provided for thread completion arbitration. The mechanism comprises executing more than two threads of instructions simultaneously in the processor, selecting a first thread from a first subset of threads, in the more than two threads, for completion of execution within the processor, and selecting a second thread from a second subset of threads, in the more than two threads, for completion of execution within the processor. The mechanism further comprises completing execution of the first and second threads by committing results of the execution of the first and second threads to a storage device associated with the processor. At least one of the first subset of threads or the second subset of threads comprise two or more threads from the more than two threads. The first subset of threads and second subset of threads have different threads from one another.

    摘要翻译: 提供线程完成仲裁的机制。 该机制包括在处理器中同时执行多于两个指令的线程,在多于两个线程中从线程的第一子集中选择第一线程,以完成处理器内的执行,以及从第二子集中选择第二线程 的线程,在两个以上的线程中,用于完成处理器内的执行。 该机制还包括通过将执行第一和第二线程的结果提交到与处理器相关联的存储设备来完成第一和第二线程的执行。 线程的第一子集或线程的第二子集中的至少一个包括来自多于两个线程的两个或多个线程。 线程的第一个子集和线程的第二个子集具有彼此不同的线程。

    Specifying an Addressing Relationship In An Operand Data Structure
    64.
    发明申请
    Specifying an Addressing Relationship In An Operand Data Structure 有权
    在操作数数据结构中指定寻址关系

    公开(公告)号:US20100153683A1

    公开(公告)日:2010-06-17

    申请号:US12336342

    申请日:2008-12-16

    IPC分类号: G06F9/34 G06F12/02

    CPC分类号: G06F9/345

    摘要: A processor includes at least one execution unit that executes instructions, at least one register file, coupled to the at least one execution unit, that buffers operands for access by the at least one execution unit, and an instruction sequencing unit that fetches instructions for execution by the execution unit. The processor further includes an operand data structure and an address generation accelerator. The operand data structure specifies a first relationship between addresses of sequential accesses within a first address region and a second relationship between addresses of sequential accesses within a second address region. The address generation accelerator computes a first address of a first memory access in the first address region by reference to the first relationship and a second address of a second memory access in the second address region by reference to the second relationship.

    摘要翻译: 处理器包括执行指令的至少一个执行单元,耦合到所述至少一个执行单元的至少一个寄存器文件,其缓冲由所述至少一个执行单元访问的操作数,以及指令排序单元,其提取用于执行的指令 由执行单位。 处理器还包括操作数数据结构和地址生成加速器。 操作数数据结构指定第一地址区域内的顺序访问的地址与第二地址区域内的顺序存取的地址之间的第一关系。 参考第二关系,地址生成加速器通过参考第一关系和第二地址区中的第二存储器访问的第二地址来计算第一地址区中的第一存储器访问的第一地址。

    Latency-aware thread scheduling in non-uniform cache architecture systems
    65.
    发明授权
    Latency-aware thread scheduling in non-uniform cache architecture systems 有权
    在非均匀缓存架构系统中的延迟感知线程调度

    公开(公告)号:US07574562B2

    公开(公告)日:2009-08-11

    申请号:US11491413

    申请日:2006-07-21

    IPC分类号: G06F12/02

    CPC分类号: G06F12/0842 G06F2212/271

    摘要: A system and method for latency-aware thread scheduling in non-uniform cache architecture are provided. Instructions may be provided to the hardware specifying in which banks to store data. Information as to which banks store which data may also be provided, for example, by the hardware. This information may be used to schedule threads on one or more cores. A selected bank in cache memory may be reserved strictly for selected data.

    摘要翻译: 提供了一种用于在非均匀缓存体系结构中进行延迟识别的线程调度的系统和方法。 可以向硬件提供指令,指定哪些存储体存储数据。 关于哪些银行存储哪些数据的信息也可以由硬件提供。 该信息可用于在一个或多个核心上调度线程。 高速缓冲存储器中的选定存储区可能被严格保留用于所选数据。

    TERMINATION OF IN-FLIGHT ASYNCHRONOUS MEMORY MOVE
    66.
    发明申请
    TERMINATION OF IN-FLIGHT ASYNCHRONOUS MEMORY MOVE 有权
    飞行异常记忆移动的终止

    公开(公告)号:US20090198975A1

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

    申请号:US12024546

    申请日:2008-02-01

    IPC分类号: G06F9/315

    摘要: A data processing system has a processor, a memory, and an instruction set architecture (ISA) that includes: (1) an asynchronous memory mover (AMM) store (ST) instruction initiates an asynchronous memory move operation that moves data from a first memory location having a first real address to a second memory location having a second real address by: (a) first performing a move of the data in virtual address space utilizing a source effective address a destination effective address; and (b) when the move is completed, completing a physical move of the data to the second memory location, independent of the processor. The ISA further provides (2) an AMM terminate ST instruction for stopping an ongoing AMM operation before completion of the AMM operation, and (3) a LD CMP instruction for checking a status of an AMM operation.

    摘要翻译: 数据处理系统具有处理器,存储器和指令集架构(ISA),其包括:(1)异步存储器移动器(AMM)存储器(ST)指令发起异步存储器移动操作,其将数据从第一存储器 具有通过以下方式具有第二实际地址的具有第一实际地址的位置:(a)首先使用源有效地址执行虚拟地址空间中的数据移动目的地有效地址; 和(b)当移动完成时,完成数据到第二存储器位置的物理移动,而与处理器无关。 ISA进一步提供(2)在完成AMM操作之前停止正在进行的AMM操作的AMM终止ST指令,以及(3)用于检查AMM操作状态的LD CMP指令。

    LAUNCHING MULTIPLE CONCURRENT MEMORY MOVES VIA A FULLY ASYNCHRONOOUS MEMORY MOVER
    67.
    发明申请
    LAUNCHING MULTIPLE CONCURRENT MEMORY MOVES VIA A FULLY ASYNCHRONOOUS MEMORY MOVER 失效
    启动多个同时存储器通过充分的异步存储器移动

    公开(公告)号:US20090198939A1

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

    申请号:US12024690

    申请日:2008-02-01

    IPC分类号: G06F12/02

    摘要: A data processing system has an asynchronous memory mover, which includes multiple sets of registers for storing addressing and control parameters utilized to generate one or more asynchronous memory move (AMM) operations. The memory mover detects a receipt of a first set of parameters in a first set of registers from the processor. The processor forwards the parameters after the processor initiates a data move in virtual address space, utilizing a source effective address and a destination effective address. The memory mover responds to receiving the first set of parameters by generating and launching a first asynchronous memory move (AMM) operation. When the memory mover receives a second set of parameters in a second set of registers before the first AMM operation completes, the memory mover generates and launches a second AMM operation concurrently with the first AMM operation if no address conflicts exist.

    摘要翻译: 数据处理系统具有异步存储器移动器,其包括用于存储用于生成一个或多个异步存储器移动(AMM)操作的寻址和控制参数的多组寄存器。 存储器移动器检测来自处理器的第一组寄存器中的第一组参数的接收。 处理器在虚拟地址空间中启动数据移动后,使用源有效地址和目标有效地址,处理器转发参数。 存储器移动器响应于通过生成和启动第一异步存储器移动(AMM)操作来接收第一组参数。 当存储器移动器在第一个AMM操作完成之前在第二组寄存器中接收到第二组参数时,如果不存在地址冲突,则存储器移动器生成并与第一个AMM操作同时启动第二个AMM操作。

    METHOD FOR ENABLING DIRECT PREFETCHING OF DATA DURING ASYCHRONOUS MEMORY MOVE OPERATION
    68.
    发明申请
    METHOD FOR ENABLING DIRECT PREFETCHING OF DATA DURING ASYCHRONOUS MEMORY MOVE OPERATION 失效
    用于在异步存储器运行期间实现数据的直接预先提取的方法

    公开(公告)号:US20090198908A1

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

    申请号:US12024598

    申请日:2008-02-01

    IPC分类号: G06F12/00

    摘要: While an AMM operation is ongoing, a prefetch request for data from the source effective address or the destination effective address triggers a cache injection by the AMM mover (or memory controller) of relevant data from the stream of data being moved in the physical memory. The memory controller forwards the first prefetched line to the prefetch engine and L1 cache. The memory controller also forwards the next cache lines in the sequence of data to the L2 cache and a subsequent set of cache lines to the L3 cache. The memory controller then forwards the remaining data to the destination memory location. Quick access to prefetch data is enabled by buffering the stream of data in the upper caches rather than placing all the moved data within the memory. Also, the memory controller does not overrun the upper caches, by placing moved data into only a subset of the available cache lines of the upper level cache.

    摘要翻译: 当AMM操作正在进行时,来自源有效地址或目的地有效地址的数据的预取请求触发AMM移动器(或存储器控制器)从在物理存储器中移动的数据流中的相关数据的高速缓存注入。 存储器控制器将第一预取行转发到预取引擎和L1缓存。 存储器控制器还将数据序列中的下一个高速缓存行转发到L2高速缓存以及随后的一组高速缓存行到L3高速缓存。 存储器控制器然后将剩余的数据转发到目的地存储器位置。 通过缓存高速缓存中的数据流,而不是将所有移动的数据放在内存中,可以快速访问预取数据。 此外,通过将移动的数据仅放置在高级缓存的可用高速缓存行的一部分中,存储器控制器不会超过上部高速缓存。