Building Approximate Data Dependences with a Moving Window
    2.
    发明申请
    Building Approximate Data Dependences with a Moving Window 失效
    用移动窗口构建近似数据依赖

    公开(公告)号:US20110219222A1

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

    申请号:US12717985

    申请日:2010-03-05

    IPC分类号: G06F9/32

    CPC分类号: G06F9/32

    摘要: Mechanisms for building approximate data dependences using a moving look-back window are provided. The mechanisms track dependence information for memory accesses over iterations of execution of a portion of code. The mechanisms receive a memory access of an iteration of the portion of code, the memory access having an address for access the memory and an access type indicating at least one of a read or a write access type. An entry in a moving look-back window data structure is generated corresponding to a memory location accessed by the memory access. The entry comprises at least an identification of the address, the access type, and an iteration number corresponding to the iteration of the memory access. The moving look-back window data structure is utilized to determine dependence information for memory accesses over a plurality of iterations of the portion of code.

    摘要翻译: 提供了使用移动后视窗构建近似数据依赖关系的机制。 机制跟踪代码的一部分执行迭代的存储器访问的依赖信息。 机构接收代码部分的迭代的存储器访问,存储器访问具有用于访问存储器的地址和指示读取或写入访问类型中的至少一个的访问类型。 对应于由存储器访问访问的存储器位置产生移动后视窗数据结构中的条目。 该条目至少包括对应于存储器访问的迭代的地址的标识,访问类型和迭代号。 移动后视窗数据结构用于确定代码部分的多个迭代中的存储器访问的依赖信息。

    Tracking and detecting thread dependencies using speculative versioning cache
    3.
    发明授权
    Tracking and detecting thread dependencies using speculative versioning cache 有权
    使用推测版本缓存来跟踪和检测线程依赖关系

    公开(公告)号:US08468539B2

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

    申请号:US12553314

    申请日:2009-09-03

    IPC分类号: G06F9/46

    摘要: Mechanisms are provided for tracking dependencies of threads in a multi-threaded computer program execution. The mechanisms detect a dependency of a first thread's execution on results of a second thread's execution in an execution flow of the multi-threaded computer program. The mechanisms further store, in a hardware thread dependency vector storage associated with the first thread's execution, an identifier of the dependency by setting at least one bit in the hardware thread dependency vector storage corresponding to the second thread. Moreover, the mechanisms schedule tasks performed by the multi-threaded computer program based on the hardware thread dependency vector storage to minimize squashing of threads.

    摘要翻译: 提供了用于跟踪多线程计算机程序执行中线程依赖性的机制。 该机制检测第一个线程执行对多线程计算机程序执行流程中第二个线程执行结果的依赖性。 这些机制通过在与第二线程相对应的硬件线程相关性向量存储中设置至少一个比特来进一步存储与第一线程的执行相关联的硬件线程依赖向量存储中的依赖关系的标识符。 此外,该机制基于硬件线程依赖向量存储来调度由多线程计算机程序执行的任务以最小化线程的挤压。

    System and Method for Selective Code Generation Optimization for an Advanced Dual-Representation Polyhedral Loop Transformation Framework
    4.
    发明申请
    System and Method for Selective Code Generation Optimization for an Advanced Dual-Representation Polyhedral Loop Transformation Framework 失效
    用于高级双表示多面体环转换框架的选择性代码生成优化的系统和方法

    公开(公告)号:US20090083702A1

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

    申请号:US11861493

    申请日:2007-09-26

    IPC分类号: G06F9/44

    CPC分类号: G06F8/4452

    摘要: A system and method for selective code generation optimization for an advanced dual-representation polyhedral loop transformation framework are provided. The mechanisms of the illustrative embodiments address the weaknesses of the known polyhedral loop transformation based approaches by providing mechanisms for performing code generation transformations on individual statement instances in an intermediate representation generated by the polyhedral loop transformation optimization of the source code. These code generation transformations have the important property that they do not change program order of the statements in the intermediate representation. This property allows the result of the code generation transformations to be provided back to the polyhedral loop transformation mechanisms in a program statement view, via a new re-entrance path of the illustrative embodiments, for additional optimization.

    摘要翻译: 提供了一种用于高级双表示多面体环转换框架的选择性代码生成优化的系统和方法。 说明性实施例的机制通过提供用于在通过源代码的多面体环转换优化生成的中间表示中对各个语句实例执行代码生成变换的机制来解决已知的基于多面体循环变换的方法的弱点。 这些代码生成转换具有重要的属性,它们不改变中间表示中的语句的程序顺序。 该属性允许通过示例性实施例的新的重新导入路径将代码生成转换的结果提供给程序语句视图中的多面体循环变换机制,用于附加优化。

    Version Pressure Feedback Mechanisms for Speculative Versioning Caches
    5.
    发明申请
    Version Pressure Feedback Mechanisms for Speculative Versioning Caches 失效
    版本控制缓存的版本压力反馈机制

    公开(公告)号:US20110047362A1

    公开(公告)日:2011-02-24

    申请号:US12543688

    申请日:2009-08-19

    IPC分类号: G06F12/08 G06F9/318

    摘要: Mechanisms are provided for controlling version pressure on a speculative versioning cache. Raw version pressure data is collected based on one or more threads accessing cache lines of the speculative versioning cache. One or more statistical measures of version pressure are generated based on the collected raw version pressure data. A determination is made as to whether one or more modifications to an operation of a data processing system are to be performed based on the one or more statistical measures of version pressure, the one or more modifications affecting version pressure exerted on the speculative versioning cache. An operation of the data processing system is modified based on the one or more determined modifications, in response to a determination that one or more modifications to the operation of the data processing system are to be performed, to affect the version pressure exerted on the speculative versioning cache.

    摘要翻译: 提供了用于控制推测版本缓存的版本压力的机制。 基于访问推测性版本缓存的高速缓存行的一个或多个线程来收集原始版本压力数据。 基于收集的原始版本压力数据生成版本压力的一个或多个统计度量。 确定是否将基于版本压力的一个或多个统计测量来执行对数据处理系统的操作的一个或多个修改,该一个或多个修改影响施加在推测版本缓存上的版本压力。 响应于将要执行对数据处理系统的操作的一个或多个修改以影响施加在投机上的版本压力的确定,基于一个或多个确定的修改来修改数据处理系统的操作 版本缓存。

    Building approximate data dependences with a moving window
    6.
    发明授权
    Building approximate data dependences with a moving window 失效
    使用移动窗口构建近似数据依赖关系

    公开(公告)号:US08667260B2

    公开(公告)日:2014-03-04

    申请号:US12717985

    申请日:2010-03-05

    IPC分类号: G06F9/44

    CPC分类号: G06F9/32

    摘要: Mechanisms for building approximate data dependences using a moving look-back window are provided. The mechanisms track dependence information for memory accesses over iterations of execution of a portion of code. The mechanisms receive a memory access of an iteration of the portion of code, the memory access having an address for access the memory and an access type indicating at least one of a read or a write access type. An entry in a moving look-back window data structure is generated corresponding to a memory location accessed by the memory access. The entry comprises at least an identification of the address, the access type, and an iteration number corresponding to the iteration of the memory access. The moving look-back window data structure is utilized to determine dependence information for memory accesses over a plurality of iterations of the portion of code.

    摘要翻译: 提供了使用移动后视窗构建近似数据依赖关系的机制。 机制跟踪代码的一部分执行迭代的存储器访问的依赖信息。 机构接收代码部分的迭代的存储器访问,存储器访问具有用于访问存储器的地址和指示读取或写入访问类型中的至少一个的访问类型。 对应于由存储器访问访问的存储器位置产生移动后视窗数据结构中的条目。 该条目至少包括对应于存储器访问的迭代的地址的标识,访问类型和迭代号。 移动后视窗数据结构用于确定代码部分的多个迭代中的存储器访问的依赖信息。

    Runtime dependence-aware scheduling using assist thread
    7.
    发明授权
    Runtime dependence-aware scheduling using assist thread 失效
    使用辅助线程的运行时依赖感知调度

    公开(公告)号:US08214831B2

    公开(公告)日:2012-07-03

    申请号:US12435809

    申请日:2009-05-05

    IPC分类号: G06F9/46

    CPC分类号: G06F8/445

    摘要: A runtime dependence-aware scheduling of dependent iterations mechanism is provided. Computation is performed for one or more iterations of computer executable code by a main thread. Dependence information is determined for a plurality of memory accesses within the computer executable code using modified executable code using a set of dependence threads. Using the dependence information, a determination is made as to whether a subset of a set of uncompleted iterations in the plurality of iterations is capable of being executed ahead-of-time by the one or more available threads in the data processing system. If the subset of the set of uncompleted iterations in the plurality of iterations is capable of being executed ahead-of-time, the main thread is signaled to skip the subset of the set of uncompleted iterations and the set of assist threads is signaled to execute the subset of the set of uncompleted iterations.

    摘要翻译: 提供依赖迭代机制的运行时依赖感知调度。 通过主线程执行计算机可执行代码的一个或多个迭代的计算。 使用一组依赖线程使用经修改的可执行代码来确定计算机可执行代码内的多个存储器访问的依赖性信息。 使用依赖性信息,确定多个迭代中的一组未完成迭代的子集是否能够由数据处理系统中的一个或多个可用线程提前执行。 如果多次迭代中的一组未完成迭代的子集能够在时间之前被执行,则主线程被用信号通知以跳过该组未完成迭代的子集,并且该信号通知该组辅助线程以执行 该组未完成迭代的子集。

    Version pressure feedback mechanisms for speculative versioning caches
    8.
    发明授权
    Version pressure feedback mechanisms for speculative versioning caches 失效
    针对推测版本控制缓存的版本压力反馈机制

    公开(公告)号:US08397052B2

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

    申请号:US12543688

    申请日:2009-08-19

    IPC分类号: G06F9/318

    摘要: Mechanisms are provided for controlling version pressure on a speculative versioning cache. Raw version pressure data is collected based on one or more threads accessing cache lines of the speculative versioning cache. One or more statistical measures of version pressure are generated based on the collected raw version pressure data. A determination is made as to whether one or more modifications to an operation of a data processing system are to be performed based on the one or more statistical measures of version pressure, the one or more modifications affecting version pressure exerted on the speculative versioning cache. An operation of the data processing system is modified based on the one or more determined modifications, in response to a determination that one or more modifications to the operation of the data processing system are to be performed, to affect the version pressure exerted on the speculative versioning cache.

    摘要翻译: 提供了用于控制推测版本缓存的版本压力的机制。 基于访问推测性版本缓存的高速缓存行的一个或多个线程来收集原始版本压力数据。 基于收集的原始版本压力数据生成版本压力的一个或多个统计度量。 确定是否将基于版本压力的一个或多个统计测量来执行对数据处理系统的操作的一个或多个修改,该一个或多个修改影响施加在推测版本缓存上的版本压力。 响应于将要执行对数据处理系统的操作的一个或多个修改以影响施加在投机上的版本压力的确定,基于一个或多个确定的修改来修改数据处理系统的操作 版本缓存。

    Runtime dependence-aware scheduling using assist thread
    9.
    发明授权
    Runtime dependence-aware scheduling using assist thread 失效
    使用辅助线程的运行时依赖感知调度

    公开(公告)号:US08464271B2

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

    申请号:US13443515

    申请日:2012-04-10

    IPC分类号: G06F9/46 G06F13/00

    CPC分类号: G06F8/445

    摘要: A runtime dependence-aware scheduling of dependent iterations mechanism is provided. Computation is performed for one or more iterations of computer executable code by a main thread. Dependence information is determined for a plurality of memory accesses within the computer executable code using modified executable code using a set of dependence threads. Using the dependence information, a determination is made as to whether a subset of a set of uncompleted iterations in the plurality of iterations is capable of being executed ahead-of-time by the one or more available threads in the data processing system. If the subset of the set of uncompleted iterations in the plurality of iterations is capable of being executed ahead-of-time, the main thread is signaled to skip the subset of the set of uncompleted iterations and the set of assist threads is signaled to execute the subset of the set of uncompleted iterations.

    摘要翻译: 提供依赖迭代机制的运行时依赖感知调度。 通过主线程执行计算机可执行代码的一个或多个迭代的计算。 使用一组依赖线程使用经修改的可执行代码来确定计算机可执行代码内的多个存储器访问的依赖性信息。 使用依赖性信息,确定多个迭代中的一组未完成迭代的子集是否能够由数据处理系统中的一个或多个可用线程提前执行。 如果多次迭代中的一组未完成迭代的子集能够在时间之前被执行,则主线程被用信号通知以跳过该组未完成迭代的子集,并且该信号通知该组辅助线程以执行 该组未完成迭代的子集。

    Runtime Dependence-Aware Scheduling Using Assist Thread
    10.
    发明申请
    Runtime Dependence-Aware Scheduling Using Assist Thread 失效
    使用辅助线程的运行时依赖感知调度

    公开(公告)号:US20120204189A1

    公开(公告)日:2012-08-09

    申请号:US13443515

    申请日:2012-04-10

    IPC分类号: G06F9/46

    CPC分类号: G06F8/445

    摘要: A runtime dependence-aware scheduling of dependent iterations mechanism is provided. Computation is performed for one or more iterations of computer executable code by a main thread. Dependence information is determined for a plurality of memory accesses within the computer executable code using modified executable code using a set of dependence threads. Using the dependence information, a determination is made as to whether a subset of a set of uncompleted iterations in the plurality of iterations is capable of being executed ahead-of-time by the one or more available threads in the data processing system. If the subset of the set of uncompleted iterations in the plurality of iterations is capable of being executed ahead-of-time, the main thread is signaled to skip the subset of the set of uncompleted iterations and the set of assist threads is signaled to execute the subset of the set of uncompleted iterations.

    摘要翻译: 提供依赖迭代机制的运行时依赖感知调度。 通过主线程执行计算机可执行代码的一个或多个迭代的计算。 使用一组依赖线程使用经修改的可执行代码来确定计算机可执行代码内的多个存储器访问的依赖性信息。 使用依赖性信息,确定多个迭代中的一组未完成迭代的子集是否能够由数据处理系统中的一个或多个可用线程提前执行。 如果多次迭代中的一组未完成迭代的子集能够在时间之前被执行,则主线程被用信号通知以跳过该组未完成迭代的子集,并且该信号通知该组辅助线程以执行 该组未完成迭代的子集。