Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

13
Specidaption Michael Hind That’s what he thinks
  • date post

    19-Dec-2015
  • Category

    Documents

  • view

    217
  • download

    2

Transcript of Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

Page 1: Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

Specidaption

Michael Hind

That’s what he thinks

Page 2: Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

Quick get out your dictionaries!

Specidaption

Page 3: Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

I thought this was an ASPLOS talk?

Specidaption

Specidapt

MonitorSpeculate Adapt

Page 4: Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

This is not what happens when Mike plays the outfield

MonitorSpeculate Adapt

Page 5: Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

Did anyone say healthcare reform?

MonitorSpeculate Adapt

Page 6: Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

Really? Are you in cohorts with this guy?

Specidaption Experts!

Page 7: Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

Compiler writers don’t like made up words?

Code Optimization

Page 8: Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

Sniff, sniff, poor compiler writers

Execution TimeCompile Time

MonitorSpeculate Adapt

Page 9: Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

Modern Virtual Machines

MonitorSpeculate Adapt

Oooh! I’m starting to believe him

Page 10: Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

Speculate

<Direct call to Person’s foo>

Monitor class loading

Load Class Student

Adapt

<Virtual call to foo>

Example 1: Devirtualization in Java

p.foo();

Current Class Hierarchy

Person

New Class Hierarchy

Student

Person

Page 11: Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

Example 2: Stack allocation of objects

Complex c = new Complex(3.4, 2.1);foo(c);. . .

Qian & Hendren’02:

Monitor

Incoming heap ptrs

Adapt

- Move object to heap - Adapt policy for this allocation site

• Lots of “escape analysis” publications

Speculate

Object will not escape

• Very few specidaptive approaches

??

Page 12: Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.

To heckle you!

A Call To Arms

Page 13: Specidaption Michael Hind That’s what he thinks. Quick get out your dictionaries! Specidaption.