Skip navigation
Skip navigation

Why nothing matters: the impact of zeroing

Yang, Xi; Blackburn, Stephen; Frampton, Daniel; Sartor, Jennifer B.; McKinley, Kathryn

Description

Memory safety defends against inadvertent and malicious misuse of memory that may compromise program correctness and security. A critical element of memory safety is zero initialization. The direct cost of zero initialization is surprisingly high: up to 12.7%, with average costs ranging from 2.7 to 4.5% on a high performance virtual machine on IA32 architectures. Zero initialization also incurs indirect costs due to its memory bandwidth demands and cache displacement effects. Existing virtual...[Show more]

dc.contributor.authorYang, Xi
dc.contributor.authorBlackburn, Stephen
dc.contributor.authorFrampton, Daniel
dc.contributor.authorSartor, Jennifer B.
dc.contributor.authorMcKinley, Kathryn
dc.coverage.spatialPortland USA
dc.date.accessioned2015-12-10T22:12:24Z
dc.date.createdOctober 22-27 2011
dc.identifier.isbn9781450309400
dc.identifier.urihttp://hdl.handle.net/1885/49639
dc.description.abstractMemory safety defends against inadvertent and malicious misuse of memory that may compromise program correctness and security. A critical element of memory safety is zero initialization. The direct cost of zero initialization is surprisingly high: up to 12.7%, with average costs ranging from 2.7 to 4.5% on a high performance virtual machine on IA32 architectures. Zero initialization also incurs indirect costs due to its memory bandwidth demands and cache displacement effects. Existing virtual machines either: a) minimize direct costs by zeroing in large blocks, or b) minimize indirect costs by zeroing in the allocation sequence, which reduces cache displacement and bandwidth. This paper evaluates the two widely used zero initialization designs, showing that they make different tradeoffs to achieve very similar performance. Our analysis inspires three better designs: (1) bulk zeroing with cache-bypassing (non-temporal) instructions to reduce the direct and indirect zeroing costs simultaneously, (2) concurrent non-temporal bulk zeroing that exploits parallel hardware to move work off the application's critical path, and (3) adaptive zeroing, which dynamically chooses between (1) and (2) based on available hardware parallelism. The new software strategies offer speedups sometimes greater than the direct overhead, improving total performance by 3% on average. Our findings invite additional optimizations and microarchitectural support.
dc.publisherAssociation for Computing Machinery Inc (ACM)
dc.relation.ispartofseriesInternational conference on Object oriented programming systems languages and applications
dc.sourceWhy Nothing Matters: The Impact of Zeroing
dc.subjectKeywords: Average cost; Critical elements; Critical Paths; Direct costs; Indirect costs; Memory bandwidths; Memory safety; Microarchitectural support; Parallel hardware; Program correctness; Total performance; Virtual machines; Zero initialization; Bandwidth; Cache Memory safety; Zero initialization
dc.titleWhy nothing matters: the impact of zeroing
dc.typeConference paper
local.description.notesImported from ARIES
local.description.refereedYes
dc.date.issued2011
local.identifier.absfor080308 - Programming Languages
local.identifier.ariespublicationu4963866xPUB189
local.type.statusPublished Version
local.contributor.affiliationYang, Xi, College of Engineering and Computer Science, ANU
local.contributor.affiliationBlackburn, Stephen, College of Engineering and Computer Science, ANU
local.contributor.affiliationFrampton, Daniel, College of Engineering and Computer Science, ANU
local.contributor.affiliationSartor, Jennifer B., University of Texas
local.contributor.affiliationMcKinley, Kathryn, University of Texas
local.description.embargo2037-12-31
local.bibliographicCitation.startpage307
local.bibliographicCitation.lastpage324
local.identifier.doi10.1145/2048066.2048092
local.identifier.absseo970108 - Expanding Knowledge in the Information and Computing Sciences
dc.date.updated2016-02-24T11:30:16Z
local.identifier.scopusID2-s2.0-81455131754
local.identifier.thomsonID000298294500020
CollectionsANU Research Publications

Download

File Description SizeFormat Image
01_Yang_Why_nothing_matters:_the_2011.pdf812.63 kBAdobe PDF    Request a copy


Items in Open Research are protected by copyright, with all rights reserved, unless otherwise indicated.

Updated:  19 May 2020/ Responsible Officer:  University Librarian/ Page Contact:  Library Systems & Web Coordinator