UCLA COMSCI 239 - Automatic Support for Irregular Computations in a High-Level Language (10 pages)

Previewing pages 1, 2, 3 of 10 page document View the full content.
View Full Document

Automatic Support for Irregular Computations in a High-Level Language



Previewing pages 1, 2, 3 of actual document.

View the full content.
View Full Document
View Full Document

Automatic Support for Irregular Computations in a High-Level Language

88 views

Other


Pages:
10
School:
University of California, Los Angeles
Course:
Comsci 239 - Current Topics in Computer Science: Programming Languages and Systems

Unformatted text preview:

Automatic Support for Irregular Computations in a High Level Language Jimmy Su and Katherine Yelick Computer Science Division University of California at Berkeley jimmysu yelick cs berkeley edu Abstract The problem of writing high performance parallel applications becomes even more challenging when irregular sparse or adaptive methods are employed In this paper we introduce compiler and runtime support for programs with indirect array accesses into Titanium a high level language that combines an explicit SPMD parallelism model with implicit communication through a global shared address space By combining the well known inspectorexecutor technique with high level multi dimensional array constructs compiler analysis and performance modeling we demonstrate optimizations that are entirely hidden from the programmer The global address space makes the programs easier to write than in message passing with remote array accesses used in place of explicit messages with data packing and unpacking The programs are also faster than message passing programs Using sparse matrixvector multiplication programs we show that the Titanium code is an average of 21 faster across several matrices and machines with the best case speedup more than a factor of 2x The performance advantages are due to both the lightweight RDMA Remote Direct Memory Access communication model that underlies the Titanium implementation and automatic optimization selection that adapts the communication to the machine and workload in some cases using different communication models for different processors within a single computation 1 Introduction Application scientists increasingly employ irregular data structures such as unstructured grids particle mesh structures adaptive meshes and sparse matrices in an effort to obtain more computationally efficient methods These methods are not well supported by popular high performance programming models because they lead to indirect array accesses pointer based data



View Full Document

Access the best Study Guides, Lecture Notes and Practice Exams

Loading Unlocking...
Login

Join to view Automatic Support for Irregular Computations in a High-Level Language and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Automatic Support for Irregular Computations in a High-Level Language and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?