Title :
Decreasing process memory requirements by overlapping program portions
Author :
Bowman, Richard L. ; Ratliff, Emily J. ; Whalley, David B.
Author_Institution :
Harris Corp., Melbourne, FL, USA
Abstract :
Most compiler optimizations focus on saving time and sometimes occur at the expense of increasing size. Yet processor speeds continue to increase at a faster rate than main memory and disk access times. Processors are now frequently being used in embedded systems that often have strict limitations on the size of programs it can execute. Also, reducing the size of a program may result in improved memory hierarchy performance. This paper describes general techniques for decreasing the memory requirements for a process by automatically overlapping portions of a program. Live range analysis, similar to the analysis used for allocating variables to registers, is used to determine which program portions conflict. Nonconflicting portions are assigned overlapping memory locations. The results show an average decrease of over 10% in process size for a variety of programs with minimal or no dynamic instruction increases
Keywords :
memory architecture; optimising compilers; performance evaluation; compiler optimizations; embedded systems; live range analysis; memory requirements; overlapping memory; process memory requirements; processor speeds; Computer languages; Embedded system; Optimizing compilers; Program processors; Programming profession; Registers; Runtime; Software engineering;
Conference_Titel :
System Sciences, 1998., Proceedings of the Thirty-First Hawaii International Conference on
Conference_Location :
Kohala Coast, HI
Print_ISBN :
0-8186-8255-8
DOI :
10.1109/HICSS.1998.649204