Title :
Instruction folding in Java processor
Author :
Ton, Lee-Ren ; Chang, Lung-Chung ; Kao, Min-Fu ; Tseng, Han-Min ; Shang, Shi-Sheng ; Ma, Ruey-Liang ; Wang, Dze-Chaung ; Chung, Chung-Ping
Author_Institution :
Dept. of Comput. Sci. & Inf. Eng., Nat. Chiao Tung Univ., Hsinchu, Taiwan
Abstract :
Traditionally, the performance of a stack machine was limited by the true data dependency. A performance enhancement mechanism-Stack Operations Folding-was used in Sun Microelectronics´ picoJava design and it can reduce up to 60% of all stack operations. In this paper, we use the Java bytecode language as the target machine language, and study its instruction folding on a proposed machine model. Three folding strategies: 2-foldable, 3-foldable and 4-foldable, were simulated and evaluated. Statistical data show that our third folding strategy eliminates 73% of all stack operations, and each strategy has an overall program speedup of 1.19, 1.25 and 1.26, respectively, as compared to a traditional stack machine. Moreover, a Java machine model suitable for instruction folding, together with its pipeline stages, are presented. It seems to have the best cost/performance effectiveness of a Java stack machine if six bytes decoder width and the second folding strategy-the three-foldable strategy-are adopted
Keywords :
parallel architectures; parallel machines; performance evaluation; pipeline processing; 2-foldable; 3-foldable; 4-foldable; Java bytecode; Java processor; Java stack machine; Stack Operations Folding; data dependency; instruction folding; performance enhancement; picoJava design; stack machine; Analytical models; Application software; Computer networks; Computer science; Costs; Decoding; Java; Performance analysis; Pipelines; Sun;
Conference_Titel :
Parallel and Distributed Systems, 1997. Proceedings., 1997 International Conference on
Conference_Location :
Seoul
Print_ISBN :
0-8186-8227-2
DOI :
10.1109/ICPADS.1997.652541