SlideShare a Scribd company logo
1 of 27
Download to read offline
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
                            Garbage Collection,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson           Program Comprehension
Program
Comprehension
Jikes RVM Visualization
                           and Machine Learning
Appealing Visualization

Intelligent
Pretenuring
Garbage Collector

Perceptron
                           Jeremy Singer Gavin Brown
Pretenuring
Perceptrons
                             Mikel Lujan Ian Watson
Preliminary Study

Wrap Up
Future Work
                           School of Computer Science, University of Manchester
Conclusions
Outline
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
                          1   Program Comprehension
    Mikel Lujan,
     Ian Watson

Program                   2   Intelligent Pretenuring
Comprehension
Jikes RVM Visualization
Appealing Visualization

Intelligent
Pretenuring
                          3   Perceptron Pretenuring
Garbage Collector

Perceptron
Pretenuring
Perceptrons
                          4   Wrap Up
Preliminary Study

Wrap Up
Future Work
Conclusions
Outline
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
                          1   Program Comprehension
    Mikel Lujan,
     Ian Watson

Program                   2   Intelligent Pretenuring
Comprehension
Jikes RVM Visualization
Appealing Visualization

Intelligent
Pretenuring
                          3   Perceptron Pretenuring
Garbage Collector

Perceptron
Pretenuring
Perceptrons
                          4   Wrap Up
Preliminary Study

Wrap Up
Future Work
Conclusions
Jikes RVM
Garbage Collection,
     Program
Comprehension and            Research Virtual Machine (RVM)
 Machine Learning

   Jeremy Singer,
                             from IBM Research, now open-source
    Gavin Brown,
    Mikel Lujan,             on sourceforge.net
     Ian Watson

Program
                             easy-to-modify adaptive compilation
Comprehension
Jikes RVM Visualization
                             environment for/in Java
Appealing Visualization

Intelligent
                             has research respectability—100’s of
Pretenuring
Garbage Collector            papers use it
Perceptron
Pretenuring                  good platform for GC research
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Visualizing Adaptive
                          Subsystems
Garbage Collection,
     Program
Comprehension and            monitor activity due to
 Machine Learning

   Jeremy Singer,
                             compilation/gc/other
    Gavin Brown,
    Mikel Lujan,
     Ian Watson
                             dynamic concept assignment
                             techniques
Program
Comprehension
Jikes RVM Visualization
Appealing Visualization

Intelligent
Pretenuring
Garbage Collector

Perceptron
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Feedback from ACM
                          Symposium
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson

Program
                             your visual metaphors are ...
Comprehension
Jikes RVM Visualization
                                 unappealing
Appealing Visualization
                                 non-intuitive
Intelligent
Pretenuring
Garbage Collector

Perceptron
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Better Visualization
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson
                             interactivity
Program
Comprehension
Jikes RVM Visualization
                             familiar objects as metaphor for
Appealing Visualization
                             unfamiliar
Intelligent
Pretenuring
Garbage Collector
                             3-d
Perceptron
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Visualizing Garbage Collection
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson
                             mutator
Program
                             objects
Comprehension
Jikes RVM Visualization
Appealing Visualization
                             spaces (generations)
Intelligent
Pretenuring
                             collection
Garbage Collector

Perceptron                   promotion
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Metaphor for Garbage
                          Collection
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson
                             mutator: juggler
Program
                             objects: jugglable artefacts
Comprehension
Jikes RVM Visualization
Appealing Visualization
                             spaces (generations): labelled boxes
Intelligent
Pretenuring
                             collection: tidying boxes
Garbage Collector

Perceptron                   promotion: moving between boxes
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Metaphor Applications
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson

Program
Comprehension
                             EPSRC CS Writing competition
Jikes RVM Visualization
Appealing Visualization      illustrate idea of intelligent pretenuring
Intelligent
Pretenuring
Garbage Collector

Perceptron
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Outline
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
                          1   Program Comprehension
    Mikel Lujan,
     Ian Watson

Program                   2   Intelligent Pretenuring
Comprehension
Jikes RVM Visualization
Appealing Visualization

Intelligent
Pretenuring
                          3   Perceptron Pretenuring
