SlideShare a Scribd company logo
1 of 14
Machine Learning for
Garbage Collection



     James Thomas
 




     MSc Advanced Computer Science
 




     “Machine Learning for Garbage
 


     Collection”

     Gavin Brown & Mikel Lujan
 
Garbage Collection
     Traditional manual memory management
 


     by the programmer is prone to error

     Automatic memory management by the
 


     runtime environment, takes out the
     “garbage”

     Stop the World GC, in Object Orientated
 


     environment (Java)

     GC time in this context is dead time,
 


     algorithm extremely important for
     efficiency
Generational Garbage
Collection

     Generational hypothesis, “The majority of
 


     objects die young” - D. Ungar, 1984

     Separate heap objects into different
 


     generations, vary collection frequency.
     Reduce scanning and pause time.

     Copying time increases GC time, copying
 


     reserve reduces heap size.

     Allocate directly into mature generation?
 
Generational Garbage
Collection
Machine Learning
Introduction

     Automatically extract patterns and
 


     processes underlying data generation

     Classification, Regression, Unsupervised
 


     learning (Clustering etc.)

     Algorithm extremely important
 




     “Use ML to predict whether an object will
 


     live long enough to be tenured into the
     mature space”
Project Progress
     Existing literature review used to
 


     generate hypothesises about which
     heuristics could indicate object lifetime
     behaviour

     Modified Jikes RVM to trace object
 


     allocation and tenuring data

     DaCapo benchmarks, varying heap sizes.
 




     Mutual Information used to test
 


     correlation of example heuristics as
     lifetime predictor.
Mutual Information sample
results
Mutual Information sample
results
Current Project Results
     Allocation site, allocation method and
 


     method trace are good object lifetime
     indicators for both scalars and arrays

     Object type exhibits high MI for scalar,
 


     but less so for array, objects

     Object size exhibits high MI for array
 


     objects, but minimal for scalars.

     Generalised object type name
 


     characteristics exists e.g. Iterator or
     Enum classes are short lived.
Machine Learning plan

 Treat as classification problem not



regression, predict tenuring decision not
exact object lifetime.

 Mixture of categorical and ordinal data



makes learning more complex.

 Lack of linear separability between



classes.

 Large alphabets for many attributes, e.g.



type, reduces generality of advice.
Decision Tree

 Machine learning technique using tree



structure to represent classifier.

    Branch nodes consist of attribute tests





    Branches are attributes values





    Leaf nodes represent classification





 Can handle our complex data input



characteristics, e.g. categorical data.
Future Project Plan
 Begin with offline learning. Train decision



tree offline and plug results back into Jikes
RVM for execution. Evaluate effect on
garbage collection and benchmark
execution.

 Consider online learning within the JVM,



training stage now done during application
execution not before. Performance impact
of this stage is crucial.

 Extensions? Increased granularity of object



lifetime prediction.
Current Project
Conclusions

  Mutual Information can be used to



correlate heuristics from with object
lifetimes, not previously used in the
literature, and confirm hypothesises.

 Previously unknown heuristic found.



Objects with the same generalised object
type have similar lifetime characteristics.

 Decision tree may be appropriate for



learning with available data.
Questions?

More Related Content

What's hot

WATER QUALITY PREDICTION
WATER QUALITY PREDICTIONWATER QUALITY PREDICTION
WATER QUALITY PREDICTIONFasil47
 
Powerpoint Presentation of PhD Viva
Powerpoint Presentation of PhD VivaPowerpoint Presentation of PhD Viva
Powerpoint Presentation of PhD VivaDr Mohan Savade
 
Masters Thesis Defense Presentation
Masters Thesis Defense PresentationMasters Thesis Defense Presentation
Masters Thesis Defense Presentationnancyanne
 
PhD research proposal presentation Sonia Saddiqui 28 Nov 2013
PhD research proposal presentation Sonia Saddiqui 28 Nov 2013PhD research proposal presentation Sonia Saddiqui 28 Nov 2013
PhD research proposal presentation Sonia Saddiqui 28 Nov 2013Sonia Saddiqui
 
