2004 · 83 citations · 27 references
ComputingComputer EngineeringComputer ScienceComputer ArchitectureParallel ComputingSchedulingCachingParallel ComputationParallel Computer ArchitectureParallel Performance AnalysisShared-memory MultiprocessingShared-memory ParallelismCache DesignCache LocalityCache Performance ModelingCache-aware SchedulingCritical Path SchedulingIdeal Cache ModelParallel SchedulingShared Cache Design
We compare the number of cache misses M1 for running a computation on a single processor with cache size C1 to the total number of misses Mp for the same computation when using p processors or threads and a shared cache of size Cp . We show that for any computation, and with an appropriate (greedy) parallel schedule, if Cp C1 + pd then Mp M1 . The depth d of the computation is the length of the critical path of dependences. This gives the perhaps surprising result that for sufficiently parallel computations the shared cache need only be an additive size larger than the singleprocessor cache, and gives some theoretical justification for designing machines with shared caches. We model
27
A study of replacement algorithms for a virtual-storage computer
L. A. Belady · IBM Systems Journal · 1966 · 1.7K citations
Dean M. Tullsen, Susan J. Eggers, Henry M. Levy · 1995 · 1.4K citations · Full text