Method and apparatus for exploiting thread-level parallelism
    41.
    发明授权
    Method and apparatus for exploiting thread-level parallelism 有权
    利用线程级并行性的方法和装置

    公开(公告)号:US07984431B2

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

    申请号:US11695012

    申请日:2007-03-31

    IPC分类号: G06F9/45

    CPC分类号: G06F8/456

    摘要: According to one example embodiment, there is disclosed herein uses partial recurrence relaxation for parallelizing DOACROSS loops on multi-core computer architectures. By one example definition, a DOACROSS may be a loop that allows successive iterations executing by overlapping; that is, all iterations must impose a partial execution order. According to one embodiment, the inventive subject matter may be used to transform the dependence structure of a given loop with recurrences for maximal degree of thread-level parallelism (TLP), where the threads can be mapped on to either different logical processors (in a hyperthreaded processor) or can be mapped onto different physical cores (or processors) in a multi-core processor.

    摘要翻译: 根据一个示例性实施例,这里公开了在多核计算机体系结构上使用部分递归松弛来并行化DOACROSS循环。 通过一个示例定义,DOACROSS可以是允许通过重叠执行连续迭代的循环; 也就是说,所有迭代必须强制执行部分执行顺序。 根据一个实施例,本发明的主题可以用于以线程级并行度(TLP)的最大程度的递归来转换给定循环的依赖结构,其中线程可以被映射到不同的逻辑处理器(在 超线程处理器)或可以映射到多核处理器中的不同物理核心(或处理器)上。

    SPECULATIVE COMPILATION TO GENERATE ADVICE MESSAGES
    44.
    发明申请
    SPECULATIVE COMPILATION TO GENERATE ADVICE MESSAGES 有权
    生成建议信息的统一编译

    公开(公告)号:US20120117552A1

    公开(公告)日:2012-05-10

    申请号:US12942543

    申请日:2010-11-09

    IPC分类号: G06F9/45

    摘要: Methods to improve optimization of compilation are presented. In one embodiment, a method includes identifying one or more optimization speculations with respect to a code region and speculatively performing transformation on an intermediate representation of the code region in accordance with an optimization speculation. The method includes generating an advice message corresponding to the optimization speculation and displaying the advice message if the optimization speculation results in an improved compilation result.

    摘要翻译: 提出了改进编译优化的方法。 在一个实施例中,一种方法包括根据优化推测识别关于代码区域的一个或多个优化推测和对代码区域的中间表示进行推测地执行变换。 该方法包括生成与优化推测对应的建议消息,并且如果优化推测导致改进的编译结果,则显示该建议消息。

    Apparatus, systems, and methods for execution-driven loop splitting and load-safe code hosting
    45.
    发明授权
    Apparatus, systems, and methods for execution-driven loop splitting and load-safe code hosting 失效
    用于执行驱动的环路分割和负载安全代码托管的装置,系统和方法

    公开(公告)号:US07549146B2

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

    申请号:US11157441

    申请日:2005-06-21

    IPC分类号: G06F9/45

    CPC分类号: G06F8/4441

    摘要: Techniques for execution-driven loop splitting and load-safe code hosting are provided. Compiled code includes statements associated with an original loop and statements associated with an alternative loop. The alternative loop reproduces the original loop except for conditional load-safe invariant expressions that appeared in the original loop and that are separated out of the alternative loop. During processing, once the conditional load-safe invariant expressions are computed and referenced for a first time within the original loop, processing dynamically switches to the alternative loop where the conditional load-safe invariant expressions are computed outside of the alternative loop and referenced from within the alternative loop.

    摘要翻译: 提供了执行驱动循环分割和负载安全代码托管的技术。 编译代码包括与原始循环相关联的语句和与替代循环相关联的语句。 替代循环再现原始循环,除了出现在原始循环中并从备用循环中分离出的条件负载安全不变式表达式。 在处理过程中,一旦条件负载安全不变式表达式在原始循环中首次被计算和引用,处理将动态地切换到替代循环,其中条件负载安全不变表达式在替代循环之外计算并从内部引用 替代循环。

    Loop parallelization based on loop splitting or index array
    46.
    发明授权
    Loop parallelization based on loop splitting or index array 有权
    基于循环分割或索引数组的循环并行化

    公开(公告)号:US08793675B2

    公开(公告)日:2014-07-29

    申请号:US12978465

    申请日:2010-12-24

    IPC分类号: G06F9/45

    CPC分类号: G06F8/456 G06F8/4441

    摘要: Methods and apparatus to provide loop parallelization based on loop splitting and/or index array are described. In one embodiment, one or more split loops, corresponding to an original loop, are generated based on the mis-speculation information. In another embodiment, a plurality of subloops are generated from an original loop based on an index array. Other embodiments are also described.

    摘要翻译: 描述了基于环路分割和/或索引阵列提供环路并行化的方法和装置。 在一个实施例中,基于错误猜测信息生成对应于原始循环的一个或多个分割循环。 在另一个实施例中,基于索引阵列从原始循环生成多个子循环。 还描述了其它实施例。

    Apparatus, systems, and methods for execution-driven loop splitting and load-safe code hosting

    公开(公告)号:US20060288334A1

    公开(公告)日:2006-12-21

    申请号:US11157441

    申请日:2005-06-21

    IPC分类号: G06F9/44

    CPC分类号: G06F8/4441

    摘要: Techniques for execution-driven loop splitting and load-safe code hosting are provided. Compiled code includes statements associated with an original loop and statements associated with an alternative loop. The alternative loop reproduces the original loop except for conditional load-safe invariant expressions that appeared in the original loop and that are separated out of the alternative loop. During processing, once the conditional load-safe invariant expressions are computed and referenced for a first time within the original loop, processing dynamically switches to the alternative loop where the conditional load-safe invariant expressions are computed outside of the alternative loop and referenced from within the alternative loop.

    METHOD AND APPARATUS FOR EXPLOITING THREAD-LEVEL PARALLELISM
    49.
    发明申请
    METHOD AND APPARATUS FOR EXPLOITING THREAD-LEVEL PARALLELISM 有权
    用于开发螺纹水平并联的方法和装置

    公开(公告)号:US20080244549A1

    公开(公告)日:2008-10-02

    申请号:US11695012

    申请日:2007-03-31

    IPC分类号: G06F9/45

    CPC分类号: G06F8/456

    摘要: According to one example embodiment, there is disclosed herein uses partial recurrence relaxation for parallelizing DOACROSS loops on multi-core computer architectures. By one example definition, a DOACROSS may be a loop that allows successive iterations executing by overlapping; that is, all iterations must impose a partial execution order. According to one embodiment, the inventive subject matter may be used to transform the dependence structure of a given loop with recurrences for maximal degree of thread-level parallelism (TLP), where the threads can be mapped on to either different logical processors (in a hyperthreaded processor) or can be mapped onto different physical cores (or processors) in a multi-core processor.

    摘要翻译: 根据一个示例性实施例,这里公开了在多核计算机体系结构上使用部分递归松弛来并行化DOACROSS循环。 通过一个示例定义,DOACROSS可以是允许通过重叠执行连续迭代的循环; 也就是说,所有迭代必须强制执行部分执行顺序。 根据一个实施例,本发明的主题可以用于以线程级并行度(TLP)的最大程度的递归来转换给定循环的依赖结构,其中线程可以被映射到不同的逻辑处理器(在 超线程处理器)或可以映射到多核处理器中的不同物理核心(或处理器)上。