PhD Viva presentation /PhD thesis defense/Environmental Science thesis presen...
PhD Viva presentation /PhD thesis defense/Environmental Science thesis presen...PhD Viva presentation /PhD thesis defense/Environmental Science thesis presen...
PhD Viva presentation /PhD thesis defense/Environmental Science thesis presen...Rahul Kamble
 
M.S. Thesis Defense
M.S. Thesis DefenseM.S. Thesis Defense
M.S. Thesis Defensepbecker1987
 
PhD Presentation (Doctorate)
PhD Presentation (Doctorate)PhD Presentation (Doctorate)
PhD Presentation (Doctorate)Sharif Omar Salem
 
Bad design
Bad designBad design
Bad designaukee
 
Pre submission ppt final
Pre submission ppt finalPre submission ppt final
Pre submission ppt finalGautam Singh
 
Research Methodology 2
Research Methodology 2Research Methodology 2
Research Methodology 2Siti Mastura
 
Research Proposal and Research Paper writing workshop on 23 Aug
Research Proposal and Research Paper writing workshop on 23 AugResearch Proposal and Research Paper writing workshop on 23 Aug
Research Proposal and Research Paper writing workshop on 23 AugDr. Rashmi Hebalkar
 
Research objectives
Research objectivesResearch objectives
Research objectivesBruno Mmassy
 
Research approaches and methods
Research approaches and methodsResearch approaches and methods
Research approaches and methodsBoutkhil Guemide
 

What's hot (20)

PhD Progress Report July 2018
PhD Progress Report July 2018PhD Progress Report July 2018
PhD Progress Report July 2018
 
WATER QUALITY PREDICTION
WATER QUALITY PREDICTIONWATER QUALITY PREDICTION
WATER QUALITY PREDICTION
 
Powerpoint Presentation of PhD Viva
Powerpoint Presentation of PhD VivaPowerpoint Presentation of PhD Viva
Powerpoint Presentation of PhD Viva
 
Masters Thesis Defense Presentation
Masters Thesis Defense PresentationMasters Thesis Defense Presentation
Masters Thesis Defense Presentation
 
PhD research proposal presentation Sonia Saddiqui 28 Nov 2013
PhD research proposal presentation Sonia Saddiqui 28 Nov 2013PhD research proposal presentation Sonia Saddiqui 28 Nov 2013
PhD research proposal presentation Sonia Saddiqui 28 Nov 2013
 
How to do a Literature Review
How to do a Literature ReviewHow to do a Literature Review
How to do a Literature Review
 
PhD Viva presentation /PhD thesis defense/Environmental Science thesis presen...
PhD Viva presentation /PhD thesis defense/Environmental Science thesis presen...PhD Viva presentation /PhD thesis defense/Environmental Science thesis presen...
PhD Viva presentation /PhD thesis defense/Environmental Science thesis presen...
 
M.S. Thesis Defense
M.S. Thesis DefenseM.S. Thesis Defense
M.S. Thesis Defense
 
PhD Presentation (Doctorate)
PhD Presentation (Doctorate)PhD Presentation (Doctorate)
PhD Presentation (Doctorate)
 
BEHAILU DEFENCE PPT (final 4)
BEHAILU DEFENCE PPT (final 4)BEHAILU DEFENCE PPT (final 4)
BEHAILU DEFENCE PPT (final 4)
 
Msc Thesis - Presentation
Msc Thesis - PresentationMsc Thesis - Presentation
Msc Thesis - Presentation
 
Bad design
Bad designBad design
Bad design
 
Research proposal presentation
Research proposal presentationResearch proposal presentation
Research proposal presentation
 
Pre submission ppt final
Pre submission ppt finalPre submission ppt final
Pre submission ppt final
 
Research Methodology 2
Research Methodology 2Research Methodology 2
Research Methodology 2
 
PhD Thesis Defense Presentation
PhD Thesis Defense PresentationPhD Thesis Defense Presentation
PhD Thesis Defense Presentation
 
