A new approach to program restructuring and clustering

A new program restructuring algorithm aimed at reducing the working set size of a program executing in a working set environment is developed. The algorithm makes use of the concept of locality as defined in the Bounded Locality Interval (BLI) program behaviour model to discern program referencing p...

Full description

Bibliographic Details
Main Author: Yap, Tuan-Bin
Language:English
Published: 2010
Online Access:http://hdl.handle.net/2429/24045
Description
Summary:A new program restructuring algorithm aimed at reducing the working set size of a program executing in a working set environment is developed. The algorithm makes use of the concept of locality as defined in the Bounded Locality Interval (BLI) program behaviour model to discern program referencing patterns. The basic principle of this as well as all other restructuring algorithms is to put relocatable blocks having a prominent referencing pattern in the same virtual pages. Simulation experiments were conducted to evaluate the performance of the new scheme relative to the other existing algorithms. The algorithm was also evaluated on a real system which uses a clock page replacement strategy. A new clustering scheme used in the restructuring procedure is also developed. The new technique decomposes the clustering problem into subproblems which can then be solved individually. The classical hierarchical clustering algorithm yields a time complexity of n³ where n is the number of distinct blocks in the program to be restructured. The decomposition approach reduces the time-complexity of the algorithm to n². Several other practical aspects of program restructuring are also discussed in the thesis. === Science, Faculty of === Computer Science, Department of === Graduate