Blended Analysis for Blended Analysis for Performance Understanding - - PowerPoint PPT Presentation

blended analysis for blended analysis for performance
SMART_READER_LITE
LIVE PREVIEW

Blended Analysis for Blended Analysis for Performance Understanding - - PowerPoint PPT Presentation

Blended Analysis for Blended Analysis for Performance Understanding of Performance Understanding of Framework- -based Applications based Applications Framework Bruno Dufour, Barbara G. Ryder, Gary Sevitsky Course: IFT6310 Presented by Wei


slide-1
SLIDE 1

Blended Analysis for Blended Analysis for Performance Understanding of Performance Understanding of Framework Framework-

  • based Applications

based Applications

Bruno Dufour, Barbara G. Ryder, Gary Sevitsky Course: IFT6310 Presented by Wei Wu IRO, UdeM 2008-03-19

slide-2
SLIDE 2

Outline Outline

  • Introduction
  • Context
  • Content
  • Conclusion
  • Future work
  • Related work
  • Discussion
  • References
slide-3
SLIDE 3

Outline Outline

  • Introduction
  • Connection with Knuth
  • The authors
  • Context
  • Content
  • Conclusion
  • New development
  • Related work
  • Discussion
  • References
slide-4
SLIDE 4
  • !" #$

%&'&

()% *#

  • +)

+) *#

,-%!.

!!!! ,#/%

slide-5
SLIDE 5

Introduction Introduction

Bruno Dufour

– Ph.D. student of Rutgers University – http://www.prolangs.rutgers.edu/~dufour/

slide-6
SLIDE 6

Introduction Introduction

Barbara G. Ryder

– Professor II

  • f Computer Science

at Rutgers University

– http://www.cs.rutgers.edu/~ryder/

slide-7
SLIDE 7

Introduction Introduction

Gary S. Sevitsky

– Research Staff Member

  • f Watson Research Center, IBM

– http://domino.research.ibm.com/comm/res

earch_people.nsf/pages/sevitsky.index.htm l

slide-8
SLIDE 8

Outline Outline

  • Introduction
  • Context
  • Content
  • Conclusion
  • New development
  • Related work
  • Discussion
  • References
slide-9
SLIDE 9

Context Context

Commercial object-oriented programs

are built on libraries and frameworks.

Performance problems Object churn

slide-10
SLIDE 10

Outline Outline

  • Introduction
  • Context
  • Content
  • Escape analysis
  • Blended analysis
  • Blended escape analysis
  • Experiment
  • Conclusion
  • Future work
  • Related work
  • Discussion
  • References
slide-11
SLIDE 11

Content Content

  • Escape analysis
  • Escape analysis computes an

approximation of the effective lifetime

  • f an object.
  • Effective lifetime: the period between the
  • bject’s creation and its last use during an

execution.

  • Set-base algorithms
  • Dataflow algorithms
slide-12
SLIDE 12

Content Content

  • Escape analysis

– Escaped form method f: If during

execution, that object can be accessed beyond the lifetime of an invocation of a method f in its allocation context.

– Captured by method g: if g is in its

allocation context and the object cannot be accessed beyond the lifetime of the invocation of g.

slide-13
SLIDE 13
slide-14
SLIDE 14

Content Content

  • Blended analysis
  • a new analysis paradigm that performs

an interprocedural static analysis on a calling structure obtained through dynamic analysis, thus capturing properties of a single execution.

slide-15
SLIDE 15

Content Content

  • Belended analysis
  • Advantage:
  • Precision of fully dynamic analysis
  • Less cost
  • Limitation
  • Only safe for a give execution
  • The execution must be repeatable
slide-16
SLIDE 16
slide-17
SLIDE 17

Content Content

  • Blended escape analysis:
  • A instance of blended analysis paradigm
  • Modification: keep track of a distinct escape

state for each object at each node in the calling structure, rather than keeping only

  • ne escape state per abstract object.
slide-18
SLIDE 18

Content Content

  • Blended escape analysis:
  • Implementation:
  • Dynamic analysis component: modified

version of Jinsight.

  • Static analysis component: base on IBM

WALA analysis framework

slide-19
SLIDE 19

Content Content

  • Experiment:
  • Environment:
  • Trade 6.0.1 financial transactions benchmark
  • WebSphere 6.0.0.1
  • DB2 8.2.0.12
  • Configuration:
  • Direct-Standard
  • Direct-WebService
  • EJB-Standard
  • EJB-WebService
slide-20
SLIDE 20

Content Content

  • Experiment
  • Scenario:
  • login
  • getHoldings
  • Jsp
  • Metrics
  • Distribution of escaping object states
  • Distribution of allocating nodes
  • Depth of escaping path
  • Depth of capturing path
slide-21
SLIDE 21

Content Content

  • Experiment:
  • Result: size of comparison:
slide-22
SLIDE 22

Content Content

  • Experiment
  • Result: distribution of escaping object

states

slide-23
SLIDE 23

Content Content

  • Experiment
  • Result: distribution of allocating nodes
slide-24
SLIDE 24

Content Content

  • Experiment
  • Result: distribution of allocating nodes
slide-25
SLIDE 25

Content Content

  • Experiment
  • Result: depth of escaping path
slide-26
SLIDE 26

Content Content

  • Experiment
  • Result: depth of capturing path
slide-27
SLIDE 27

Content Content

  • Performance understanding
  • Postprocessing: Reduced connection

graph

slide-28
SLIDE 28
slide-29
SLIDE 29
slide-30
SLIDE 30

Outline Outline

  • Introduction
  • Context
  • Content
  • Conclusion
  • Future work
  • Related work
  • Discussion
  • References
slide-31
SLIDE 31

Conclusion Conclusion

  • Blended Escape Analysis helps

performance understanding in layered applications by explaining how temporary objects and structures are built and used.

slide-32
SLIDE 32

Outline Outline

  • Introduction
  • Context
  • Content
  • Conclusion
  • Future work
  • Related work
  • Discussion
  • References
slide-33
SLIDE 33

Future work Future work

The influence of class loader and

garbage collector.

Using dynamic information to eliminate

the irrelevant objects from escaping state.

The influence of JIT (just-in-time

compiler)

slide-34
SLIDE 34

Outline Outline

  • Introduction
  • Context
  • Content
  • Conclusion
  • New development
  • Related work
  • Discussion
  • References
slide-35
SLIDE 35

Related work Related work

Performance specification of software

components, Murali Sitaraman et al. 2001

An AOP-based Performance Evaluation

Framework for UML Models, Kim Dong Kwan, Bohner Shawn, 2007

slide-36
SLIDE 36

Outline Outline

  • Introduction
  • Context
  • Content
  • Conclusion
  • New development
  • Related work
  • Discussion
  • References
slide-37
SLIDE 37

Discussion Discussion

Pros

– Focus on framework-based applications – Clear examples – Implementation – Experiment

slide-38
SLIDE 38

Discussion Discussion

Cons

– No performance comparison – No experiment after optimization

suggestion.

– No future work summary

slide-39
SLIDE 39

References References

Murali Sitaraman, Greg Kulczycki, Joan Krone,

William F. Ogden, A. L. N. Reddy, Performance specification of software components, SSR’01, May 18-20, 2001, Toronto, Ontario, Canada. ACM

Kim Dong Kwan, Bohner Shawn, An AOP-based

Performance Evaluation Framework for UML Models, Software Engineering Workshop, 2007. SEW 2007. 31st IEEE, March 6 2007-Feb. 8 2007 Page(s):227 - 235

slide-40
SLIDE 40

Thank you! Thank you!