Research Proposal and Research Paper writing workshop on 23 Aug
Research Proposal and Research Paper writing workshop on 23 AugResearch Proposal and Research Paper writing workshop on 23 Aug
Research Proposal and Research Paper writing workshop on 23 Aug
 
Characteristics of a good thesis
Characteristics of a good thesisCharacteristics of a good thesis
Characteristics of a good thesis
 
Research objectives
Research objectivesResearch objectives
Research objectives
 
Research approaches and methods
Research approaches and methodsResearch approaches and methods
Research approaches and methods
 

Similar to My thesis progress presentation

Memory efficient java tutorial practices and challenges
Memory efficient java tutorial practices and challengesMemory efficient java tutorial practices and challenges
Memory efficient java tutorial practices and challengesmustafa sarac
 
Efficient Management for Hybrid Memory in Managed Language Runtime
Efficient Management for Hybrid Memory in Managed Language RuntimeEfficient Management for Hybrid Memory in Managed Language Runtime
Efficient Management for Hybrid Memory in Managed Language RuntimeChenxi Wang
 
Strata San Jose 2016: Scalable Ensemble Learning with H2O
Strata San Jose 2016: Scalable Ensemble Learning with H2OStrata San Jose 2016: Scalable Ensemble Learning with H2O
Strata San Jose 2016: Scalable Ensemble Learning with H2OSri Ambati
 
GeoAI: A Model-Agnostic Meta-Ensemble Zero-Shot Learning Method for Hyperspec...
GeoAI: A Model-Agnostic Meta-Ensemble Zero-Shot Learning Method for Hyperspec...GeoAI: A Model-Agnostic Meta-Ensemble Zero-Shot Learning Method for Hyperspec...
GeoAI: A Model-Agnostic Meta-Ensemble Zero-Shot Learning Method for Hyperspec...Konstantinos Demertzis
 
Java programing considering performance
Java programing considering performanceJava programing considering performance
Java programing considering performanceRoger Xia
 
A novel design of a parallel machine learnt
A novel design of a parallel machine learntA novel design of a parallel machine learnt
A novel design of a parallel machine learntcseij
 
A Novel Design of a Parallel Machine Learnt Generational Garbage Collector
A Novel Design of a Parallel Machine Learnt Generational Garbage Collector A Novel Design of a Parallel Machine Learnt Generational Garbage Collector
A Novel Design of a Parallel Machine Learnt Generational Garbage Collector cseij
 
Learnometrics: Metrics for Learning Objects
Learnometrics: Metrics for Learning ObjectsLearnometrics: Metrics for Learning Objects
Learnometrics: Metrics for Learning ObjectsXavier Ochoa
 
Java Garbage Collection, Monitoring, and Tuning
Java Garbage Collection, Monitoring, and TuningJava Garbage Collection, Monitoring, and Tuning
Java Garbage Collection, Monitoring, and TuningCarol McDonald
 
2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...
2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...
2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...IEEEFINALYEARSTUDENTPROJECT
 
2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...
2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...
2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...IEEEMEMTECHSTUDENTSPROJECTS
 
IEEE 2014 JAVA DATA MINING PROJECTS Mining weakly labeled web facial images f...
IEEE 2014 JAVA DATA MINING PROJECTS Mining weakly labeled web facial images f...IEEE 2014 JAVA DATA MINING PROJECTS Mining weakly labeled web facial images f...
IEEE 2014 JAVA DATA MINING PROJECTS Mining weakly labeled web facial images f...IEEEFINALYEARSTUDENTPROJECTS
 
Week3-Deep Neural Network (DNN).pptx
Week3-Deep Neural Network (DNN).pptxWeek3-Deep Neural Network (DNN).pptx
Week3-Deep Neural Network (DNN).pptxfahmi324663
 
Probabilistic breakdown of assembly graphs
Probabilistic breakdown of assembly graphsProbabilistic breakdown of assembly graphs
Probabilistic breakdown of assembly graphsc.titus.brown
 
Optimizing your java applications for multi core hardware
Optimizing your java applications for multi core hardwareOptimizing your java applications for multi core hardware
Optimizing your java applications for multi core hardwareIndicThreads
 