Garbage Collector

Perceptron
Pretenuring
Perceptrons
                          4   Wrap Up
Preliminary Study

Wrap Up
Future Work
Conclusions
Avoid live objects during
                          collection
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson
                             processing live objects is wasted time
Program                      so long-lived objects should not start
Comprehension
Jikes RVM Visualization
Appealing Visualization
                             in nursery
Intelligent
Pretenuring
                             pretenuring—put them in mature
Garbage Collector

Perceptron
                             space immediately
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Predicting Object Lifetimes
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson              heuristics to detect long-lived objects
Program
Comprehension                based on allocation site
Jikes RVM Visualization
Appealing Visualization
                             based on object connectivity
Intelligent
Pretenuring
Garbage Collector
                             can be adaptive heuristics
Perceptron
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Automatic Heuristic
                          Generation
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson
                             use Machine Learning
Program
                             select an algorithm (there are plenty!)
Comprehension
Jikes RVM Visualization
Appealing Visualization
                             select some inputs (tricky!)
Intelligent
Pretenuring
                             train the algorithm on the inputs
Garbage Collector

Perceptron                   at last, a heuristic emerges!
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Outline
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
                          1   Program Comprehension
    Mikel Lujan,
     Ian Watson

Program                   2   Intelligent Pretenuring
Comprehension
Jikes RVM Visualization
Appealing Visualization

Intelligent
Pretenuring
                          3   Perceptron Pretenuring
Garbage Collector

Perceptron
Pretenuring
Perceptrons
                          4   Wrap Up
Preliminary Study

Wrap Up
Future Work
Conclusions
Perceptrons
Garbage Collection,
     Program
Comprehension and            a number of inputs x1 , x2 , . . . , xn
 Machine Learning

   Jeremy Singer,
                             weight per input w1 , w2 , . . . , wn
    Gavin Brown,
    Mikel Lujan,             compute i wi xi
     Ian Watson

Program
                             if sum > threshold then output 1, else
Comprehension
Jikes RVM Visualization
                             output 0
Appealing Visualization

Intelligent
Pretenuring
Garbage Collector

Perceptron
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Inputs
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
                             obtain info about objects at allocation
    Gavin Brown,
    Mikel Lujan,
     Ian Watson
                             instrument Jikes RVM and MMTk
Program                      dump data to file, for postprocessing
Comprehension
Jikes RVM Visualization
Appealing Visualization
                             typical inputs
Intelligent                        object size
Pretenuring
Garbage Collector
                                   number of fields/methods
Perceptron                         depth in inheritance tree
Pretenuring
Perceptrons                        in package java.* or
Preliminary Study

Wrap Up
                                   com.ibm.jikesrvm.*
Future Work
Conclusions
Output
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
                             keep record of every nursery-allocated
    Mikel Lujan,
     Ian Watson              object
Program
Comprehension
                             track object promotions to mature
Jikes RVM Visualization
Appealing Visualization
                             space
Intelligent
Pretenuring                  at end, dump out object attributes and
Garbage Collector

Perceptron
                             ...
Pretenuring
Perceptrons
Preliminary Study
                             whether or not object was promoted
Wrap Up
Future Work
Conclusions
Experiments
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson
                             use some benchmarks from
Program
                             SPECjvm98
Comprehension
Jikes RVM Visualization
                             for each benchmark
Appealing Visualization

Intelligent
                                train perceptron on first 50% of
Pretenuring
Garbage Collector
                                allocations
Perceptron
                                test perceptron on second 50%
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Prediction Types
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
                             positive means predict mature,
    Mikel Lujan,
     Ian Watson              negative immature
Program
Comprehension
                             prediction either true or false
Jikes RVM Visualization
Appealing Visualization

Intelligent                             true    false
Pretenuring
Garbage Collector              positive good  terrible!
Perceptron
Pretenuring                    negative good acceptable
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Results
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,            benchmark 200check 201compress
    Mikel Lujan,
     Ian Watson               allocs     87768      100749
Program
Comprehension
                             mispreds    19748       19785
Jikes RVM Visualization
Appealing Visualization
                                tps      14733       14892
