2002 · 37 citations · 26 references
EngineeringComputer EngineeringComputer ScienceComputer ArchitectureParallel ComputingSystem-on-chip DesignHardware AccelerationMemory Hierarchy OptimizationMulticore Processor DesignParallel ArchitecturesShared-memory ParallelismSpeculative ExecutionCache PrefetchingCache SharingChip MultiprocessingData PrefetchingMultithreading MicroarchitecturePrefetching MechanismsSpeculative MultithreadingSpeculative Prefetching
Previous work on speculative precomputation (SP) on simultaneous multithreaded (SMT) architectures has shown significant benefits. The SP techniques improve singlethreaded program performance by utilizing otherwise idle thread contexts to run “helper threads”, which prefetch critical data into shared caches and reduce the time the “main thread ” stalls waiting for long latency outstanding loads. This technique effectively exploits the parallel thread contexts and the data cache sharing at all levels of the memory hierarchy that SMT provides. Chip multiprocessor (CMP) architectures also feature parallel thread contexts, but do not share caches near execution resources. In this paper, we first investigate SP on a basic CMP and show that while the existing SP techniques can provide performance improvements for single-threaded application on such CMP architectures, they fall short of the benefits provided on SMT architectures due to the reduced degree of cache sharing. We then propose and evaluate several simple enhancements to the basic CMP architecture, which can increase the speedup from using SP by an additional 10 to 12%. 1.
26
Dean M. Tullsen, Susan J. Eggers, Henry M. Levy · 1995 · 1.4K citations · Full text
Gurindar S. Sohi, Scott E. Breach, T. N. Vijaykumar · 1995 · 978 citations
The case for a single-chip multiprocessor
Kunle Olukotun, Basem A. Nayfeh, Lance Hammond et al. · 1996 · 703 citations · Full text
Luiz André Barroso, Kourosh Gharachorloo, Robert McNamara et al. · 2000 · 520 citations · Full text