|
ABSTRACT
Although VLIW architectures offer the advantages of simplicity of design and high issue rates, a major impediment to their use is that they are not compatible with the existing software base. We describe new simple hardware features for a VLIW machine we call DAISY (Dynamically Architected Instruction Set from Yorktown). DAISY is specifically intended to emulate existing architectures, so that all existing software for an old architecture (including operating system kernel code) runs without changes on the VLIW. Each time a new fragment of code is executed for the first time, the code is translated to VLIW primitives, parallelized and saved in a portion of main memory not visible to the old architecture, by a Virtual Machine Monitor (software) residing in read only memory. Subsequent executions of the same fragment do not require a translation (unless cast out). We discuss the architectural requirements for such a VLIW, to deal with issues including self-modifying code, precise exceptions, and aggressive reordering of memory references in the presence of strong MP consistency and memory mapped I/O. We have implemented the dynamic parallelization algorithms for the PowerPC architecture. The initial results show high degrees of instruction level parallelism with reasonable translation overhead and memory usage.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
Joel Auslander , Matthai Philipose , Craig Chambers , Susan J. Eggers , Brian N. Bershad, Fast, effective dynamic compilation, Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation, p.149-159, May 21-24, 1996, Philadelphia, Pennsylvania, United States
|
| |
2
|
J.P. Buzen and U.O. Gagliardi. The Evolution of Virtual Machine Architecture National Computer Conference, pp.291-299, 1973.
|
| |
3
|
|
| |
4
|
|
| |
5
|
K. Ebeio~lu, Some Design Ideas for a VLIWArchitecture for Sequential-Natured Software, In Parallel Processing (Proceedings of IFIP WG 10.3 Working Conference on Parallel Processing), edited by M. Cosnard et al., pp. 3-21, North Holland. Available at http ://www. research, ibm. com/vliw
|
| |
6
|
K. Ebcio~glu and E.R. Altman, DAISY: Compilation for 100% Architectural Compatibility, Report No. RC 20538, IBM T.J. Watson Research Center. Available at http : //www.watson. ibm. corn: 8080
|
| |
7
|
K. Ebci0~lu, E.R. A/~nan, and E. Hokenek, A JAVA ILP Machine Based on Fast Dynamic Compilation, Proceedings of (IEEE MASCOTS) International Workshop on Security and Efficiency Aspects of Java, Eilat, Israel, January 9-10, 1997, Available at http ://www. watson, ibm. com: 8080
|
| |
8
|
K. Ebeio~,lu and R. Groves, Some Global Compiler Optimizations and Architectural Features for Improving the Performance of Superscalars, Report No. RC 16145, IBM T.J. Watson Research Center. Available at http : //www. research, ibm. com/vliw
|
 |
9
|
|
| |
10
|
T.R. Halfhill, Emulation: RISC's Secret Weapon BYTE, April 1994.
|
| |
11
|
W.M.Hwu VLIW... b it For Real This Time? Keynote Speech in MICRO-27, November 1994. The foils are currently in: http ://american. cs. ucdavis, edu/Micro27
|
| |
12
|
V. Kathail, M. Seh}ansker, and B.R. Rau, HPL PlayDoh Architecture Specification Version 1.0, Technical report HPL-93-80, Hewlett-Packard Laboratories, Technical Publications Department, 1501 Page Mill Road, Palo Alto, CA 94304, Feb. 1994.
|
 |
13
|
Scott A. Mahlke , William Y. Chen , Wen-mei W. Hwu , B. Ramakrishna Rau , Michael S. Schlansker, Sentinel scheduling for VLIW and superscalar processors, Proceedings of the fifth international conference on Architectural support for programming languages and operating systems, p.238-247, October 12-15, 1992, Boston, Massachusetts, United States
|
| |
14
|
S. W. Melvin , M. C. Shebanow , Y. N. Patt, Hardware support for large atomic units in dynamically scheduled machines, Proceedings of the 21st annual workshop on Microprogramming and microarchitecture, p.60-63, November 28-December 02, 1988, San Diego, California, United States
|
 |
