Providing predictable scheduling of programs using a repeating precomputed schedule

    公开(公告)号:US06792445B1

    公开(公告)日:2004-09-14

    申请号:US09564822

    申请日:2000-05-04

    IPC分类号: G06F900

    CPC分类号: G06F9/4887

    摘要: The present invention provides predictable scheduling of programs using a repeating precomputed schedule. In a preferred embodiment, a scheduler accesses an activity scheduling graph. The activity scheduling graph is comprised of nodes each representing a recurring execution interval, and has one root, one or more leaves, and at least one path from the root to each leaf. Each node is on at least one path from the root to a leaf, and the number of times the execution interval represented by each node occurs during the traversal of the graph is equal to the number of paths from the root to a leaf that the node is on. Each node has associated with it an execution interval length, and is adapted to being dedicated to executing the threads of a single activity. The scheduler first selects a current node within the accessed scheduling graph. When the processor becomes available to execute threads, the scheduler advances from the current node to a new current node in accordance with a root-to-leaf traversal of the scheduling graph. After advancing to the new current node, the scheduler executes one or more threads of the activity to which the new current node is dedicated for the execution interval length associated with the new current node. In a further preferred embodiment, the scheduler allocates specific iterations through specific nodes to satisfy the constraints submitted by threads.

    Providing predictable scheduling of programs using a repeating precomputed schedule
    2.
    发明授权
    Providing predictable scheduling of programs using a repeating precomputed schedule 失效
    使用重复的预先计算的计划提供可预测的程序调度

    公开(公告)号:US06317774B1

    公开(公告)日:2001-11-13

    申请号:US08781106

    申请日:1997-01-09

    IPC分类号: G06F900

    CPC分类号: G06F9/4887

    摘要: The present invention provides predictable scheduling of programs using a repeating precomputed schedule. In a preferred embodiment, a scheduler accesses an activity scheduling graph. The activity scheduling graph is comprised of nodes each representing a recurring execution interval, and has one root, one or more leaves, and at least one path from the root to each leaf. Each node is on at least one path from the root to a leaf, and the number of times the execution interval represented by each node occurs during the traversal of the graph is equal to the number of paths from the root to a leaf that the node is on. Each node has associated with it an execution interval length, and is adapted to being dedicated to executing the threads of a single activity. The scheduler first selects a current node within the accessed scheduling graph. When the processor becomes available to execute threads, the scheduler advances from the current node to a new current node in accordance with a root-to-leaf traversal of the scheduling graph. After advancing to the new current node, the scheduler executes one or more threads of the activity to which the new current node is dedicated for the execution interval length associated with the new current node. In a further preferred embodiment, the scheduler allocates specific iterations through specific nodes to satisfy the constraints submitted by threads.

    摘要翻译: 本发明使用重复的预先计算的进度来提供程序的可预测的调度。 在优选实施例中,调度器访问活动调度图。 活动调度图由每个表示循环执行间隔的节点组成,并且具有一个根,一个或多个叶以及从根到每个叶的至少一个路径。 每个节点在从根到叶的至少一个路径上,并且在图的遍历期间发生由每个节点表示的执行间隔的次数等于从根到叶的路径的数量,该节点 是在。 每个节点与其相关联的执行间隔长度,并且适于专用于执行单个活动的线程。 调度器首先选择所访问的调度图中的当前节点。 当处理器可用于执行线程时,调度器将根据调度图的根到叶遍历从当前节点前进到新的当前节点。 在进入新的当前节点之后,调度器执行新的当前节点专用于与新的当前节点相关联的执行间隔长度的活动的一个或多个线程。 在另一优选实施例中,调度器通过特定节点分配特定迭代以满足线程提交的约束。

    Providing predictable scheduling of programs using a repeating precomputed schedule
    3.
    发明授权
    Providing predictable scheduling of programs using a repeating precomputed schedule 有权
    使用重复的预先计算的计划提供可预测的程序调度

    公开(公告)号:US06490612B1

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

    申请号:US09564564

    申请日:2000-05-04

    IPC分类号: G06F15173

    CPC分类号: G06F9/4887

    摘要: The present invention provides predictable scheduling of programs using a repeating precomputed schedule. In a preferred embodiment, a scheduler accesses an activity scheduling graph. The activity scheduling graph is comprised of nodes each representing a recurring execution interval, and has one root, one or more leaves, and at least one path from the root to each leaf. Each node is on at least one path from the root to a leaf, and the number of times the execution interval represented by each node occurs during the traversal of the graph is equal to the number of paths from the root to a leaf that the node is on. Each node has associated with it an execution interval length, and is adapted to being dedicated to executing the threads of a single activity. The scheduler first selects a current node within the accessed scheduling graph. When the processor becomes available to execute threads, the scheduler advances from the current node to a new current node in accordance with a root-to-leaf traversal of the scheduling graph. After advancing to the new current node, the scheduler executes one or more threads of the activity to which the new current node is dedicated for the execution interval length associated with the new current node. In a further preferred embodiment, the scheduler allocates specific iterations through specific nodes to satisfy the constraints submitted by threads.

    摘要翻译: 本发明使用重复的预先计算的进度来提供程序的可预测的调度。 在优选实施例中,调度器访问活动调度图。 活动调度图由每个表示循环执行间隔的节点组成,并且具有一个根,一个或多个叶以及从根到每个叶的至少一个路径。 每个节点在从根到叶的至少一个路径上,并且在图的遍历期间发生由每个节点表示的执行间隔的次数等于从根到叶的路径的数量,该节点 是在。 每个节点与其相关联的执行间隔长度,并且适于专用于执行单个活动的线程。 调度器首先选择所访问的调度图中的当前节点。 当处理器可用于执行线程时,调度器将根据调度图的根到叶遍历从当前节点前进到新的当前节点。 在进入新的当前节点之后,调度器执行新的当前节点专用于与新的当前节点相关联的执行间隔长度的活动的一个或多个线程。 在另一优选实施例中,调度器通过特定节点分配特定迭代以满足线程提交的约束。

    Providing predictable scheduling of programs using a repeating precomputed schedule
    4.
    发明授权
    Providing predictable scheduling of programs using a repeating precomputed schedule 有权
    使用重复的预先计算的计划提供可预测的程序调度

    公开(公告)号:US06718360B1

    公开(公告)日:2004-04-06

    申请号:US09564881

    申请日:2000-05-04

    IPC分类号: G06F900

    CPC分类号: G06F9/4887

    摘要: The present invention provides predictable scheduling of programs using a repeating precomputed schedule. In a preferred embodiment, a scheduler accesses an activity scheduling graph. The activity scheduling graph is comprised of nodes each representing a recurring execution interval, and has one root, one or more leaves, and at least one path from the root to each leaf. Each node is on at least one path from the root to a leaf, and the number of times the execution interval represented by each node occurs during the traversal of the graph is equal to the number of paths from the root to a leaf that the node is on. Each node has associated with it an execution interval length, and is adapted to being dedicated to executing the threads of a single activity. The scheduler first selects a current node within the accessed scheduling graph. When the processor becomes available to execute threads, the scheduler advances from the current node to a new current node in accordance with a root-to-leaf traversal of the scheduling graph. After advancing to the new current node, the scheduler executes one or more threads of the activity to which the new current node is dedicated for the execution interval length associated with the new current node. In a further preferred embodiment, the scheduler allocates specific iterations through specific nodes to satisfy the constraints submitted by threads.

    摘要翻译: 本发明使用重复的预先计算的进度来提供程序的可预测的调度。 在优选实施例中,调度器访问活动调度图。 活动调度图由每个表示循环执行间隔的节点组成,并且具有一个根,一个或多个叶以及从根到每个叶的至少一个路径。 每个节点在从根到叶的至少一个路径上,并且在图的遍历期间发生由每个节点表示的执行间隔的次数等于从根到叶的路径的数量,该节点 是在。 每个节点与其相关联的执行间隔长度,并且适于专用于执行单个活动的线程。 调度器首先选择所访问的调度图中的当前节点。 当处理器可用于执行线程时,调度器将根据调度图的根到叶遍历从当前节点前进到新的当前节点。 在进入新的当前节点之后,调度器执行新的当前节点专用于与新的当前节点相关联的执行间隔长度的活动的一个或多个线程。 在另一优选实施例中,调度器通过特定节点分配特定迭代以满足线程提交的约束。

    Application-level access to kernel input/output state
    5.
    发明授权
    Application-level access to kernel input/output state 失效
    应用程序级访问内核输入/输出状态

    公开(公告)号:US07117501B2

    公开(公告)日:2006-10-03

    申请号:US10301468

    申请日:2002-11-21

    IPC分类号: G06F15/163

    CPC分类号: G06F9/544 G06F9/545

    摘要: A technique for tracking a state of one or more input/output (I/O) channels associated with an application, by the application itself, comprises the steps of: (i) storing, by an operating system kernel, one or more selected elements of the state of at least a portion of the one or more I/O channels associated with the application in a memory which is shared by the application and the operating system kernel, when the one or more elements are available to the operating system kernel; (ii) acquiring, by the application, at least a portion of the stored elements through one or more memory read operations of the shared memory; and (iii) assessing, by the application, one or more of the acquired elements to determine the state of the one or more I/O channels corresponding thereto. In this manner, a need for context switching to track the state of the one or more I/O channels is thereby eliminated.

    摘要翻译: 用于跟踪由应用程序本身与应用相关联的一个或多个输入/输出(I / O)信道的状态的技术包括以下步骤:(i)由操作系统内核存储一个或多个所选元素 当所述一个或多个元件对于所述操作系统内核可用时,所述至少一部分所述一个或多个I / O通道的状态与所述应用程序相关联的所述应用程序和所述操作系统内核共享的存储器中的状态; (ii)通过所述共享存储器的一个或多个存储器读取操作,通过所述应用获取所存储的元件的至少一部分; 以及(iii)由应用程序评估所获取的元素中的一个或多个以确定与其对应的一个或多个I / O信道的状态。 以这种方式,由此消除了用于跟踪一个或多个I / O信道的状态的上下文切换的需要。

    Method and apparatus for using virtual machine technology for managing parallel communicating applications
    10.
    发明授权
    Method and apparatus for using virtual machine technology for managing parallel communicating applications 失效
    用于使用虚拟机技术来管理并行通信应用的方法和装置

    公开(公告)号:US08713564B2

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

    申请号:US12098219

    申请日:2008-04-04

    IPC分类号: G06F9/455 G06F9/46

    摘要: A method (and system) for managing a distributed-memory parallel application running on multiple servers, includes dynamically moving a plurality of executable program components, where each of the plurality of executable program components are running on one of a plurality of virtual machines, using migration of the virtual machines between physical servers. The load balancing is operated based on a workload of each of the virtual machines and servers, where a virtual machine, or a plurality of virtual machines, are transferred to balance the workload between each of the servers.

    摘要翻译: 一种用于管理在多个服务器上运行的分布式存储器并行应用的方法(和系统),包括动态移动多个可执行程序组件,其中所述多个可执行程序组件中的每一个在多个虚拟机之一上运行,使用 在物理服务器之间迁移虚拟机。 基于每个虚拟机和服务器的工作负载来操作负载平衡,其中虚拟机或多个虚拟机被传送以平衡每个服务器之间的工作负载。