Show simple item record

dc.contributor.authorZhao, Qin
dc.contributor.authorAmarasinghe, Saman P.
dc.contributor.authorRabbah, Rodric M.
dc.contributor.authorRudolph, Larry
dc.contributor.authorWong, Weng Fai
dc.date.accessioned2007-01-23T19:25:08Z
dc.date.available2007-01-23T19:25:08Z
dc.date.issued2007-01
dc.identifier.urihttp://hdl.handle.net/1721.1/35778
dc.description.abstractApplication debugging is a tedious but inevitable chore in any software development project. An effective debugger can make programmers more productive by allowing them to pause execution and inspect the state of the process, or monitor writes to memory to detect data corruption. The latter is a notoriously difficult category of bugs to diagnose and repair especially in pointer-heavy applications. The debugging challenges will increase with the arrival of multicore processors which require explicit parallelization of the user code to get any performance gains. Parallelization in turn can lead to more data debugging issues such as the detection of data races between threads. This paper leverages the increasing efficiency of runtime binary interpreters to provide a new concept of Efficient Debugging using Dynamic Instrumentation, or EDDI. The paper demonstrates for the first time the feasibility of using dynamic instrumentation on demand to accelerate software debuggers, especially when the available hardware support is lacking or inadequate. As an example, EDDI can simultaneously monitor millions of memory locations, without crippling the host processing platform. It does this in software and hence provides a portable debugging environment. It is also well suited for interactive debugging because of the low associated overheads. EDDI provides a scalable and extensible debugging framework that can substantially increase the feature set of standard off the shelf debuggers.en
dc.description.sponsorshipSingapore-MIT Alliance (SMA)en
dc.format.extent141787 bytes
dc.format.mimetypeapplication/pdf
dc.language.isoenen
dc.relation.ispartofseriesComputer Science (CS)en
dc.subjectDebuggersen
dc.subjectWatchpointsen
dc.subjectDynamic Instrumentationen
dc.titleHow to Do a Million Watchpoints: Efficient Debugging Using Dynamic Instrumentationen
dc.typeArticleen


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record