Allocating operators of a streaming application to virtual machines based on monitored performance
    101.
    发明授权
    Allocating operators of a streaming application to virtual machines based on monitored performance 有权
    基于受监控的性能,将流应用程序的运营商分配到虚拟机

    公开(公告)号:US09503334B2

    公开(公告)日:2016-11-22

    申请号:US14277853

    申请日:2014-05-15

    Abstract: Performance thresholds are defined for operators in a flow graph for a streaming application. A streams manager deploys the flow graph to one or more virtual machines (VMs). The performance of each portion of the flow graph on each VM is monitored. A VM is selected. When the performance of the portion of the flow graph in the selected VM does not satisfy the defined performance threshold(s), a determination is made regarding whether the portion of the flow graph is underperforming or overperforming. When the portion of the flow graph is underperforming, the portion of the flow graph is split into multiple portions that are implemented on multiple VMs. When the portion of the flow graph is overperforming, a determination is made of whether a neighbor VM is also overperforming. When a neighbor VM is also overperforming, the two VMs may be coalesced into a single VM.

    Abstract translation: 针对流应用程序的流程图中的运算符定义了性能阈值。 流管理器将流程图部署到一个或多个虚拟机(VM)。 监视每个VM上流程图的每个部分的性能。 选择一个虚拟机。 当所选择的VM中的流程图的部分的性能不满足定义的性能阈值时,确定流程图的该部分是否表现不佳或超过性能。 当流程图的部分表现不佳时,流程图的部分被分割成在多个虚拟机上实现的多个部分。 当流程图的部分超过执行时,确定邻近VM是否也超过性能。 当邻居VM也超过性能时,两个VM可以合并成单个VM。

    RUNTIME STATE BASED CODE RE-OPTIMIZATION
    103.
    发明申请
    RUNTIME STATE BASED CODE RE-OPTIMIZATION 审中-公开
    基于运行状态的代码重新优化

    公开(公告)号:US20160321046A1

    公开(公告)日:2016-11-03

    申请号:US15073500

    申请日:2016-03-17

    Applicant: Apple Inc.

    Abstract: A method and an apparatus to execute a code compiled from a source code to access an untyped variable are described. An optimized access code may be compiled in the code with speculative optimization via a type prediction of runtime value of the untyped variable. Invalidity of the type prediction may be dynamically detected for future runtime values of the untyped variable. The code may be updated with an access code compiled for the access without the speculative optimization based on the invalidity detection. The updated code can be executed for the access to the untyped variable without executing the optimized access code.

    Abstract translation: 描述了执行从源代码编译的代码以访问无类型变量的方法和装置。 优化的访问代码可以通过对类型预测的无类型变量的运行时值的推测优化来编译在代码中。 可以动态地检测类型预测的无效性,用于未类型化变量的未来运行时值。 可以使用针对访问编译的访问代码更新代码,而无需基于无效性检测的推测优化。 可以执行更新的代码来访问无类型的变量,而不执行优化的访问代码。

    Randomly branching using hardware watchpoints
    104.
    发明授权
    Randomly branching using hardware watchpoints 有权
    使用硬件观察点随机分支

    公开(公告)号:US09483379B2

    公开(公告)日:2016-11-01

    申请号:US14054356

    申请日:2013-10-15

    Abstract: A system and method for efficiently performing program instrumentation. A processor processes instructions stored in a memory. The processor allocates a memory region for the purpose of creating “random branches” in the computer code utilizing existing memory access instructions. When the processor processes a given instruction, the processor both accesses a first location in the memory region and may determine a condition is satisfied. In response, the processor generates an interrupt. The corresponding interrupt handler may transfer control flow from the computer program to instrumentation code. The condition may include a pointer storing an address pointing to locations within the memory region equals a given address after the point is updated. Alternatively, the condition may include an updated data value stored in a location pointed to by the given address equals a threshold value.

    Abstract translation: 一种有效执行程序仪表的系统和方法。 处理器处理存储在存储器中的指令。 处理器为了在现有的存储器访问指令中的计算机代码中创建“随机分支”而分配存储器区域。 当处理器处理给定的指令时,处理器都访问存储器区域中的第一位置并且可以确定满足条件。 作为响应,处理器产生中断。 相应的中断处理程序可以将控制流程从计算机程序传送到仪表代码。 条件可以包括存储指向存储器区域内的位置的地址的指针等于点更新之后的给定地址。 或者,条件可以包括存储在由给定地址指向的位置的更新的数据值等于阈值。

    Method and apparatus for enabling an executed control flow path through computer program code to be determined
    106.
    发明授权
    Method and apparatus for enabling an executed control flow path through computer program code to be determined 有权
    能够确定通过计算机程序代码执行的控制流程路径的方法和装置

    公开(公告)号:US09477577B2

    公开(公告)日:2016-10-25

    申请号:US14233401

    申请日:2011-07-20

    Applicant: David Baca

    Inventor: David Baca

    Abstract: A method of enabling an executed control flow path through computer program code to be determined. The method comprising modelling cumulative instruction counts for control flow paths through the computer program code, and inserting at least one probe within the computer program code to enable a cumulative instruction count value for at least one control flow path of the computer program code to be accessed.

    Abstract translation: 能够确定通过计算机程序代码执行的控制流程的方法。 该方法包括对通过计算机程序代码的控制流程路径的累积指令计数进行建模,以及在计算机程序代码内插入至少一个探针,以使得能够访问计算机程序代码的至少一个控制流程路径的累积指令计数值 。

    Guarding a monitoring scope and interpreting partial control flow context
    108.
    发明授权
    Guarding a monitoring scope and interpreting partial control flow context 有权
    保护监控范围并解释部分控制流程环境

    公开(公告)号:US09471461B2

    公开(公告)日:2016-10-18

    申请号:US14227481

    申请日:2014-03-27

    CPC classification number: G06F11/3466 G06F2201/865

    Abstract: A computer implemented method for maintaining a program's calling context correct even when a monitoring of the program goes out of a scope of a program analysis by validating function call transitions and recovering partial paths before and after the violation of the program's control flow. The method includes detecting a violation of control flow invariants in the software system including validating a source and destination of a function call in the software system, interpreting a pre-violation partial path responsive to a failure of the validating, and interpreting a post violation path after a violation of program flow.

    Abstract translation: 即使当程序的监视超出程序分析的范围时,通过验证功能调用转换并在违反程序的控制流程之前和之后恢复部分路径,用于维护程序的调用上下文的计算机实现的方法也是正确的。 该方法包括检测软件系统中的控制流不变量的违反,包括验证软件系统中的函数调用的源和目的地,响应于验证失败解释预先违反部分路径,以及解释后违反路径 违反程序流程后。

Patent Agency Ranking