DLD meetup 2017, Efficient Deep Learning
DLD meetup 2017, Efficient Deep LearningDLD meetup 2017, Efficient Deep Learning
DLD meetup 2017, Efficient Deep LearningBrodmann17
 
IEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Scale adaptive dictionary learning
IEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Scale adaptive dictionary learningIEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Scale adaptive dictionary learning
IEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Scale adaptive dictionary learningIEEEBEBTECHSTUDENTPROJECTS
 
Weave-D - 2nd Progress Evaluation Presentation
Weave-D - 2nd Progress Evaluation PresentationWeave-D - 2nd Progress Evaluation Presentation
Weave-D - 2nd Progress Evaluation Presentationlasinducharith
 
Action Genome: Action As Composition of Spatio Temporal Scene Graphs
Action Genome: Action As Composition of Spatio Temporal Scene GraphsAction Genome: Action As Composition of Spatio Temporal Scene Graphs
Action Genome: Action As Composition of Spatio Temporal Scene GraphsSangmin Woo
 

Similar to My thesis progress presentation (20)

Memory efficient java tutorial practices and challenges
Memory efficient java tutorial practices and challengesMemory efficient java tutorial practices and challenges
Memory efficient java tutorial practices and challenges
 
Efficient Management for Hybrid Memory in Managed Language Runtime
Efficient Management for Hybrid Memory in Managed Language RuntimeEfficient Management for Hybrid Memory in Managed Language Runtime
Efficient Management for Hybrid Memory in Managed Language Runtime
 
Strata San Jose 2016: Scalable Ensemble Learning with H2O
Strata San Jose 2016: Scalable Ensemble Learning with H2OStrata San Jose 2016: Scalable Ensemble Learning with H2O
Strata San Jose 2016: Scalable Ensemble Learning with H2O
 
GeoAI: A Model-Agnostic Meta-Ensemble Zero-Shot Learning Method for Hyperspec...
GeoAI: A Model-Agnostic Meta-Ensemble Zero-Shot Learning Method for Hyperspec...GeoAI: A Model-Agnostic Meta-Ensemble Zero-Shot Learning Method for Hyperspec...
GeoAI: A Model-Agnostic Meta-Ensemble Zero-Shot Learning Method for Hyperspec...
 
Java programing considering performance
Java programing considering performanceJava programing considering performance
Java programing considering performance
 
A novel design of a parallel machine learnt
A novel design of a parallel machine learntA novel design of a parallel machine learnt
A novel design of a parallel machine learnt
 
A Novel Design of a Parallel Machine Learnt Generational Garbage Collector
A Novel Design of a Parallel Machine Learnt Generational Garbage Collector A Novel Design of a Parallel Machine Learnt Generational Garbage Collector
A Novel Design of a Parallel Machine Learnt Generational Garbage Collector
 
Learnometrics: Metrics for Learning Objects
Learnometrics: Metrics for Learning ObjectsLearnometrics: Metrics for Learning Objects
Learnometrics: Metrics for Learning Objects
 
PhD Defense
PhD DefensePhD Defense
PhD Defense
 
Java Garbage Collection, Monitoring, and Tuning
Java Garbage Collection, Monitoring, and TuningJava Garbage Collection, Monitoring, and Tuning
Java Garbage Collection, Monitoring, and Tuning
 
2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...
2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...
2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...
 
2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...
2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...
2014 IEEE JAVA DATA MINING PROJECT Mining weakly labeled web facial images fo...
 
IEEE 2014 JAVA DATA MINING PROJECTS Mining weakly labeled web facial images f...
IEEE 2014 JAVA DATA MINING PROJECTS Mining weakly labeled web facial images f...IEEE 2014 JAVA DATA MINING PROJECTS Mining weakly labeled web facial images f...
IEEE 2014 JAVA DATA MINING PROJECTS Mining weakly labeled web facial images f...
 
Week3-Deep Neural Network (DNN).pptx
Week3-Deep Neural Network (DNN).pptxWeek3-Deep Neural Network (DNN).pptx
Week3-Deep Neural Network (DNN).pptx
 
