Robert's Bio

Robert Hundt received a degree in Computer Science from Technical University in Munich in 1992. Until 1999 he worked for Terrasat GmbH in Germany, a 20+ people R&D company he partly owned. He worked in many areas, as company lead, as a manager, as a marketing person and business developer, as a booth cat, but mainly as software developer writing and optimizing system software and numerical application software for surveying and navigation with satellite systems.

In 2000 he started working for Hewlett-Packard Company in California. He worked on bringing up the new and scalable high-level optimizer SYZYGY for the HP compilers with a new inter- procedural optimizer, a new loop optimizer, and a new scalar optimizer. The compiler also got a new commercial front end and a new code generator.

Before joining the compiler group, Robert was responsible for dynamic binary instrumentation for Intel Itanium processors, co-creating and designing the performance analysis tool HP Caliper.

Since beginning of 2007 Robert has been working for Google, creating projects around inter-procedural analysis and profiles, using open64 to build advanced analysis tools. He is now a Tech Lead for compiler optimization, using gcc, and he is heading compiler research.

In real life, he enjoys spending time with his family, playing the piano, playing Volleyball (which he does fairly well ;-) and everything related to delicious high quality food (which is the main reason he joined Google, see also here).

Selected Papers

Feedback-Directed Optimizations with Estimated Edge Profiles from Hardware Event Sampling
Vinodha Ramasamy, Dehao Chen, Paul Yuan, Robert Hundt
gcc summit 2008, PLDI 2008 poster

Structure Layout Optimization for Multi-Threaded Programs
Easwaran Raman, Robert Hundt, Sandya Mannarswamy
CGO 2007

Whole Program Optimization of Global Variable Layout
Nathaniel McIntosh, Robert Hundt, Sandya Mannarswamy
PACT 2006

Practical Structure Layout Optimization and Advice
Robert Hundt, Dhruva R. Chakrabarti, Sandya Mannarswamy
International Symposium on Code Generation and Optimization (CGO-2006)

Scalable High Performance Cross-Module Inlining
Dhruva R. Chakrabarti, Luis A. Lozano, Xinliang D. Li, Robert Hundt, Shin-Ming Liu
13th International Conference on Parallel Architecture and Compilation Techniques, 2004 (PACT'04)

SYZYGY - A Framework for Scalable Cross-Module IPO
Dhruva R. Chakrabarti, Luis A. Lozano, Xinliang D. Li, Robert Hundt, Shin-Ming Liu
2004 International Symposium on Code Generation and Optimization (CGO-2004)

Dynamic Binary Instrumentation in IA-64
Vinodha Ramasamy, Robert Hundt
EPIC-1 Workshop with MICRO 2001

HP Caliper - A Framework for Performance Analysis Tools
Robert Hundt
IEEE Concurrency Magazine 2001

HP Caliper - An Architecture for Performance Analysis Tools
Robert Hundt
First Workshop on Industrial Experience with Systems Software, WIESS-2001

Aircraft Positioning and Guidance with the Global Positioning System
Dr. Herbert Landau, Robert Hundt et al,
KIS94 in Benft Canada, 1994

A GPS-based High-precision Positioning and Guidance System
Dr. Herbert Landau, Robert Hundt, Christian Pagls, and Dr. Ulrich Vollath, terraSat GmbH; Bo Granstedt, Saab Instruments AB 1099-1106
ION GPS-94 Proceedings, 7th International Technical Meeting of The Satellite Division of The Institute of Navigation, September 20-23, 1994

A GPS Monitoring System: Concept, Implementation and Experiences
Landau H., Hundt R., Mueller A. (1994),
Proceedings of the Institute of Navigation Satellite Meeting Salt Lake City, Utah, 1321-1327

Patents

US 7,415,699: Method and apparatus for controlling execution of a child process [Eric Gouriou, Robert Hundt]
US 7,249,349: Uninstrumenting in-line code instrumentation on the fly [Robert Hundt, Vinodha Ramasamy]
US 7,185,320: System and method for processing breakpoint events in a child process by a parent process [Eric Gouriou, Robert Hundt]
US 7,165,162: Partitioning Modules for Cross-Module Optimization [Xinliang Li, Sungdo Moon, Robert Hundt]
US 7,131,115: Unwinding Instrumented Program Code [Robert Hundt]
US 7,103,878: Method and System to Instrument Virtual Function Calls [Brian Fahs, Robert Hundt]
US 7,017,153: Uninstrumenting in-line code instrumentation via stack unwinding and cleanup [Robert Hundt]
US 6,996,810: Lazy And Precise Update Of Unwind Information For Dynamically Generated Code [Robert Hundt, Vikram Kumar]
US 6,993,750: Dynamic Registration Of Dynamically Generated Code And Corresponding Unwind Information [Robert Hundt, Cary Coutant, Murali]
US 6,957,421: Providing debugging capability for program instrumented code [Robert Hundt, et al.]
US 6,934,943: Optimization of control transfers to dynamically loaded modules [Robert Hundt, Tom Lofgren, Vinodha Ramasamy]
US 6,918,110: Dynamic instrumentation of an executable program by means of causing a breakpoint at the entry point of a function and providing instrumentation code [Robert Hundt, rest of Caliper team]
US 6,898,785: Handling calls from relocated instrumented functions to functions that expect a return pointer value in an original address space [Vinodha Ramasamy, Robert Hundt]
US 6,851,110: Optimizing an executable computer program having address-bridging code segments [Robert Hundt, Vinodha Ramasamy]
US 6,817,014: Analysis of executable program code using compiler-generated function entry points and endpoints with other sources of function entry points and endpoints [Robert Hundt, et al]
US 6,795,964: Edge Profiling for Executable Program Code Having Branches Through Stub Code Segments [Vinodha Ramasamy, Robert Hundt]
(10 more pending)