Efficient Context Sensitivity for Dynamic Analyses via Calling Context Uptrees and Customized Memory Management

Bibliographic Details
Main Author: Huang, Jipeng
Language:English
Published: The Ohio State University / OhioLINK 2014
Subjects:
Online Access:http://rave.ohiolink.edu/etdc/view?acc_num=osu1397231571
id ndltd-OhioLink-oai-etd.ohiolink.edu-osu1397231571
record_format oai_dc
spelling ndltd-OhioLink-oai-etd.ohiolink.edu-osu13972315712021-08-03T06:23:34Z Efficient Context Sensitivity for Dynamic Analyses via Calling Context Uptrees and Customized Memory Management Huang, Jipeng Computer Science State-of-the-art dynamic bug detectors such as data race and memory leak detectors report program locations that are likely causes of bugs. However, programmers need more than static program locations to understand the behavior of increasingly complex and concurrent software. Dynamic calling context provides additional information, but it is expensive to record calling context frequently, e.g., at every read and write. Context-sensitive dynamic analyses can build and maintain a calling context tree (CCT) to track calling context—but in order to reuse existing nodes, CCT-based approaches require an expensive lookup.This thesis introduces a new approach for context sensitivity that avoids this expensive lookup. The approach uses a new data structure called the calling context uptree (CCU) that adds low overhead by avoiding the lookup and instead allocating a new node for each context. A key contribution is that the approach can mitigate the costs of allocating many nodes by extending tracing garbage collection (GC): GC collects unused CCU nodes naturally and efficiently, and we extend GC to merge duplicate nodes lazily.We implement our CCU-based approach in a high-performance Java virtual machine and integrate it with a staleness-based memory leak detector and happens-before data race detector, so they can report context-sensitive program locations that cause bugs. We show that the CCU-based approach, in concert with an extended GC, provides a compelling alternative to CCT-based approaches for adding context sensitivity to dynamic analyses. 2014-08-28 English text The Ohio State University / OhioLINK http://rave.ohiolink.edu/etdc/view?acc_num=osu1397231571 http://rave.ohiolink.edu/etdc/view?acc_num=osu1397231571 unrestricted This thesis or dissertation is protected by copyright: some rights reserved. It is licensed for use under a Creative Commons license. Specific terms and permissions are available from this document's record in the OhioLINK ETD Center.
collection NDLTD
language English
sources NDLTD
topic Computer Science
spellingShingle Computer Science
Huang, Jipeng
Efficient Context Sensitivity for Dynamic Analyses via Calling Context Uptrees and Customized Memory Management
author Huang, Jipeng
author_facet Huang, Jipeng
author_sort Huang, Jipeng
title Efficient Context Sensitivity for Dynamic Analyses via Calling Context Uptrees and Customized Memory Management
title_short Efficient Context Sensitivity for Dynamic Analyses via Calling Context Uptrees and Customized Memory Management
title_full Efficient Context Sensitivity for Dynamic Analyses via Calling Context Uptrees and Customized Memory Management
title_fullStr Efficient Context Sensitivity for Dynamic Analyses via Calling Context Uptrees and Customized Memory Management
title_full_unstemmed Efficient Context Sensitivity for Dynamic Analyses via Calling Context Uptrees and Customized Memory Management
title_sort efficient context sensitivity for dynamic analyses via calling context uptrees and customized memory management
publisher The Ohio State University / OhioLINK
publishDate 2014
url http://rave.ohiolink.edu/etdc/view?acc_num=osu1397231571
work_keys_str_mv AT huangjipeng efficientcontextsensitivityfordynamicanalysesviacallingcontextuptreesandcustomizedmemorymanagement
_version_ 1719435974720618496