DOC PREVIEW
UT CS 395T - Cork- Dynamic Memory Leak Detection for Garbage- Collected Languages

This preview shows page 1-2-3-4 out of 11 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Cork: Dynamic Memory Leak Detection for Garbage-Collected Languages Maria Jump & Kathryn McKinleyPresented by Yuhao ZhuCS 395TMotivationGarbage collection has to be conservativeWhich leads to maintaing references to inactive objsDifficult to find these bugsMemory leak detectionEfficiencyPrecisionEasy to parseNow we have Cork!Type Points-From GraphNode: total volumn of type tEdge: t'->t where an obj of type t is pointing to obj of type t'Constructed during whole heap collection (scanning phase)Additional type lookup (upon scanning an obj)Detecting heap growthBasic idea: differencing consecutive TPFGs, but needs to consider fluctuationsRatio Ranking Technique:Decay factor (f):Phase growth factor (g): Q > 1Ranking by accumulating g over several collections, rewarding growth and penalizing decayObjs with rank > Rthreshold are considered as candidatesMemory leak localizationData structuresSlice: a path on which the ranks of all edges are positiveThe slice contains the dynamic data structures containing candidate nodesAllocation site:Reports all allocation sites for candidatesAssociate a SiteMap of a particular type with each allocation site duing compilationSeach the maps to find allocation sites for a typeOptimizationsEfficiencyOnly look at four recent TPFGsEach type has its own type information (over four collections) recorded in its Type Information BlockScalabilityEdges are linear with respect to the nodes (quadratic in theory)Remove edges from the edge pool and adding to the edge listsEvaluation44% types are resident at a timeMore than half of the edges are pruned (rank < 0)Very very little space overheadEvaluation (cont.) 11.1% to 13.2% for scan time, 12.3% to 14.9% for collector time, resulting in 1.9% to 4.0% for total timeEvaluation (cont.)Accuracy (sensitivity) analysisThe larger the better, but at some point it stopsEvaluation (cont.)Two case studies: SPECjbb2000 and EclipseFind the candidates -> correlate to the code -> localize the bugHuman ingenuity is still required!DiscussionHow to deal with unmanaged languages where type information is not contained?How to further reduce the need for programmers'


View Full Document

UT CS 395T - Cork- Dynamic Memory Leak Detection for Garbage- Collected Languages

Documents in this Course
TERRA

TERRA

23 pages

OpenCL

OpenCL

15 pages

Byzantine

Byzantine

32 pages

Load more
Download Cork- Dynamic Memory Leak Detection for Garbage- Collected Languages
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Cork- Dynamic Memory Leak Detection for Garbage- Collected Languages and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Cork- Dynamic Memory Leak Detection for Garbage- Collected Languages 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?