This paper models the properties of the data object placement problem for fully associative cache. A fine placement can help to reduce cache misses. The discussed placement approach includes discovering temporal relationship in the data access trace, and packing data objects to memory blocks. The difficulty is the packing process must consider both the cache organization and irregular object sizes. Therefore, we create the graphic model of the fully associative cache. Our study finds the placement optimization problem for one-page cache is equivalent to the graph partition problem, which is a well-known NP-hard problem. It also shows there is no single universal optimal placement for all numbers of cache pages. This finding helps to derive heuristics for arranging quality data object placements that cause less cache misses for the fully associative cache. The experiment demonstrates the proposed heuristics efficiently reduce cache misses, even better than triple the cache memory size. Therefore, it helps embedded system to reduce the demand of cache memory.
[1]
David S. Johnson,et al.
Computers and Intractability: A Guide to the Theory of NP-Completeness
,
1978
.
[2]
James R. Larus,et al.
Cache-conscious structure layout
,
1999,
PLDI '99.
[3]
S. McFarling.
Program optimization for instruction caches
,
1989,
ASPLOS 1989.
[4]
Chandra Krintz,et al.
Cache-conscious data placement
,
1998,
ASPLOS VIII.
[5]
Laszlo A. Belady,et al.
A Study of Replacement Algorithms for Virtual-Storage Computer
,
1966,
IBM Syst. J..
[6]
Sri Parameswaran,et al.
REMcode: relocating embedded code for improving system efficiency
,
2004
.
[7]
Michael D. Smith,et al.
Procedure placement using temporal-ordering information
,
1999,
TOPL.
[8]
Dror Rawitz,et al.
The hardness of cache conscious data placement
,
2002,
POPL '02.
[9]
Hiroyuki Tomiyama,et al.
Code placement techniques for cache miss rate reduction
,
1997,
TODE.
[10]
Jack W. Davidson,et al.
Profile guided code positioning
,
1990,
SIGP.