Algorithmic foundations for a parallel vector access memory system

  • Authors:
  • Binu K. Mathew;Sally A. McKee;John B. Carter;Al Davis

  • Affiliations:
  • Department of Computer Science, University of Utah, Salt Lake City, UT;Department of Computer Science, University of Utah, Salt Lake City, UT;Department of Computer Science, University of Utah, Salt Lake City, UT;Department of Computer Science, University of Utah, Salt Lake City, UT

  • Venue:
  • Proceedings of the twelfth annual ACM symposium on Parallel algorithms and architectures
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents mathematical foundations for the design of a memory controller subcomponent that helps to bridge the processor/memory performance gap for applications with strided access patterns. The Parallel Vector Access (PVA) unit exploits the regularity of vectors or streams to access them efficiently in parallel on a multi-bank SDRAM memory system. The PVA unit performs scatter/gather operations so that only the elements accessed by the application are transmitted across the system bus. Vector operations are broadcast in parallel to all memory banks, each of which implements an efficient algorithm to determine which vector elements it holds. Earlier performance evaluations have demonstrated that our PVA implementation loads elements up to 32.8 times faster than a conventional memory system and 3.3 times faster than a pipelined vector unit, without hurting the performance of normal cache-line fills. Here we present the underlying PVA algorithms for both word interleaved and cache-line inter-leaved memory systems.