Probabilistic breakdown of assembly graphs
Probabilistic breakdown of assembly graphsProbabilistic breakdown of assembly graphs
Probabilistic breakdown of assembly graphs
 
Optimizing your java applications for multi core hardware
Optimizing your java applications for multi core hardwareOptimizing your java applications for multi core hardware
Optimizing your java applications for multi core hardware
 
DLD meetup 2017, Efficient Deep Learning
DLD meetup 2017, Efficient Deep LearningDLD meetup 2017, Efficient Deep Learning
DLD meetup 2017, Efficient Deep Learning
 
IEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Scale adaptive dictionary learning
IEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Scale adaptive dictionary learningIEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Scale adaptive dictionary learning
IEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Scale adaptive dictionary learning
 
Weave-D - 2nd Progress Evaluation Presentation
Weave-D - 2nd Progress Evaluation PresentationWeave-D - 2nd Progress Evaluation Presentation
Weave-D - 2nd Progress Evaluation Presentation
 
Action Genome: Action As Composition of Spatio Temporal Scene Graphs
Action Genome: Action As Composition of Spatio Temporal Scene GraphsAction Genome: Action As Composition of Spatio Temporal Scene Graphs
Action Genome: Action As Composition of Spatio Temporal Scene Graphs
 

Recently uploaded

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetEnjoy Anytime
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Recently uploaded (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

My thesis progress presentation

  • 1. Machine Learning for Garbage Collection James Thomas  MSc Advanced Computer Science  “Machine Learning for Garbage  Collection” Gavin Brown & Mikel Lujan 
  • 2. Garbage Collection Traditional manual memory management  by the programmer is prone to error Automatic memory management by the  runtime environment, takes out the “garbage” Stop the World GC, in Object Orientated  environment (Java) GC time in this context is dead time,  algorithm extremely important for efficiency
  • 3. Generational Garbage Collection Generational hypothesis, “The majority of  objects die young” - D. Ungar, 1984 Separate heap objects into different  generations, vary collection frequency. Reduce scanning and pause time. Copying time increases GC time, copying  reserve reduces heap size. Allocate directly into mature generation? 
  • 5. Machine Learning Introduction Automatically extract patterns and  processes underlying data generation Classification, Regression, Unsupervised  learning (Clustering etc.) Algorithm extremely important  “Use ML to predict whether an object will  live long enough to be tenured into the mature space”
  • 6. Project Progress Existing literature review used to  generate hypothesises about which heuristics could indicate object lifetime behaviour Modified Jikes RVM to trace object  allocation and tenuring data DaCapo benchmarks, varying heap sizes.  Mutual Information used to test  correlation of example heuristics as lifetime predictor.
  • 9. Current Project Results Allocation site, allocation method and  method trace are good object lifetime indicators for both scalars and arrays Object type exhibits high MI for scalar,  but less so for array, objects Object size exhibits high MI for array  objects, but minimal for scalars. Generalised object type name  characteristics exists e.g. Iterator or Enum classes are short lived.
  • 10. Machine Learning plan Treat as classification problem not  regression, predict tenuring decision not exact object lifetime. Mixture of categorical and ordinal data  makes learning more complex. Lack of linear separability between  classes. Large alphabets for many attributes, e.g.  type, reduces generality of advice.
  • 11. Decision Tree Machine learning technique using tree  structure to represent classifier. Branch nodes consist of attribute tests  Branches are attributes values  Leaf nodes represent classification  Can handle our complex data input  characteristics, e.g. categorical data.
  • 12. Future Project Plan Begin with offline learning. Train decision  tree offline and plug results back into Jikes RVM for execution. Evaluate effect on garbage collection and benchmark execution. Consider online learning within the JVM,  training stage now done during application execution not before. Performance impact of this stage is crucial. Extensions? Increased granularity of object  lifetime prediction.
  • 13. Current Project Conclusions Mutual Information can be used to  correlate heuristics from with object lifetimes, not previously used in the literature, and confirm hypothesises. Previously unknown heuristic found.  Objects with the same generalised object type have similar lifetime characteristics. Decision tree may be appropriate for  learning with available data.