Scheduling technique for software pipelining
    4.
    发明授权
    Scheduling technique for software pipelining 失效
    软件流水线调度技术

    公开(公告)号:US07962907B2

    公开(公告)日:2011-06-14

    申请号:US11840371

    申请日:2007-08-17

    IPC分类号: G06F9/44

    CPC分类号: G06F8/4452 G06F9/3838

    摘要: An improved scheduling technique for software pipelining is disclosed which is designed to find schedules requiring fewer processor clock cycles and reduce register pressure hot spots when scheduling multiple groups of instructions (e.g. as represented by multiple sub-graphs of a DDG) which are independent, and substantially identical. The improvement in instruction scheduling and reduction of hot spots is achieved by evenly distributing such groups of instructions around the schedule for a given loop.

    摘要翻译: 公开了一种用于软件流水线的改进的调度技术,其被设计为在调度多个独立的指令组(例如,由DDG的多个子图表示)时,需要更少的处理器时钟周期并减少寄存器压力热点,以及 基本相同。 指令调度的改善和热点的减少是通过围绕给定循环的时间表均匀分布这些指令组来实现的。

    Scheduling technique for software pipelining
    5.
    发明授权
    Scheduling technique for software pipelining 失效
    软件流水线调度技术

    公开(公告)号:US07331045B2

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

    申请号:US10835129

    申请日:2004-04-29

    IPC分类号: G06F9/45

    CPC分类号: G06F8/4452 G06F9/3838

    摘要: An improved scheduling technique for software pipelining is disclosed which is designed to find schedules requiring fewer processor clock cycles and reduce register pressure hot spots when scheduling multiple groups of instructions (e.g. as represented by multiple sub-graphs of a DDG) which are independent, and substantially identical. The improvement in instruction scheduling and reduction of hot spots is achieved by evenly distributing such groups of instructions around the schedule for a given loop.

    摘要翻译: 公开了一种用于软件流水线的改进的调度技术,其被设计为在调度多个独立的指令组(例如,由DDG的多个子图表示)时,需要更少的处理器时钟周期并减少寄存器压力热点,以及 基本相同。 指令调度的改善和热点的减少是通过围绕给定循环的时间表均匀分布这些指令组来实现的。

    Pinning internal slack nodes to improve instruction scheduling
    6.
    发明授权
    Pinning internal slack nodes to improve instruction scheduling 失效
    固定内部松弛节点以改善指令调度

    公开(公告)号:US07493611B2

    公开(公告)日:2009-02-17

    申请号:US10929193

    申请日:2004-08-30

    IPC分类号: G06F9/45

    CPC分类号: G06F8/4452

    摘要: A scheduling algorithm is provided for selecting the placement of instructions with internal slack into a schedule of instructions within a loop. The algorithm achieves this by pinning nodes with internal slack to corresponding nodes on the critical path of the code that have similar properties in terms of the data dependency graph, such as earliest time and latest time. The effect is that nodes with internal slack are more often optimally placed in the schedule, reducing the need for rotating registers or register copy instructions. The benefit of the present invention can primarily be seen when performing instruction scheduling or software pipelining on loop code, but can also apply to other forms of instruction scheduling when greater control of placement of nodes with internal slack is desired.

    摘要翻译: 提供了一种调度算法,用于选择具有内部松弛的指令的放置到循环内的指令调度。 该算法通过将具有内部松弛的节点固定到具有数据依赖图方面具有类似属性的代码的关键路径上的相应节点(诸如最早的时间和最近的时间)来实现。 效果是内部松弛的节点通常被最佳地放置在时间表中,减少了对旋转寄存器或寄存器复制指令的需要。 当在循环码上执行指令调度或软件流水线时,主要可以看到本发明的好处,但是当期望具有内部松弛的节点的放置的更大控制时也可以应用于其他形式的指令调度。

    Extension of swing modulo scheduling to evenly distribute uniform strongly connected components
    7.
    发明授权
    Extension of swing modulo scheduling to evenly distribute uniform strongly connected components 失效
    延伸模数调度以均匀分布均匀的强连接组件

    公开(公告)号:US07444628B2

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

    申请号:US10930040

    申请日:2004-08-30

    IPC分类号: G06F9/45

    CPC分类号: G06F8/4452

    摘要: A method, apparatus, and computer instructions for scheduling instructions for execution. Identify a series of instructions in a loop, wherein the series of instructions has a cyclic data dependency. Determine whether the series of instructions is a uniform series of instructions. Schedule execution of the uniform series of instructions within the loop to optimize execution of the loop in response to the identified series of instructions being the uniform series of instructions.

    摘要翻译: 一种用于调度执行指令的方法,装置和计算机指令。 识别循环中的一系列指令,其中该系列指令具有循环数据依赖性。 确定一系列指令是否是统一的指令系列。 计划执行循环内的统一指令序列,以响应于所指定的一系列指令是均匀的一系列指令来优化循环的执行。

    Pinning internal slack nodes to improve instruction scheduling

    公开(公告)号:US08387035B2

    公开(公告)日:2013-02-26

    申请号:US12353154

    申请日:2009-01-13

    IPC分类号: G06F9/45

    CPC分类号: G06F8/4452

    摘要: A scheduling algorithm is provided for selecting the placement of instructions with internal slack into a schedule of instructions within a loop. The algorithm achieves this by pinning nodes with internal slack to corresponding nodes on the critical path of the code that have similar properties in terms of the data dependency graph, such as earliest time and latest time. The effect is that nodes with internal slack are more often optimally placed in the schedule, reducing the need for rotating registers or register copy instructions. The benefit of the present invention can primarily be seen when performing instruction scheduling or software pipelining on loop code, but can also apply to other forms of instruction scheduling when greater control of placement of nodes with internal slack is desired.

    Extension of swing modulo scheduling to evenly distribute uniform strongly connected components
    9.
    发明授权
    Extension of swing modulo scheduling to evenly distribute uniform strongly connected components 失效
    延伸模数调度以均匀分布均匀的强连接组件

    公开(公告)号:US08266610B2

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

    申请号:US12233895

    申请日:2008-09-19

    IPC分类号: G06F9/45

    CPC分类号: G06F8/4452

    摘要: A method, apparatus, and computer instructions for scheduling instructions for execution. Identify a series of instructions in a loop, wherein the series of instructions has a cyclic data dependency. Determine whether the series of instructions is a uniform series of instructions. Schedule execution of the uniform series of instructions within the loop to optimize execution of the loop in response to the identified series of instructions being the uniform series of instructions.

    摘要翻译: 一种用于调度执行指令的方法,装置和计算机指令。 识别循环中的一系列指令,其中该系列指令具有循环数据依赖性。 确定一系列指令是否是统一的指令系列。 计划执行循环内的统一指令序列,以响应于所指定的一系列指令是均匀的一系列指令来优化循环的执行。

    Extension of Swing Modulo Scheduling to Evenly Distribute Uniform Strongly Connected Components
    10.
    发明申请
    Extension of Swing Modulo Scheduling to Evenly Distribute Uniform Strongly Connected Components 失效
    扩展Swing模数调度以均匀分布均匀的强连接组件

    公开(公告)号:US20090013316A1

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

    申请号:US12233895

    申请日:2008-09-19

    IPC分类号: G06F9/44

    CPC分类号: G06F8/4452

    摘要: A method, apparatus, and computer instructions for scheduling instructions for execution. Identify a series of instructions in a loop, wherein the series of instructions has a cyclic data dependency. Determine whether the series of instructions is a uniform series of instructions. Schedule execution of the uniform series of instructions within the loop to optimize execution of the loop in response to the identified series of instructions being the uniform series of instructions.

    摘要翻译: 一种用于调度执行指令的方法,装置和计算机指令。 识别循环中的一系列指令,其中该系列指令具有循环数据依赖性。 确定一系列指令是否是统一的指令系列。 计划执行循环内的统一指令序列,以响应于所指定的一系列指令是均匀的一系列指令来优化循环的执行。