Binary Level Dynamic Optimization

Factors Affecting Realistic Performance of Dynamic Optimization
Program optimization is essential for high performance in modern computing systems, but conventional static optimization is facing more and more challenges. Dynamic optimization is an approach to complement static compilers by transforming an executing program at run-time. My work focuses on a type of dynamic optimization that takes an executing native instruction stream as input and optimizes it without requiring any preparatory compiler phase or programmer assis­tance. Although such dynamic optimization seems to have potential, performance improvement is not guaranteed. The overall goal of this  research project s to develop a framework for exploring the potential performance benefit of dynamic optimization and to use this knowledge to develop techniques that exploit the potential.

Publications

[Abstract] Shukang Zhou, Bruce R. Childers, and Mary Lou Soffa. “Myth or Reality: Binary-Level Dynamic Optimization”, in submission.
[PDF] Apala Guha, Jason D. Hiser, Naveen Kumar, Jing Yang, Min Zhao, Shukang Zhou, Bruce R. Childers, Jack W. Davidson, Kim Hazelwood, and Mary Lou Soffa. “Virtual Execution Environments: Support and Tools”, NSF Next Generation Software Program Workshop held in conjunction with the International Parallel and Distributed Processing Symposium, Long Beach, CA, March 2007.
[PDF] Jing Yang, Shukang Zhou, and Mary Lou Soffa. “Dimension: An Instrumentation Tool for Virtual Execution Environments”, Second International Conference on Virtual Execution Environments (VEE '06), Ottawa, Canada, June 2006.
[PDF] Jason D. Hiser, Naveen Kumar, Min Zhao, Shukang Zhou, Bruce R. Childers, Jack W. Davidson, and Mary Lou Soffa, “Techniques and Tools for Dynamic Optimization”, NSF Next Generation Software Workshop, during the International Parallel and Distributed Processing Symposium, April 2006.
[PDF] Shukang Zhou, Bruce R. Childers, and Mary Lou Soffa, “Planning for Code Buffer Management in Distributed Virtual Execution Environments”, ACM/USENIX Virtual Execution Environments Conference (VEE’05), Chicago, IL, June 2005.
[PDF] Shukang Zhou, Bruce R. Childers, and Naveen Kumar, “Profile Guided Management of Code Partitions for Embedded Systems”, Conference on Design Automation and Test in Europe (DATE), Paris, France, February 2004 (short paper).
[TBD] Shukang Zhou, Bruce R. Childers, and Mary Lou Soffa. “Improving Bottlenecks in Binary-Level Dynamic Optimization”, in preparation.