15
|
|
| |
16
|
M. Moudgill, J.H. Moreno, K. Ebcio/glu, E.R. Altman, S.K. Chen, and A. Polyak, Compiler/Architecture Interaction in a Tree-Based VLlWProcessor, Report No. RC 20694, IBM T.J. Watson Research Center. Available at http://www, watson, ibm. com: 8080.
|
 |
17
|
|
| |
18
|
|
| |
19
|
|
| |
20
|
|
 |
21
|
|
 |
22
|
|
| |
23
|
T. ThompsonAn Atpha in PC Clothing BYTE, February 1996.
|
CITED BY 85
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Kemal Ebcioğlu , Erik R. Altman , Michael Gschwind , Sumedh Sathaye, Optimizations and oracle parallelism with dynamic translation, Proceedings of the 32nd annual ACM/IEEE international symposium on Microarchitecture, p.284-295, November 16-18, 1999, Haifa, Israel
|
|
|
|
|
|
|
|
|
|
|
|
Brian Fahs , Satarupa Bose , Matthew Crum , Brian Slechta , Francesco Spadini , Tony Tung , Sanjay J. Patel , Steven S. Lumetta, Performance characterization of a hardware mechanism for dynamic optimization, Proceedings of the 34th annual ACM/IEEE international symposium on Microarchitecture, December 01-05, 2001, Austin, Texas
|
|
|
|
|
|
|
|
|
|
|
|
Seongbae Park , SangMin Shim , Soo-Mook Moon, Evaluation of scheduling techniques on a SPARC-based VLIW testbed, Proceedings of the 30th annual ACM/IEEE international symposium on Microarchitecture, p.104-113, December 01-03, 1997, Research Triangle Park, North Carolina, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
P. Unnikrishnan , G. Chen , M. Kandemir , D. R. Mudgett, Dynamic compilation for energy adaptation, Proceedings of the 2002 IEEE/ACM international conference on Computer-aided design, p.158-163, November 10-14, 2002, San Jose, California
|
|
|
|
|
|
K. Scott , N. Kumar , S. Velusamy , B. Childers , J. W. Davidson , M. L. Soffa, Retargetable and reconfigurable software dynamic translation, Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization, March 23-26, 2003, San Francisco, California
|
|
|
Michael Gschwind , Kemal Ebcioğlu , Erik Altman , Sumedh Sathaye, Binary translation and architecture convergence issues for IBM system/390, Proceedings of the 14th international conference on Supercomputing, p.336-347, May 08-11, 2000, Santa Fe, New Mexico, United States
|
|
|
James C. Dehnert , Brian K. Grant , John P. Banning , Richard Johnson , Thomas Kistler , Alexander Klaiber , Jim Mattson, The Transmeta Code Morphing™ Software: using speculation, recovery, and adaptive retranslation to address real-life challenges, Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization, March 23-26, 2003, San Francisco, California
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Roni Rosner , Micha Moffie , Yiannakis Sazeides , Ronny Ronen, Selecting long atomic traces for high coverage, Proceedings of the 17th annual international conference on Supercomputing, June 23-26, 2003, San Francisco, CA, USA
|
|
|
Naveen Kumar , Bruce R. Childers , Mary Lou Soffa, Tdb: a source-level debugger for dynamically translated programs, Proceedings of the sixth international symposium on Automated analysis-driven debugging, p.123-132, September 19-21, 2005, Monterey, California, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Giuseppe Desoli , Nikolay Mateev , Evelyn Duesterwald , Paolo Faraboschi , Joseph A. Fisher, DELI: a new run-time control point, Proceedings of the 35th annual ACM/IEEE international symposium on Microarchitecture, November 18-22, 2002, Istanbul, Turkey
|
|
|
|
|
|
|
|
|
|
|
|
Gregory T. Sullivan , Derek L. Bruening , Iris Baron , Timothy Garnett , Saman Amarasinghe, Dynamic native optimization of interpreters, Proceedings of the 2003 workshop on Interpreters, virtual machines and emulators, p.50-57, June 12-12, 2003, San Diego, California
|
|
|
|
|
|
|
|
|
|
|
|
Youfeng Wu , Mauricio Breternitz , Justin Quek , Orna Etzion , Jesse Fang, The Accuracy of Initial Prediction in Two-Phase Dynamic Binary Translators, Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization, p.227, March 20-24, 2004, Palo Alto, California
|
|
|
|
|
|
|
|
|
|
|
|
Yoav Almog , Roni Rosner , Naftali Schwartz , Ari Schmorak, Specialized Dynamic Optimizations for High-Performance Energy-Efficient Microarchitecture, Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization, p.137, March 20-24, 2004, Palo Alto, California
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Swaroop Sridhar , Jonathan S. Shapiro , Eric Northup , Prashanth P. Bungale, HDTrans: an open source, low-level dynamic instrumentation system, Proceedings of the second international conference on Virtual execution environments, June 14-16, 2006, Ottawa, Ontario, Canada
|
|
|
|
|
|
Oliverio J. Santana , Ayose Falcón , Alex Ramirez , Mateo Valero, Branch predictor guided instruction decoding, Proceedings of the 15th international conference on Parallel architectures and compilation techniques, September 16-20, 2006, Seattle, Washington, USA
|
|
|
|
|
|
Chaohao Xu , Jianhui Li , Tao Bao , Yun Wang , Bo Huang, Metadata driven memory optimizations in dynamic binary translator, Proceedings of the 3rd international conference on Virtual execution environments, June 13-15, 2007, San Diego, California, USA
|
|
|
|
|
|
|
|
|
Qiang Wu , Margaret Martonosi , Douglas W. Clark , V. J. Reddi , Dan Connors , Youfeng Wu , Jin Lee , David Brooks, A Dynamic Compilation Framework for Controlling Microprocessor Energy and Performance, Proceedings of the 38th annual IEEE/ACM International Symposium on Microarchitecture, p.271-282, November 12-16, 2005, Barcelona, Spain
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Leonid Baraz , Tevi Devor , Orna Etzion , Shalom Goldenberg , Alex Skaletsky , Yun Wang , Yigel Zemach, IA-32 Execution Layer: a two-phase dynamic translator designed to support IA-32 applications on Itanium®-based systems, Proceedings of the 36th annual IEEE/ACM International Symposium on Microarchitecture, p.191, December 03-05, 2003
|
|
|
|
|
|
Jason D. Hiser , Daniel Williams , Wei Hu , Jack W. Davidson , Jason Mars , Bruce R. Childers, Evaluating Indirect Branch Handling Mechanisms in Software Dynamic Translation Systems, Proceedings of the International Symposium on Code Generation and Optimization, p.61-73, March 11-14, 2007
|
|
|
|
|
|
|
|
|
|
|
|
Qiang Wu , Margaret Martonosi , Douglas W. Clark , Vijay Janapa Reddi , Dan Connors , Youfeng Wu , Jin Lee , David Brooks, Dynamic-Compiler-Driven Control for Microprocessor Energy and Performance, IEEE Micro, v.26 n.1, p.119-129, January 2006
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Daniel Williams , Jason D. Hiser , Jack W. Davidson, Using program metadata to support SDT in object-oriented applications, Proceedings of the 4th workshop on the Implementation, Compilation, Optimization of Object-Oriented Languages and Programming Systems, p.55-62, July 06-06, 2009, Genova, Italy
|
INDEX TERMS
Primary Classification:
C.
Computer Systems Organization
C.0
GENERAL
Subjects:
Instruction set design (e.g., RISC, CISC, VLIW)
Additional Classification:
C.
Computer Systems Organization
F.
Theory of Computation
F.1
COMPUTATION BY ABSTRACT DEVICES
F.1.2
Modes of Computation
Subjects:
Parallelism and concurrency
G.
Mathematics of Computing
G.4
MATHEMATICAL SOFTWARE
Subjects:
Algorithm design and analysis
General Terms:
Algorithms,
Design,
Measurement,
Performance,
Theory
Keywords:
binary translation,
dynamic compilation,
instruction-level parallelism,
object code compatible VLIW,
superscalar
|