Intelligent
Pretenuring
                                fps         75         828
Garbage Collector
                                tns      53287       66072
Perceptron
Pretenuring
Perceptrons
                                fns      19673       18957
Preliminary Study

Wrap Up
Future Work
Conclusions
More Results
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,                benchmark 205raytrace
    Mikel Lujan,
     Ian Watson                   allocs        4.3m
Program
Comprehension
                                 mispreds       1306
Jikes RVM Visualization
Appealing Visualization
                                    tps            95
Intelligent
Pretenuring
                                    fps           295
Garbage Collector
                                    tns         4.3m
Perceptron
Pretenuring
Perceptrons
                                    fns         1011
Preliminary Study

Wrap Up
Future Work
Conclusions
Outline
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
                          1   Program Comprehension
    Mikel Lujan,
     Ian Watson

Program                   2   Intelligent Pretenuring
Comprehension
Jikes RVM Visualization
Appealing Visualization

Intelligent
Pretenuring
                          3   Perceptron Pretenuring
Garbage Collector

Perceptron
Pretenuring
Perceptrons
                          4   Wrap Up
Preliminary Study

Wrap Up
Future Work
Conclusions
Future Work—better
                          experiments
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson

Program
                             train on one benchmark, test on
Comprehension
Jikes RVM Visualization
                             another
Appealing Visualization

Intelligent                  use DaCapo instead of SPEC
Pretenuring
Garbage Collector

Perceptron
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Future Work—better predictors
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson              change perceptron threshold
Program
Comprehension                different inputs?
Jikes RVM Visualization
Appealing Visualization
                             vote between perceptron ensemble
Intelligent
Pretenuring
Garbage Collector
                             multilayer perceptrons
Perceptron
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Future Work—use predictions
                          online
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson
                             incorporate learning technique into
Program
                             RVM
Comprehension
Jikes RVM Visualization
Appealing Visualization
                             either static or adaptive heuristic
Intelligent
Pretenuring
                             pretenure objects
Garbage Collector

Perceptron
                             measure performance improvement
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions
Conclusions
Garbage Collection,
     Program
Comprehension and
 Machine Learning

   Jeremy Singer,
    Gavin Brown,
    Mikel Lujan,
     Ian Watson

Program
                             GC is like juggling
Comprehension
Jikes RVM Visualization      ML enables intelligent pretenuring
Appealing Visualization

Intelligent                  watch this space!
Pretenuring
Garbage Collector

Perceptron
Pretenuring
Perceptrons
Preliminary Study

Wrap Up
Future Work
Conclusions

More Related Content

What's hot

Skipping and Repeating Samples in Recurrent Neural Networks
Skipping and Repeating Samples in Recurrent Neural NetworksSkipping and Repeating Samples in Recurrent Neural Networks
Skipping and Repeating Samples in Recurrent Neural Networks
Universitat Politècnica de Catalunya
 

What's hot (9)

Neural Networks-1
Neural Networks-1Neural Networks-1
Neural Networks-1
 
Self-supervised Audiovisual Learning - Xavier Giro - UPC Barcelona 2019
Self-supervised Audiovisual Learning - Xavier Giro - UPC Barcelona 2019Self-supervised Audiovisual Learning - Xavier Giro - UPC Barcelona 2019
Self-supervised Audiovisual Learning - Xavier Giro - UPC Barcelona 2019
 
Self-supervised Learning from Video Sequences - Xavier Giro - UPC Barcelona 2019
Self-supervised Learning from Video Sequences - Xavier Giro - UPC Barcelona 2019Self-supervised Learning from Video Sequences - Xavier Giro - UPC Barcelona 2019
Self-supervised Learning from Video Sequences - Xavier Giro - UPC Barcelona 2019
 
Learning Representations for Sign Language Videos - Xavier Giro - NIST TRECVI...
Learning Representations for Sign Language Videos - Xavier Giro - NIST TRECVI...Learning Representations for Sign Language Videos - Xavier Giro - NIST TRECVI...
Learning Representations for Sign Language Videos - Xavier Giro - NIST TRECVI...
 
