发明名称 Method and system for incrementally improving a program layout
摘要 A method and system for incrementally improving the layout of a program image of a computer program to reduce the working set. The system iteratively selects pairs of basic blocks and reorders the basic blocks in the range delimited by the selected pair of basic blocks. The system selects the pairs of basic blocks so that the working set of the computer program is improved by reordering the basic block in the range. Thus, during each iteration, the working set is improved. The system continues with these iterations until a termination condition (e.g., number of iterations) is satisfied. In one embodiment, during each iteration the system designates one of the basic blocks as an initial anchor basic block. The system then repeats the following until the same range of basic blocks is identified twice in a row. The system first finds a basic block such that when the basic blocks in the range from the anchor basic block to the found basic block are reordered, the working set is more favorable than reordering any other range that ends with the anchor basic block. The system then designates the found basic block as the new anchor basic block. When the same range is found twice in a row, the system reorders the basic blocks in the range. This process is repeated for each iteration until a termination condition is satisfied. The resulting reordered program image has its working set improved.
申请公布号 US6381740(B1) 申请公布日期 2002.04.30
申请号 US19970931151 申请日期 1997.09.16
申请人 MICROSOFT CORPORATION 发明人 MILLER JOHN W.;DOUCEUR JOHN R.;FITZGERALD ROBERT P.
分类号 G06F9/45;(IPC1-7):G06F9/00 主分类号 G06F9/45
代理机构 代理人
主权项
地址