Method of, system for, and computer program product for performing weighted loop fusion by an optimizing compiler
AssigneeInternational Business Machines Corporation
InventorsNimrod Megiddo, Vivek Sarkar
Life of this patent
Estimating the term…
Loading patent…
AssigneeInternational Business Machines Corporation
InventorsNimrod Megiddo, Vivek Sarkar
Estimating the term…
An integer programming formulation for weighted loop fusion is presented. Loop fusion is a well-known program transformation that has shown to be effective in reducing loop overhead and improving register and cache locality. Weighted loop fusion is the problem of finding a legal partition of loop nests into fusible clusters so as to minimize the total inter-cluster edge weights. Past work has shown that the weighted loop fusion problem is NP-hard. Despite the NP-hardness property, the present invention provides optimal solutions that may be found efficiently, in the context of an optimizing compiler, for weighted loop fusion problem sizes that occur in practice. An integer programming formulation for weighted loop fusion with a problem size (number of variables and constraints) that is linearly proportional to the size of the input weighted loop fusion problem is also presented. The integer programming formulation may be solved efficiently using a general integer programming package. Alternatively, a custom branch-and-bound procedure for the integer programming formulation is presented that is more efficient than the procedures used in general integer programming.
A method of performing weighted loop fusion on a plurality of loop nests by a computer system, said method comprising the steps of:
An article of manufacture for use in a computer system for performing weighted loop fusion on a plurality of loop nests by the computer system, said article of manufacture comprising a computer-readable storage medium having a computer program embodied in said medium which may cause the computer system to:
A computer system for performing weighted loop fusion on a plurality of loop nests by the computer system, said computer system comprising:
Dependencies are inferred from the claim text.