Exposing Data-Level Parallelism in Sequential Image Processing Algorithms

  • Authors:
  • L. Baumstark Jr;L. Wills

  • Affiliations:
  • -;-

  • Venue:
  • WCRE '02 Proceedings of the Ninth Working Conference on Reverse Engineering (WCRE'02)
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

As new computer architectures are developed toexploit large-scale data-level parallelism, techniques areneeded to retarget legacy sequential code to theseplatforms. Sequential programming languages forceprogrammers to include sequential artifacts in theircode, particularly with respect to how the source codeexpresses data references (generally assuming a linearaddress space). In contrast, data-parallel programsapply many operations in parallel to elements in two-dimensionaldata sets, and a given data paralleloperation can access other spatially local elements alongeither dimension. Of key importance in exposing dataparallelism is determining these two-dimensional datadependencies among elements of a matrix. This paperpresents a reverse engineering technique for identifyingsuch dependencies in sequential image processing code,using pattern matching on an attributed dataflowrepresentation of the program. The technique is appliedto common image filtering algorithms. The technique isvalidated by retargeting to a Matlab program andmatching the results against those of the original source.