Working set size reduction by restructuring APL workspaces
APL Workspaces usually have a random distribution of the defined APL functions. The physical location of a defined APL function within an APL workspace depends on its history of creation, modification, or copying. Furthermore in APL a good programming style results in a large number of small functions. The execution of an APL program in a virtual storage environment usually leads to comparatively large working set sizes because the APL functions are scattered over the workspace. However, the interrelation between the functions can be analysed and exploited to reorganize a workspace and thus reduce the working set sizes. Methods of restructuring an APL workspace are proposed. Results of an investigation on a large APL/CMS workspace using these methods are presented.
- (1).Hatfield, D.J. and Gerald, J.: Program Restructuring for Virtual Memory. IBM Systems Journal, 10, 3, 168–192, 1971.Google Scholar
- (2).Hatfield, D. J.: Experiments on Page Size, Program Access Patterns, and Virtual Memory Performance. IBM Journal of Research and Development 16, 1, 58–66, 1972.Google Scholar
- (3).Ferrari, D.: Improved Locality by Critical Working Sets. Communications of the ACM, 17, 11, 614–620, 1974.Google Scholar
- (4).Baier, J.L. and Sager, G.R.: Dynamic Improvement of Locality in Virtual Memory Systems. IEEE Transactions on Software Engineering, SE-2, 1, 54–62, 1976.Google Scholar
- (5).Morrison, J.E.: User Program Performance in Virtual Storage Systems. IBM Systems Journal, 12, 3, 216–237, 1973.Google Scholar
- (6).Baer,J.L. and Caughey,R.: Segmentation and Optimization of Programs from Cyclic Structure Analysis. Proc. AFIPS 1972, Spring Joint Computer Conference, 40, 23–36.Google Scholar