TY - GEN
T1 - Hardware supported flexible monitoring
T2 - 9th International Workshop on Runtime Verification, RV 2009
AU - Zhai, Antonia B
AU - He, Guojin
AU - Heimdahl, Mats
PY - 2009/12/1
Y1 - 2009/12/1
N2 - Monitoring of software's execution is crucial in numerous software development tasks. Current monitoring efforts generally require extensive instrumentation of the software or dedicated hardware test rig designed to provide visibility into the software. To fully understand software's behavior, the production software must be studied in its production environment. To address this fundamental software engineering challenges, we propose a compiler and hardware supported framework for monitoring and observation of software-intensive systems. We place three fundamental requirements on our monitoring framework. The monitoring must be non-intrusive, low-overhead, and predictable so that the software is not unduly disturbed. The framework must also allow low-level monitoring and be highly flexible so we can accommodate a broad range of crucial monitoring activities. The general idea behind our work is that to make dramatic progress in non-intrusive, predictable, and fine-grained monitoring, we must change how software is compiled and how hardware is designed; a software-monitoring framework covering the development of monitors, through compilation, and down to the hardware is essential. To achieve our goals, we have pursued an approach leveraging the rapid emergence of multi-core processor architectures to achieve a non-intrusive, predictable, fine-grained, and highly flexible general purpose monitoring framework. In this report we describe our initial steps in this direction and provide some preliminary performance results achieved with this new multi-core architecture. We use separate cores for the execution of the application to be monitored and the monitors. We augment each core with identical programmable extraction logic that can observe an application executing on the core as its program state changes.
AB - Monitoring of software's execution is crucial in numerous software development tasks. Current monitoring efforts generally require extensive instrumentation of the software or dedicated hardware test rig designed to provide visibility into the software. To fully understand software's behavior, the production software must be studied in its production environment. To address this fundamental software engineering challenges, we propose a compiler and hardware supported framework for monitoring and observation of software-intensive systems. We place three fundamental requirements on our monitoring framework. The monitoring must be non-intrusive, low-overhead, and predictable so that the software is not unduly disturbed. The framework must also allow low-level monitoring and be highly flexible so we can accommodate a broad range of crucial monitoring activities. The general idea behind our work is that to make dramatic progress in non-intrusive, predictable, and fine-grained monitoring, we must change how software is compiled and how hardware is designed; a software-monitoring framework covering the development of monitors, through compilation, and down to the hardware is essential. To achieve our goals, we have pursued an approach leveraging the rapid emergence of multi-core processor architectures to achieve a non-intrusive, predictable, fine-grained, and highly flexible general purpose monitoring framework. In this report we describe our initial steps in this direction and provide some preliminary performance results achieved with this new multi-core architecture. We use separate cores for the execution of the application to be monitored and the monitors. We augment each core with identical programmable extraction logic that can observe an application executing on the core as its program state changes.
UR - http://www.scopus.com/inward/record.url?scp=70549098407&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=70549098407&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-04694-0_12
DO - 10.1007/978-3-642-04694-0_12
M3 - Conference contribution
AN - SCOPUS:70549098407
SN - 3642046932
SN - 9783642046933
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 168
EP - 183
BT - Runtime Verification - 9th International Workshop, RV 2009, Selected Papers
Y2 - 26 June 2009 through 28 June 2009
ER -