Self-supervised Audiovisual Learning 2020 - Xavier Giro-i-Nieto - UPC Telecom...
Self-supervised Audiovisual Learning 2020 - Xavier Giro-i-Nieto - UPC Telecom...Self-supervised Audiovisual Learning 2020 - Xavier Giro-i-Nieto - UPC Telecom...
Self-supervised Audiovisual Learning 2020 - Xavier Giro-i-Nieto - UPC Telecom...
 
Skipping and Repeating Samples in Recurrent Neural Networks
Skipping and Repeating Samples in Recurrent Neural NetworksSkipping and Repeating Samples in Recurrent Neural Networks
Skipping and Repeating Samples in Recurrent Neural Networks
 
Neural Architectures for Still Images - Xavier Giro- UPC Barcelona 2019
Neural Architectures for Still Images - Xavier Giro- UPC Barcelona 2019Neural Architectures for Still Images - Xavier Giro- UPC Barcelona 2019
Neural Architectures for Still Images - Xavier Giro- UPC Barcelona 2019
 
Deep Learning for Video: Language (UPC 2018)
Deep Learning for Video: Language (UPC 2018)Deep Learning for Video: Language (UPC 2018)
Deep Learning for Video: Language (UPC 2018)
 
Bayesian networks in AI
Bayesian networks in AIBayesian networks in AI
Bayesian networks in AI
 

More from butest

EL MODELO DE NEGOCIO DE YOUTUBE
EL MODELO DE NEGOCIO DE YOUTUBEEL MODELO DE NEGOCIO DE YOUTUBE
EL MODELO DE NEGOCIO DE YOUTUBE
butest
 
1. MPEG I.B.P frame之不同
1. MPEG I.B.P frame之不同1. MPEG I.B.P frame之不同
1. MPEG I.B.P frame之不同
butest
 
LESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIALLESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIAL
butest
 
Timeline: The Life of Michael Jackson
Timeline: The Life of Michael JacksonTimeline: The Life of Michael Jackson
Timeline: The Life of Michael Jackson
butest
 
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...
butest
 
LESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIALLESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIAL
butest
 
Com 380, Summer II
Com 380, Summer IICom 380, Summer II
Com 380, Summer II
butest
 
The MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazz
The MYnstrel Free Press Volume 2: Economic Struggles, Meet JazzThe MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazz
The MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazz
butest
 
MICHAEL JACKSON.doc
MICHAEL JACKSON.docMICHAEL JACKSON.doc
MICHAEL JACKSON.doc
butest
 
Social Networks: Twitter Facebook SL - Slide 1
Social Networks: Twitter Facebook SL - Slide 1Social Networks: Twitter Facebook SL - Slide 1
Social Networks: Twitter Facebook SL - Slide 1
butest
 
Facebook
Facebook Facebook
Facebook
butest
 
Executive Summary Hare Chevrolet is a General Motors dealership ...
Executive Summary Hare Chevrolet is a General Motors dealership ...Executive Summary Hare Chevrolet is a General Motors dealership ...
Executive Summary Hare Chevrolet is a General Motors dealership ...
butest
 
Welcome to the Dougherty County Public Library's Facebook and ...
Welcome to the Dougherty County Public Library's Facebook and ...Welcome to the Dougherty County Public Library's Facebook and ...
Welcome to the Dougherty County Public Library's Facebook and ...
butest
 
NEWS ANNOUNCEMENT
NEWS ANNOUNCEMENTNEWS ANNOUNCEMENT
NEWS ANNOUNCEMENT
butest
 
C-2100 Ultra Zoom.doc
C-2100 Ultra Zoom.docC-2100 Ultra Zoom.doc
C-2100 Ultra Zoom.doc
butest
 
MAC Printing on ITS Printers.doc.doc
MAC Printing on ITS Printers.doc.docMAC Printing on ITS Printers.doc.doc
MAC Printing on ITS Printers.doc.doc
butest
 
Mac OS X Guide.doc
Mac OS X Guide.docMac OS X Guide.doc
Mac OS X Guide.doc
butest
 
WEB DESIGN!
WEB DESIGN!WEB DESIGN!
WEB DESIGN!
butest
 

More from butest (20)

