DocumentCode
1007426
Title
Cache invalidation patterns in shared-memory multiprocessors
Author
Gupta, Anoop ; Weber, Wolf-Dietrich
Author_Institution
Comput. Syst. Lab., Stanford Univ., CA, USA
Volume
41
Issue
7
fYear
1992
fDate
7/1/1992 12:00:00 AM
Firstpage
794
Lastpage
810
Abstract
The cache invalidation patterns of several parallel applications are analyzed. The results are based on multiprocessor simulations with 8, 16, and 32 processors. To provide deeper insight into the observed invalidation behavior the invalidations observed in the simulations are linked to the high-level objects causing them in the programs. To predict what the invalidation patterns would look like beyond 32 processors, a classification scheme for data objects found in parallel programs is proposed. The classification scheme provides a powerful conceptual tool to reason about the invalidation patterns of parallel applications. Results indicate that it should be possible to scale well-written parallel programs to a large number of processors without an explosion in invalidation traffic. At the same time, the invalidation patterns are such that directory-based schemes with just a few pointers per entry can be very effective. The variations in invalidation behavior with different cache line sizes are discussed. The results indicate that cache line sizes in the 32-byte range yield the lowest data and invalidation traffic
Keywords
buffer storage; digital simulation; multiprocessing systems; parallel programming; cache invalidation patterns; classification scheme; conceptual tool; data objects; directory-based schemes; high-level objects; invalidation patterns; parallel programs; shared-memory multiprocessors; simulations; Broadcasting; Data structures; Electronic mail; Explosions; Kernel; Large-scale systems; Pattern analysis; Protocols;
fLanguage
English
Journal_Title
Computers, IEEE Transactions on
Publisher
ieee
ISSN
0018-9340
Type
jour
DOI
10.1109/12.256449
Filename
256449
Link To Document