This paper introduces an analytical model that enables automatic estimation of the cache performance for both sequential and data parallel Fortran programs, The estimation is based on a classification of array accesses with respect to cache reuse at the soruce code level. An estimated upper bound of the number of distinct cache lines accessed inside of a loop is statically computed. Based on this estimate the number of cache misses for loops, procedures and the entire program can be predicted.
展开▼