TY - GEN
T1 - Architectural support for low overhead detection of memory violations
AU - Ghose, Saugata
AU - Gilgeous, Latoya
AU - Dudnik, Polina
AU - Aggarwal, Aneesh
AU - Waxman, Corey
PY - 2009
Y1 - 2009
N2 - Violations in memory references cause tremendous loss of productivity, catastrophic mission failures, loss of privacy and security, and much more. Software mechanisms to detect memory violations have high false positive and negative rates or huge performance overhead. This paper proposes architectural support to detect memory reference violations in inherently unsafe languages such as C and C++. In this approach, the ISA is extended to include "safety" instructions that provide compile-time information on pointers and objects. The microarchitecture is extended to efficiently execute the safety instructions. We explore optimizations, such as delayed violation detection and stack-based handling of local pointers, to reduce the performance overhead. Our experiments show that the synergy between hardware and software results in this approach having less than 5% average performance overhead, while an exclusively software mechanism incurs 480% impact for the same benchmarks.
AB - Violations in memory references cause tremendous loss of productivity, catastrophic mission failures, loss of privacy and security, and much more. Software mechanisms to detect memory violations have high false positive and negative rates or huge performance overhead. This paper proposes architectural support to detect memory reference violations in inherently unsafe languages such as C and C++. In this approach, the ISA is extended to include "safety" instructions that provide compile-time information on pointers and objects. The microarchitecture is extended to efficiently execute the safety instructions. We explore optimizations, such as delayed violation detection and stack-based handling of local pointers, to reduce the performance overhead. Our experiments show that the synergy between hardware and software results in this approach having less than 5% average performance overhead, while an exclusively software mechanism incurs 480% impact for the same benchmarks.
UR - http://www.scopus.com/inward/record.url?scp=70350057475&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=70350057475&partnerID=8YFLogxK
U2 - 10.1109/date.2009.5090747
DO - 10.1109/date.2009.5090747
M3 - Conference contribution
AN - SCOPUS:70350057475
SN - 9783981080155
T3 - Proceedings -Design, Automation and Test in Europe, DATE
SP - 652
EP - 657
BT - Proceedings - 2009 Design, Automation and Test in Europe Conference and Exhibition, DATE '09
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 2009 Design, Automation and Test in Europe Conference and Exhibition, DATE '09
Y2 - 20 April 2009 through 24 April 2009
ER -