Show simple item record

Compiler Optimizations for Eliminating Cache Conflict Misses

dc.contributor.authorRivera, Gabrielen_US
dc.contributor.authorTseng, Chau-Wenen_US
dc.description.abstractLimited set-associativity in hardware caches can cause conflict misses when multiple data items map to the same cache locations. Conflict misses have been found to be a significant source of poor cache performance in scientific programs, particularly within loop nests. We present two compiler transformations to eliminate conflict misses: 1) modifying variable base addresses, 2) padding inner array dimensions. Unlike compiler transformations that restructure the computation performed by the program, these two techniques modify its data layout. Using cache simulations of a selection of kernels and benchmark programs, we show these compiler transformations can eliminate conflict misses for applications with regular memory access patterns. Cache miss rates for a 16K, direct-mapped cache are reduced by 35% on average for each program. For some programs, execution times on a DEC Alpha can be improved up to 60%. (Also cross-referenced as UMIACS-TR-97-59)en_US
dc.format.extent280209 bytes
dc.relation.ispartofseriesUM Computer Science Department; CS-TR-3819en_US
dc.relation.ispartofseriesUMIACS; UMIACS-TR-97-59en_US
dc.titleCompiler Optimizations for Eliminating Cache Conflict Missesen_US
dc.typeTechnical Reporten_US
dc.relation.isAvailableAtDigital Repository at the University of Marylanden_US
dc.relation.isAvailableAtUniversity of Maryland (College Park, Md.)en_US
dc.relation.isAvailableAtTech Reports in Computer Science and Engineeringen_US
dc.relation.isAvailableAtUMIACS Technical Reportsen_US

Files in this item


This item appears in the following Collection(s)

Show simple item record