ENHANCING PROGRAM EXECUTION USING OPTIMIZATION-DRIVEN INLINING

    公开(公告)号:US20190278576A1

    公开(公告)日:2019-09-12

    申请号:US16283429

    申请日:2019-02-22

    Abstract: Optimizing program execution includes performing, to obtain an expanded call graph, an expansion of an initial call graph. The expanded call graph includes nodes. The initial call graph is defined for a program that includes a root method and a child method. The method may further include calculating a cost value and a benefit value for inlining the child method, calculating an inlining priority value as a function of the cost value and the benefit value, and inlining, based on analyzing the expanded call graph and comparing the inlining priority value to a dynamic threshold, the child method into the root method. The child method may correspond to a node in the expanded call graph.

    Enhancing program execution using optimization-driven inlining

    公开(公告)号:US10466987B2

    公开(公告)日:2019-11-05

    申请号:US16283429

    申请日:2019-02-22

    Abstract: Optimizing program execution includes performing, to obtain an expanded call graph, an expansion of an initial call graph. The expanded call graph includes nodes. The initial call graph is defined for a program that includes a root method and a child method. The method may further include calculating a cost value and a benefit value for inlining the child method, calculating an inlining priority value as a function of the cost value and the benefit value, and inlining, based on analyzing the expanded call graph and comparing the inlining priority value to a dynamic threshold, the child method into the root method. The child method may correspond to a node in the expanded call graph.

    Enhancing program execution using optimization-driven inlining

    公开(公告)号:US10261765B1

    公开(公告)日:2019-04-16

    申请号:US15917482

    申请日:2018-03-09

    Abstract: Optimizing program execution includes performing, to obtain a first expanded call graph, a first expansion of an initial call graph. The first initial call graph is defined for a program that includes a root method, a first child method, and a second child method. Based on an analysis of the first expanded call graph, the first child method, corresponding to a node in the first expanded call graph, is inlined into the root method. An optimization operation is performed in response to inlining the child method, and the first expanded call graph is updated based on the optimization operation. A second expansion of the updated call graph is performed. Based on an analysis of the second expanded call graph, the second child method is inlined into the root method, where the second child method corresponds to a node in the second expanded call graph. Compilation of the program is completed.

Patent Agency Ranking