An efficient way to filter out data dependences with a sufficiently large distance between memory references

  • Authors:
  • Patricio Bulić;Veselko Guštin

  • Affiliations:
  • University of Ljubljana;University of Ljubljana

  • Venue:
  • ACM SIGPLAN Notices
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

There are a number of data dependence tests that have been proposed in the literature. The most widely used approximate data dependence tests are the Banerjee inequality and the GCD test. In this paper we consider parallelization for microprocessors with the multimedia extensions. For the short SIMD parallelism extraction it is essential that, if dependency exists, then the distance between memory references is greater than or equal to the number of data processed in the SIMD register. This implies that some loops that could not be vectorized on traditional vector processors can still be parallelized for the short SIMD execution. In this paper we present an accurate and simple method that can filter out data dependences with a sufficiently large distance between memory references for linear array references within a nested loop. The presented method is suitable for use in a dependence analyzer that is organized as a series of tests, progressively increasing in accuracy, as a replacement for the GCD or Banerjee tests.