EL MODELO DE NEGOCIO DE YOUTUBE
EL MODELO DE NEGOCIO DE YOUTUBEEL MODELO DE NEGOCIO DE YOUTUBE
EL MODELO DE NEGOCIO DE YOUTUBE
 
1. MPEG I.B.P frame之不同
1. MPEG I.B.P frame之不同1. MPEG I.B.P frame之不同
1. MPEG I.B.P frame之不同
 
LESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIALLESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIAL
 
Timeline: The Life of Michael Jackson
Timeline: The Life of Michael JacksonTimeline: The Life of Michael Jackson
Timeline: The Life of Michael Jackson
 
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...
 
LESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIALLESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIAL
 
Com 380, Summer II
Com 380, Summer IICom 380, Summer II
Com 380, Summer II
 
PPT
PPTPPT
PPT
 
The MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazz
The MYnstrel Free Press Volume 2: Economic Struggles, Meet JazzThe MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazz
The MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazz
 
MICHAEL JACKSON.doc
MICHAEL JACKSON.docMICHAEL JACKSON.doc
MICHAEL JACKSON.doc
 
Social Networks: Twitter Facebook SL - Slide 1
Social Networks: Twitter Facebook SL - Slide 1Social Networks: Twitter Facebook SL - Slide 1
Social Networks: Twitter Facebook SL - Slide 1
 
Facebook
Facebook Facebook
Facebook
 
Executive Summary Hare Chevrolet is a General Motors dealership ...
Executive Summary Hare Chevrolet is a General Motors dealership ...Executive Summary Hare Chevrolet is a General Motors dealership ...
Executive Summary Hare Chevrolet is a General Motors dealership ...
 
Welcome to the Dougherty County Public Library's Facebook and ...
Welcome to the Dougherty County Public Library's Facebook and ...Welcome to the Dougherty County Public Library's Facebook and ...
Welcome to the Dougherty County Public Library's Facebook and ...
 
NEWS ANNOUNCEMENT
NEWS ANNOUNCEMENTNEWS ANNOUNCEMENT
NEWS ANNOUNCEMENT
 
C-2100 Ultra Zoom.doc
C-2100 Ultra Zoom.docC-2100 Ultra Zoom.doc
C-2100 Ultra Zoom.doc
 
MAC Printing on ITS Printers.doc.doc
MAC Printing on ITS Printers.doc.docMAC Printing on ITS Printers.doc.doc
MAC Printing on ITS Printers.doc.doc
 
Mac OS X Guide.doc
Mac OS X Guide.docMac OS X Guide.doc
Mac OS X Guide.doc
 
hier
hierhier
hier
 
WEB DESIGN!
WEB DESIGN!WEB DESIGN!
WEB DESIGN!
 

