Seminars & Colloquia

Andy Ayers


"Microsoft Phoenix: A Framework for Program Analysis and Transformation"

Wednesday December 13, 2006 11:00 AM
Location: 3211, EB2 NCSU Centennial Campus
(Visitor parking instructions)

This talk is part of the System Research Seminar series


Abstract: Phoenix is the codename for Microsoft's next generation program analysis and transformation framework. A joint effort between Microsoft Research, the Common Language Runtime team, and the Visual C++ Compiler team, Phoenix aspires to be the foundational platform for a new breed of powerful and innovative tools. Examples within Microsoft include a new, retargetable C++ code generator, static and dynamic program checkers, binary rewriters, whole-program optimizers, program obfuscators, aspect weavers, and just in time compilers. Outside of Microsoft, Phoenix has been adopted for teaching, research and development at a number of universities worldwide, providing an extensible, industrial-strength, state of the art technology to the academic community. This talk will provide an overview of Phoenix with a number of demos and examples. More details and a downloadable version of Phoenix can be found at

Short Bio: Andy Ayers is an Architect on the Microsoft Phoenix Project, where he focuses mainly on making Phoenix a robust and capable platform for all kinds of program analysis and transformation. He joined Microsoft in 2002. Prior to joining Microsoft, Andy created a variety of binary analysis and transformation tools at InCert Software and helped develop and enhance the High-Level Optimizer at Hewlett Packard. Some of this work is described in papers like 'Aggressive Inlining' (PLDI 1997). Andy graduated from MIT with a PhD in 1993.

Host: Frank Mueller, Computer Science, NCSU

Media Files:
No media files available at this time

Video Presentation: Host is responsible for requesting video recording by filling out this Web form. For other technical issues, contact us at
No streaming video available at this time

Back to Seminar Listings
Back to Colloquia Home Page