The Hierarchically Tiled Arrays programming approach

  • Authors:
  • Basilio B. Fraguela;Jia Guo;Ganesh Bikshandi;María J. Garzarán;Gheorghe Almási;José Moreira;David Padua

  • Affiliations:
  • Universidade da Coruña, Spain;U. of Illinois at Urbana-Champaign;U. of Illinois at Urbana-Champaign;U. of Illinois at Urbana-Champaign;IBM Thomas J. Watson Research Center, Yorktown Heights, NY;IBM Thomas J. Watson Research Center, Yorktown Heights, NY;U. of Illinois at Urbana-Champaign

  • Venue:
  • LCR '04 Proceedings of the 7th workshop on Workshop on languages, compilers, and run-time support for scalable systems
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper, we show our initial experience with a class of objects, called Hierarchically Tiled Arrays (HTAs), that encapsulate parallelism. HTAs allow the construction of single-threaded parallel programs where a master process distributes tasks to be executed by a collection of servers holding the components (tiles) of the HTAs. The tiled and recursive nature of HTAs facilitates the adaptation of the programs that use them to varying machine configurations, and eases the mapping of data and tasks to parallel computers with a hierarchical organization. We have implemented HTAs as a MATLAB™ toolbox, overloading conventional operators and array functions such that HTA operations appear to the programmer as extensions of MATLAB™. Our experiments show that the resulting environment is ideal for the prototyping of parallel algorithms and greatly improves the ease of development of parallel programs while providing reasonable performance.