Garbage Collection, Program Comprehension and Machine Learning

  • 1. Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Garbage Collection, Gavin Brown, Mikel Lujan, Ian Watson Program Comprehension Program Comprehension Jikes RVM Visualization and Machine Learning Appealing Visualization Intelligent Pretenuring Garbage Collector Perceptron Jeremy Singer Gavin Brown Pretenuring Perceptrons Mikel Lujan Ian Watson Preliminary Study Wrap Up Future Work School of Computer Science, University of Manchester Conclusions
  • 2. Outline Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, 1 Program Comprehension Mikel Lujan, Ian Watson Program 2 Intelligent Pretenuring Comprehension Jikes RVM Visualization Appealing Visualization Intelligent Pretenuring 3 Perceptron Pretenuring Garbage Collector Perceptron Pretenuring Perceptrons 4 Wrap Up Preliminary Study Wrap Up Future Work Conclusions
  • 3. Outline Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, 1 Program Comprehension Mikel Lujan, Ian Watson Program 2 Intelligent Pretenuring Comprehension Jikes RVM Visualization Appealing Visualization Intelligent Pretenuring 3 Perceptron Pretenuring Garbage Collector Perceptron Pretenuring Perceptrons 4 Wrap Up Preliminary Study Wrap Up Future Work Conclusions
  • 4. Jikes RVM Garbage Collection, Program Comprehension and Research Virtual Machine (RVM) Machine Learning Jeremy Singer, from IBM Research, now open-source Gavin Brown, Mikel Lujan, on sourceforge.net Ian Watson Program easy-to-modify adaptive compilation Comprehension Jikes RVM Visualization environment for/in Java Appealing Visualization Intelligent has research respectability—100’s of Pretenuring Garbage Collector papers use it Perceptron Pretenuring good platform for GC research Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 5. Visualizing Adaptive Subsystems Garbage Collection, Program Comprehension and monitor activity due to Machine Learning Jeremy Singer, compilation/gc/other Gavin Brown, Mikel Lujan, Ian Watson dynamic concept assignment techniques Program Comprehension Jikes RVM Visualization Appealing Visualization Intelligent Pretenuring Garbage Collector Perceptron Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 6. Feedback from ACM Symposium Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, Mikel Lujan, Ian Watson Program your visual metaphors are ... Comprehension Jikes RVM Visualization unappealing Appealing Visualization non-intuitive Intelligent Pretenuring Garbage Collector Perceptron Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 7. Better Visualization Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, Mikel Lujan, Ian Watson interactivity Program Comprehension Jikes RVM Visualization familiar objects as metaphor for Appealing Visualization unfamiliar Intelligent Pretenuring Garbage Collector 3-d Perceptron Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 8. Visualizing Garbage Collection Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, Mikel Lujan, Ian Watson mutator Program objects Comprehension Jikes RVM Visualization Appealing Visualization spaces (generations) Intelligent Pretenuring collection Garbage Collector Perceptron promotion Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 9. Metaphor for Garbage Collection Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, Mikel Lujan, Ian Watson mutator: juggler Program objects: jugglable artefacts Comprehension Jikes RVM Visualization Appealing Visualization spaces (generations): labelled boxes Intelligent Pretenuring collection: tidying boxes Garbage Collector Perceptron promotion: moving between boxes Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 10. Metaphor Applications Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, Mikel Lujan, Ian Watson Program Comprehension EPSRC CS Writing competition Jikes RVM Visualization Appealing Visualization illustrate idea of intelligent pretenuring Intelligent Pretenuring Garbage Collector Perceptron Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 11. Outline Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, 1 Program Comprehension Mikel Lujan, Ian Watson Program 2 Intelligent Pretenuring Comprehension Jikes RVM Visualization Appealing Visualization Intelligent Pretenuring 3 Perceptron Pretenuring Garbage Collector Perceptron Pretenuring Perceptrons 4 Wrap Up Preliminary Study Wrap Up Future Work Conclusions
  • 12. Avoid live objects during collection Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, Mikel Lujan, Ian Watson processing live objects is wasted time Program so long-lived objects should not start Comprehension Jikes RVM Visualization Appealing Visualization in nursery Intelligent Pretenuring pretenuring—put them in mature Garbage Collector Perceptron space immediately Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 13. Predicting Object Lifetimes Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, Mikel Lujan, Ian Watson heuristics to detect long-lived objects Program Comprehension based on allocation site Jikes RVM Visualization Appealing Visualization based on object connectivity Intelligent Pretenuring Garbage Collector can be adaptive heuristics Perceptron Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 14. Automatic Heuristic Generation Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, Mikel Lujan, Ian Watson use Machine Learning Program select an algorithm (there are plenty!) Comprehension Jikes RVM Visualization Appealing Visualization select some inputs (tricky!) Intelligent Pretenuring train the algorithm on the inputs Garbage Collector Perceptron at last, a heuristic emerges! Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 15. Outline Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, 1 Program Comprehension Mikel Lujan, Ian Watson Program 2 Intelligent Pretenuring Comprehension Jikes RVM Visualization Appealing Visualization Intelligent Pretenuring 3 Perceptron Pretenuring Garbage Collector Perceptron Pretenuring Perceptrons 4 Wrap Up Preliminary Study Wrap Up Future Work Conclusions
  • 16. Perceptrons Garbage Collection, Program Comprehension and a number of inputs x1 , x2 , . . . , xn Machine Learning Jeremy Singer, weight per input w1 , w2 , . . . , wn Gavin Brown, Mikel Lujan, compute i wi xi Ian Watson Program if sum > threshold then output 1, else Comprehension Jikes RVM Visualization output 0 Appealing Visualization Intelligent Pretenuring Garbage Collector Perceptron Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 17. Inputs Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, obtain info about objects at allocation Gavin Brown, Mikel Lujan, Ian Watson instrument Jikes RVM and MMTk Program dump data to file, for postprocessing Comprehension Jikes RVM Visualization Appealing Visualization typical inputs Intelligent object size Pretenuring Garbage Collector number of fields/methods Perceptron depth in inheritance tree Pretenuring Perceptrons in package java.* or Preliminary Study Wrap Up com.ibm.jikesrvm.* Future Work Conclusions
  • 18. Output Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, keep record of every nursery-allocated Mikel Lujan, Ian Watson object Program Comprehension track object promotions to mature Jikes RVM Visualization Appealing Visualization space Intelligent Pretenuring at end, dump out object attributes and Garbage Collector Perceptron ... Pretenuring Perceptrons Preliminary Study whether or not object was promoted Wrap Up Future Work Conclusions
  • 19. Experiments Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, Mikel Lujan, Ian Watson use some benchmarks from Program SPECjvm98 Comprehension Jikes RVM Visualization for each benchmark Appealing Visualization Intelligent train perceptron on first 50% of Pretenuring Garbage Collector allocations Perceptron test perceptron on second 50% Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 20. Prediction Types Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, positive means predict mature, Mikel Lujan, Ian Watson negative immature Program Comprehension prediction either true or false Jikes RVM Visualization Appealing Visualization Intelligent true false Pretenuring Garbage Collector positive good terrible! Perceptron Pretenuring negative good acceptable Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 21. Results Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, benchmark 200check 201compress Mikel Lujan, Ian Watson allocs 87768 100749 Program Comprehension mispreds 19748 19785 Jikes RVM Visualization Appealing Visualization tps 14733 14892 Intelligent Pretenuring fps 75 828 Garbage Collector tns 53287 66072 Perceptron Pretenuring Perceptrons fns 19673 18957 Preliminary Study Wrap Up Future Work Conclusions
  • 22. More Results Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, benchmark 205raytrace Mikel Lujan, Ian Watson allocs 4.3m Program Comprehension mispreds 1306 Jikes RVM Visualization Appealing Visualization tps 95 Intelligent Pretenuring fps 295 Garbage Collector tns 4.3m Perceptron Pretenuring Perceptrons fns 1011 Preliminary Study Wrap Up Future Work Conclusions
  • 23. Outline Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, 1 Program Comprehension Mikel Lujan, Ian Watson Program 2 Intelligent Pretenuring Comprehension Jikes RVM Visualization Appealing Visualization Intelligent Pretenuring 3 Perceptron Pretenuring Garbage Collector Perceptron Pretenuring Perceptrons 4 Wrap Up Preliminary Study Wrap Up Future Work Conclusions
  • 24. Future Work—better experiments Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, Mikel Lujan, Ian Watson Program train on one benchmark, test on Comprehension Jikes RVM Visualization another Appealing Visualization Intelligent use DaCapo instead of SPEC Pretenuring Garbage Collector Perceptron Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 25. Future Work—better predictors Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, Mikel Lujan, Ian Watson change perceptron threshold Program Comprehension different inputs? Jikes RVM Visualization Appealing Visualization vote between perceptron ensemble Intelligent Pretenuring Garbage Collector multilayer perceptrons Perceptron Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 26. Future Work—use predictions online Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, Mikel Lujan, Ian Watson incorporate learning technique into Program RVM Comprehension Jikes RVM Visualization Appealing Visualization either static or adaptive heuristic Intelligent Pretenuring pretenure objects Garbage Collector Perceptron measure performance improvement Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions
  • 27. Conclusions Garbage Collection, Program Comprehension and Machine Learning Jeremy Singer, Gavin Brown, Mikel Lujan, Ian Watson Program GC is like juggling Comprehension Jikes RVM Visualization ML enables intelligent pretenuring Appealing Visualization Intelligent watch this space! Pretenuring Garbage Collector Perceptron Pretenuring Perceptrons Preliminary Study Wrap Up Future Work Conclusions