A Concurrent Dynamic Analysis Framework for Multicore Hardware

Date

Authors

Ha, Jungwoo
Arnold, Matthew
Blackburn, Stephen
McKinley, Kathryn

Journal Title

Journal ISSN

Volume Title

Publisher

Association for Computing Machinery Inc (ACM)

Abstract

Software has spent the bounty of Moore's law by solving harder problems and exploiting abstractions, such as highlevel languages, virtual machine technology, binary rewriting, and dynamic analysis. Abstractions make programmers more productive and programs more portable, but usually slow them down. Since Moore's law is now delivering multiple cores instead of faster processors, future systems must either bear a relatively higher cost for abstractions or use some cores to help tolerate abstraction costs. This paper presents the design, implementation, and evaluation of a novel concurrent, configurable dynamic analysis framework that efficiently utilizes multicore cache architectures. It introduces Cache-friendly Asymmetric Buffering (CAB), a lock-free ring-buffer that implements efficient communication between application and analysis threads. We guide the design and implementation of our framework with a model of dynamic analysis overheads. The framework implements exhaustive and sampling event processing and is analysis-neutral. We evaluate the framework with five popular and diverse analyses, and show performance improvements even for lightweight, low-overhead analyses. Efficient inter-core communication is central to high performance parallel systems and we believe the CAB design gives insight into the subtleties and difficulties of attaining it for dynamic analysis and other parallel software.

Description

Citation

Source

ACM SIGPLAN Notices

Book Title

Entity type

Access Statement

License Rights

DOI

Restricted until

2037-12-31