DocumentCode :
2579135
Title :
A small cache of large ranges: Hardware methods for efficiently searching, storing, and updating big dataflow tags
Author :
Tiwari, Mohit ; Agrawal, Banit ; Mysore, Shashidhar ; Valamehr, Jonathan ; Sherwood, Timothy
Author_Institution :
Dept. of Comput. Sci., Univ. of California, Santa Barbara, CA
fYear :
2008
fDate :
8-12 Nov. 2008
Firstpage :
94
Lastpage :
105
Abstract :
Dynamically tracking the flow of data within a microprocessor creates many new opportunities to detect and track malicious or erroneous behavior, but these schemes all rely on the ability to associate tags with all of virtual or physical memory. If one wishes to store large 32-bit tags, multiple tags per data element, or tags at the granularity of bytes rather than words, then directly storing one tag on chip to cover one byte or word (in a cache or otherwise) can be an expensive proposition. We show that dataflow tags in fact naturally exhibit a very high degree of spatial-value locality, an observation we can exploit by storing metadata on ranges of addresses (which cover a non-aligned contiguous span of memory) rather than on individual elements. In fact, a small 128 entry on-chip range cache (with area equivalent to 4 KB of SRAM) hits more than 98% of the time on average. The key to this approach is our proposed method by which ranges of tags are kept in cache in an optimally RLE-compressed form, queried at high speed, swapped in and out with secondary memory storage, and (most important for dataflow tracking) rapidly stitched together into the largest possible ranges as new tags are written on every store, all the while correctly handling the cases of unaligned and overlapping ranges. We examine the effectiveness of this approach by simulating its use in definedness tracking (covering both the stack and the heap), in tracking network-derived dataflow through a multi-language web application, and through a synthesizable prototype implementation.
Keywords :
data flow analysis; data handling; meta data; dataflow tags searching; dataflow tags storing; dataflow tags updating; multilanguage Web application; secondary memory storage; spatial-value locality; Cache storage; Computer science; Hardware; Microprocessors; Network synthesis; Pipelines; Random access memory; Security; System-on-a-chip; Virtual prototyping;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Microarchitecture, 2008. MICRO-41. 2008 41st IEEE/ACM International Symposium on
Conference_Location :
Lake Como
ISSN :
1072-4451
Print_ISBN :
978-1-4244-2836-6
Electronic_ISBN :
1072-4451
Type :
conf
DOI :
10.1109/MICRO.2008.4771782
Filename :
4771782
Link To Document :
بازگشت