Applications of Machine Virtualization
Xiaoxin Chen, Tal Garfinkel, E Christopher Lewis, Pratap Sabrahmanyam,
Carl A. Waldspurger, Dan Boneh, Jeffrey Dwoskin, and Dan R. K. Ports.
"Overshadow: A Virtualization-Based Approach to Retrofitting Protection
in Commodity Operating Systems," To appear in the
Proceedings of the
Thirteenth International Conference on Architectural Support for
Programming Languages and Operating Systems (ASPLOS), March
2008. (
PDF)
Dynamic Binary Translation (via Hardware)
Marc L. Corliss, Vlad Petric, and E Christopher Lewis. "Dynamic
Translation as a Systems Service," In the
Proceedings of the
Workshop on the Interaction Between Operating Systems and Computer
Architecture (WIOSCA) (held in conjunction with ISCA), June
2006. (
PDF)
Marc L. Corliss, E Christopher Lewis, and Amir Roth. "The
Implementation and Evaluation of Dynamic Code Decompression using
DISE,"
ACM Transactions on Embedded Computing Systems,
4(1):38-72, February 2005. (
PDF)
Marc L. Corliss and E Christopher Lewis. "A DISE Framework for
Securing Software," Technical Report MS-CIS-05-13, Department of
Computer and Information Science, University of Pennsylvania,
Philadelphia, PA, April 2005.
Marc L. Corliss, E Christopher Lewis, and Amir Roth, "Low-Overhead
Debugging via Flexible Dynamic Instrumentation with DISE," In the
Proceedings of the Eleventh International Symposium on
High-Performance Computer Architecture (HPCA-11), pages
303-314, February 2005. (
PDF)
Marc L. Corliss, E Christopher Lewis, and Amir Roth. "Using DISE
to Protect Return Addresses from Attack," In the
Proceedings of
the Workshop on Architectural Support for Security and
Anti-Virus (held in conjunction with ASPLOS), October 2004.
(
PDF)
Marc L. Corliss, E Christopher Lewis, and Amir Roth, "DISE: A
Programmable Macro Engine for Customizing Applications," In the
Proceedings of the Thirtieth International Symposium on
Computer Architecture (ISCA-30), June 2003. (
PDF)
Marc L. Corliss, E Christopher Lewis, and Amir Roth, "A DISE
Implementation of Dynamic Code Decompression," In the
Proceedings of the Conference on Languages, Compilers, and
Tools for Embedded Systems (LCTES '03), June 2003. (
PDF)
Marc L. Corliss, E Christopher Lewis, and Amir Roth. "DISE:
Dynamic Instruction Stream Editing," Technical Report
MS-CIS-02-24, Department of Computer and Information Science,
University of Pennsylvania, Philadelphia, Pennsylvania, July
2002. (
PDF)
Macros in C
Matt R. Jacobs and E Christopher Lewis. "SMART C: A Semantic Macro
Replacement Translator for C," In the
Proceedings of the IEEE
International Workshop on Source Code Analysis and Manipulation
(SCAM '06), September 2006. (
PDF)
Transactional Memory
Colin Blundell, Joe Devietti, E Christopher Lewis, and Milo M. K. Martin.
"Making the Fast Case Common and the Uncommon Case Simple in Unbounded
Transactional Memory,"
In the
Proceedings of the Thirty-Fourth International Symposium on
Computer Architecture (ISCA-34), June 2007. (
PDF)
Colin Blundell, E Christopher Lewis, and Milo M. K. Martin.
"Subleties of Transactional Memory Atomicity Semantics,"
IEEE Computer Architecture Letters, 5(2), July-December 2006.
(
PDF)
Colin Blundell, E Christopher Lewis, and Milo
M. K. Martin. "Unrestricted Transactional Memory: Supporting I/O
and System Calls within Transactions," Technical Report CIS-06-09,
Department of Computer and Information Science, University of
Pennsylvania, Philadelphia, PA, April 2006. (
PDF)
Colin Blundell, E Christopher Lewis, and Milo
M.K. Martin. "Deconstructing Transactional Semantics: The
Subtleties of Atomicity," In the
Proceedings of the Annual
Workshop on Duplicating, Deconstructing, and Debunking (held
in conjunction with ISCA), June 2005. (
PDF)
Parallel Programming Languages (Design and Implementation)
Bradford L. Chamberlain, Sung-Eun Choi, E Christopher Lewis,
Calvin Lin, Lawrence Snyder, and W. Derrick Weathersby. "ZPL: A
Machine Independent Programming Language for Parallel Computers,"
IEEE Transactions on Software Engineering, 26(3):197-211,
March 2000. (
PDF)
Bradford L. Chamberlain, Sung-Eun Choi, E Christopher Lewis,
Calvin Lin, Lawrence Snyder, and W. Derrick Weathersby. "The Case
for High-Level Parallel Programming in ZPL,"
IEEE Computational
Science and Engineering, 5(3):76-86, July-September 1998. (
PDF)
Bradford L. Chamberlain, E Christopher Lewis, Calvin Lin, and
Lawrence Snyder, "Regions: An Abstraction for Expressing Array
Computation," In the
Proceedings of the 1999 ACM SIGAPL/SIGPLAN
International Conference on Array Programming Languages (APL
'99), pages 41-49, August 1999. (
PDF)
Bradford L. Chamberlain, E Christopher Lewis, and Lawrence Snyder,
"Language Support for Pipelining Wavefront Computations," In the
Proceedings of the Workshop on Languages and Compilers for
Parallel Computing, August 1999. (
PDF)
E Christopher Lewis, Calvin Lin, and Lawrence Snyder, "The
Implementation and Evaluation of Fusion and Contraction in Array
Languages," In the
Proceedings of the ACM SIGPLAN `98
Conference on Programming Language Design and Implementation
(PLDI), pages 50-59, June 1998. (
PDF)
Bradford L. Chamberlain, Sung-Eun Choi, E Christopher Lewis,
Calvin Lin, Lawrence Snyder, and W. Derrick Weathersby, "ZPL's
WYSIWYG Performance Model," In the
Proceedings of the IEEE
Workshop on High-Level Parallel Programming Models and Supportive
Environments, pages 50-61, March 1998. (
PDF)
Bradford L. Chamberlain, Sung-Eun Choi, E Christopher Lewis,
Calvin Lin, Lawrence Snyder, and W. Derrick Weathersby,
"Factor-Join: A Unique Approach to Compiling Array Languages for
Parallel Machines," In the
Proceedings of the Workshop on
Languages and Compilers for Parallel Computing, pages 481-500,
August 1996. (
PDF)
Ibrahim Hur, E Christopher Lewis and Calvin Lin, "Evaluation of
Optimizing Multi-Dimensional Shift Communication via
Piggybacking," Technical Report, Department of Computer Science
and Engineering, University of Washington, Seattle, Washington,
December 1999.
Bradford L. Chamberlain, E Christopher Lewis, and Lawrence Snyder,
"A Region-based Approach to Sparse Parallel Computation,"
Technical Report UW-CSE-98-11-01, Department of Computer Science
and Engineering, University of Washington, Seattle, Washington,
November 1998.
E Christopher Lewis, "Support for Software Assisted Speculative
Execution", Technical Report UW-CSE-98-09-05, Department of
Computer Science and Engineering, University of Washington,
Seattle, Washington, September 1998.
Calvin Lin, Lawrence Snyder, Ruth Anderson, Bradford
L. Chamberlain, Sung-Eun Choi, E Christopher Lewis, and W. Derrick
Weathersby, "ZPL vs. HPF: A Comparison of Performance and
Programming Style," Technical Report UW-CSE-95-11-05, Department
of Computer Science and Engineering, University of Washington,
Seattle, Washington, November 1995. (
PDF)
Parallel Applications
E Christopher Lewis and Lawrence Snyder, "Pipelining Wavefront
Computations: Experiences and Performance," In the
Proceedings
of the 5th IEEE International Workshop on High-Level Parallel
Programming Models and Supportive Environments (held in
conjunction with IPDPS), May 2000. (
PDF)
Bradford L. Chamberlain, E Christopher Lewis, Lawrence Snyder,
"Problem Space Promotion and Its Evaluation as a Technique for
Efficient Parallel Computation," In the
Proceedings of the 13th
International Conference on Supercomputing, pages 311-318,
June 1999. (
PDF)
E Christopher Lewis, Calvin Lin, Lawrence Snyder, and George
Turkiyyah, "A Portable Parallel N-Body Solver," In the
Proceedings of the Seventh SIAM Conference on Parallel
Processing for Scientific Computing, pages 331-336, February
1995. (
PDF)
Education
Sung-Eun Choi and E Christopher Lewis, "A Study of Common Pitfalls
in Simple Multi-Threaded Programs," In the
Proceedings of the
Thirty-first ACM SIGCSE Technical Symposium on Computer Science
Education, March 2000. (
PDF)
Theses
Marc L. Corliss, The Design, Implementation, and Evaluation of the
Dynamic Instruction Stream Editor (DISE), PhD Thesis, University
of Pennsylvania, 2006. (
PDF)
E Christopher Lewis, Achieving Robust Performance in Parallel
Programming Languages, PhD Thesis, University of Washington,
2001. (
PDF)
Copyrights
Please respect the copyrights held by the authors and publishers.
Definitive versions of these papers appear in publications from ACM,
IEEE, and other publishers.
Support
Most of this work has been funded via the following grants.
NSF CAREER Award CCF-0347290, CAREER: Take Your Vitamins: Robust
Parallel Software through Supplement-Oriented Programming,
$400,000, 2/04 - 2/09.
NSF Award CCR-0311199, DISE: A New Hardware-Software Interface for
Customizing Application Execution, $240,000, 7/03 - 6/06. (with
Amir Roth)
Microsoft Corporation, The Influence of Computer Architecture on
.NET Applications, $10,000, 7/02 - 6/03.
ARO DAAD-19-02-1-0404, ABIDE: Advanced Broadband Intrusion
Detection Engine, $54,138, 9/02 - 2/03. (with Jonathan Smith,
Michael Greenwald, and Honghui Lu)