Presentation is loading. Please wait.

Presentation is loading. Please wait.

The Best of Both Worlds: Collaborating between Industry and Academia Kim Hazelwood May 10, 2007.

Similar presentations


Presentation on theme: "The Best of Both Worlds: Collaborating between Industry and Academia Kim Hazelwood May 10, 2007."— Presentation transcript:

1 The Best of Both Worlds: Collaborating between Industry and Academia Kim Hazelwood May 10, 2007

2 Kim Hazelwood, PL-SS 2007 1 About Me “Seven of Nine” Virginia, Florida, South Carolina, North Carolina, California, Massachusetts, New York Met Matt Cettei in 1998, married in 2001 Ph.D. from Harvard in 2004 (under Mike Smith) Started at UVa in 2005 (after Intel post-doc) Other interests Marathons (and other extreme sports) Reality television Travel

3 Kim Hazelwood, PL-SS 2007 2 Why Build New Infrastructure? You almost never have the infrastructure you need to do your research –Not enough detail or wrong abstraction level –Wrong platform (ISA, OS) –Robustness issues (“We do not include eon because our infrastructure couldn’t execute it”) –Proprietary Your options –Build your own –Extend an existing system –Spend a summer in industry and use their proprietary system (pray for a SC agreement)

4 Kim Hazelwood, PL-SS 2007 3 1) Building Your Own Infrastructure Benefits: Huge potential payoff if your infrastructure fills a much- needed void (e.g., David Brooks--Wattch) You’re in control Drawbacks: Could be 2-4 year investment –A lot of time handling uninteresting corner cases –2-4 year delay in investigating your real ideas –Often tempts us to hoard our infrastructure (Resist!) Supporting users –Most are lazy, cryptic, and just plain mean “Can you tell me how to use your system?” “When do you plan to fix the eon bug?” “When will you port this to PowerPC?” –Unwilling to help you extend/modernize your system (even if open source) Example: Wattch

5 Kim Hazelwood, PL-SS 2007 4 2) Extending Existing Infrastructure Level of pain depends on the base infrastructure Possible outcomes: –Quick way to explore your real ideas –Infrastructure could have very steep learning curve –Could get bogged down fixing bugs Notes: Won’t make you (as) famous Don’t expect it to be bug free Don’t expect it to be well documented Don’t expect much help from the original author (see previous slide) Reputation will also be tied to the base system

6 Kim Hazelwood, PL-SS 2007 5 3) Use Proprietary Infrastructure Spend a summer/semester/year in industry Benefits Tools are already robust, validated Drawbacks Often have steep learning curve Others have to “trust” your results Tools could disappear at any time Hope for a source agreement, but have a solid Plan B

7 Kim Hazelwood, PL-SS 2007 6 What’s In This For Industry? A long-term investment (in you) You will be up to speed on their tools You will be pre-screened You will remember that company when you (or your students) graduate Some short-term benefits Free promotion of their tools/products/company Publications Note: Research groups are more likely to “invest”

8 Kim Hazelwood, PL-SS 2007 7 A Great Example: Intel and {UVa, …} Pin Dynamic Instrumentation System Allows user-defined code to be injected into a running program Why? You name it! Profiling, bug detection, security, reliability, optimization, translation, … Application Transform Code Cache Execute Profile Plug-In

9 Kim Hazelwood, PL-SS 2007 8 Dynamic Instrumentation Demo Pin Four architectures – IA-32, Intel64, IA-64, XScale Four OSes – Linux, FreeBSD, MacOS, Windows http://rogue.colorado.edu/pin/

10 Kim Hazelwood, PL-SS 2007 9 The Reality A long and winding quest for the “perfect” thesis infrastructure My Story …

11 Kim Hazelwood, PL-SS 2007 10 My Experience 1999 – CarbonFIRE – Dynamic optimization for IA-64 This is cool! I want to do research on dynamic optimizations CarbonFIRE is proprietary We don’t have IA-64 machines HP Advisor Me

12 Kim Hazelwood, PL-SS 2007 11 To Build or Not to Build? I should chat with the Dynamo team Building a dynamic optimizer will take too long

13 Kim Hazelwood, PL-SS 2007 12 Take Two: Dynamo 2000 – HP Labs Porting Dynamo to IA32 You can’t publish with Hello World We’re initiating the process of university licensing HP Labs Dynamo-x86 runs Hello World! Advisor

14 Kim Hazelwood, PL-SS 2007 13 Take Three: DELI 2001 – HP Labs - Implementing Dynamic Optimizations in DELI We don’t have any LX hardware Still working on that university license HP Labs Advisor Things get interesting for embedded systems

15 Kim Hazelwood, PL-SS 2007 14 2001 – An Interesting Year And then… HP Labs Cambridge – Closes Dynamo and DELI projects – Cancelled Vas and Evelyn – Moved to IBM Please sign this source code agreement HP Legal MIT Legal Harvard Legal SURE! NEVAH!

16 Kim Hazelwood, PL-SS 2007 15 Take Four: Jikes RVM 2002 – IBM Research and Jikes RVM – Online Inlining Online inlining is great! But I have more ideas for traces and efficient code caches What infrastructure do you want to use? Jikes RVM is open source! IBM

17 Kim Hazelwood, PL-SS 2007 16 Take Five: DynamoRIO 2003 – The DynamoRIO collaboration (between HP Labs and MIT) Please sign this source code agreement HP Legal Harvard Legal NEVAH! MIT Legal SURE! Me

18 Kim Hazelwood, PL-SS 2007 17 Our Solution? Kim becomes a “visiting scholar” at MIT PorterHarvardCentral Kendall/ MIT

19 Kim Hazelwood, PL-SS 2007 18 2003 – More Interesting Events Saman and Derek form Determina Determina buys DynamoRIO source This (and next year’s 10-year HS reunion) prompts my mad rush to finish my dissertation ?

20 Kim Hazelwood, PL-SS 2007 19 Finished! May 2004 Code Cache Management in Dynamic Optimization Systems Oops … Matt still has a year in his MBA program

21 Kim Hazelwood, PL-SS 2007 20 And Then Finally: Pin is Created! 2004 – Post-Doc with Intel Pin team My assignment – Pin (anything) My selections Design the code cache algorithms Add a code cache API Explore embedded implementation (XScale) Work on multithreading issues Help develop SuperPin Public relations – tutorials, talks, promotional tour

22 Kim Hazelwood, PL-SS 2007 21 Academic Research 2005 – Joined UVa – Pin source code agreement Started exploring applications of Pin Collaborative HW/SW designs –Tortola project: ISA virtualization –Hardware and OS support for Pin et al. –Multicore scheduling Power optimizations – di/dt VEEs for embedded systems Continued researching internal design decisions Code caches Self-modifying code Indirect branches

23 Kim Hazelwood, PL-SS 2007 22 Advice Be sure to balance development with research –Publish along the way Don’t reinvent the wheel –If what you need already exists, use it! If not… Share your infrastructure –No need to be competitive or territorial –BUT … your own research should take precedent over tech support Set up a mailing list so that your users can help each other –The Jikes RVM 48-hour rule

24 The Best of Both Worlds: Collaborating between Industry and Academia Kim Hazelwood May 10, 2007


Download ppt "The Best of Both Worlds: Collaborating between Industry and Academia Kim Hazelwood May 10, 2007."

Similar presentations


Ads by Google