Repository logo
 

Efficient tagged memory

Accepted version
Peer-reviewed

Change log

Authors

Joannou, A 
Woodruff, J 
Kovacsics, R 
Moore, SW 
Bradbury, A 

Abstract

We characterize the cache behavior of an in-memory tag table and demonstrate that an optimized implementation can typically achieve a near-zero memory traffic overhead. Both industry and academia have repeatedly demonstrated tagged memory as a key mechanism to enable enforcement of powerful security invariants, including capabilities pointer integrity, watchpoints, and information-flow tracking. A single-bit tag shadowspace is the most commonly proposed requirement, as one bit is the minimum metadata needed to distinguish between an untyped data word and any number of new hardware-enforced types. We survey various tag shadowspace approaches and identify their common requirements and positive features of their implementations. To avoid non-standard memory widths, we identify the most practical implementation for tag storage to be an in-memory table managed next to the DRAM controller. We characterize the caching performance of such a tag table and demonstrate a DRAM traffic overhead below 5% for the vast majority of applications. We identify spatial locality on a page scale as the primary factor that enables surprisingly high table cache-ability. We then demonstrate tag-table compression for a set of common applications. A hierarchical structure with elegantly simple optimizations reduces DRAM traffic overhead to below 1% for most applications. These insights and optimizations pave the way for commercial applications making use of single-bit tags stored in commodity memory.

Description

Keywords

33 Built Environment and Design, 40 Engineering, 3301 Architecture, 4009 Electronics, Sensors and Digital Hardware

Journal Title

Proceedings - 35th IEEE International Conference on Computer Design, ICCD 2017

Conference Name

2017 IEEE 35th International Conference on Computer Design (ICCD)

Journal ISSN

1063-6404

Volume Title

Publisher

IEEE
Sponsorship
Engineering and Physical Sciences Research Council (EP/K008528/1)
Engineering and Physical Sciences Research Council (1778326)