skip to main content
Department of Computer Science University of Colorado Boulder
cu: home | engineering | mycuinfo | about | cu a-z | search cu | contact cu cs: about | calendar | directory | catalog | schedules | mobile | contact cs
home · events · colloquia · 2008-2009 · 

Colloquium - Gupta


Tools for High Performance Programmers
Colorado State University

We will describe and demonstrate a tool that produces optimized programs starting with specifications in "scientific notation" such as mathematical equations. Formal methods are used to check the specification for completeness and consistency, as a result, the generated code is correct-by-construction, e.g., it is guaranteed to be free of out-of-bounds accesses. Typically weeks, or a few months are spent in the performance tuning of scientific kernels exploring design choices such as memory alignments, iteration order and tile shape and size selection. We will demonstrate how our high level tool provides inexpensive design space exploration through one or two commands for program transformations. Our automation of loop fusion and fission also provides performance gains over hand-optimization (which is limited by the users' capacity for exhausting all possibilities). As a case study, we will present performance gains of using our tool over hand tuning of some stencil codes that arise in Atmospheric Science (shallow water models). We generate MPI to parallelize across "units" and seek multiple acceleration techniques such as CUDA, Cell SDK, OpenMP, etc. within a unit.

Gautam Gupta has been a student of the Polyhedral Model since 2000. He has used its mathematical foundations to show that the algorithmic complexity of multi-dimensional reductions can be automatically and optimally decreased. Later, he proposed the Z-Polyhedral Model that allows the specification of computations over Presburger sets, their mathematical closure under program transformations, equivalence and code generation. Since 2007, he is building tools for assisting parallel programmers.

This talk is sponsored by the National Center for Atmospheric Research Computational & Information Systems Laboratory and will be held in the Main Seminar Room at the Mesa Lab.

The Department holds colloquia throughout the Fall and Spring semesters. These colloquia, open to the public, are typically held on Thursday afternoons, but sometimes occur at other times as well. If you would like to receive email notification of upcoming colloquia, subscribe to our Colloquia Mailing List. If you would like to schedule a colloquium, see Colloquium Scheduling.

Sign language interpreters are available upon request. Please contact Stephanie Morris at least five days prior to the colloquium.

See also:
Department of Computer Science
College of Engineering and Applied Science
University of Colorado Boulder
Boulder, CO 80309-0430 USA
Send email to

Engineering Center Office Tower
ECOT 717
FAX +1-303-492-2844
XHTML 1.0/CSS2 ©2012 Regents of the University of Colorado
Privacy · Legal · Trademarks
May 5, 2012 (13:29)