[Colloquium] Reminder: Wednesday's talk by Paolo Bientinesi

Margery Ishmael marge at cs.uchicago.edu
Tue Feb 27 16:28:02 CST 2007


DEPARTMENT OF COMPUTER SCIENCE - TALK REMINDER

Date: Wednesday, February 28, 2007
Time: 2:30 p.m.
Place: Ryerson 251 (1100 E. 58th St.)

-------------------------------------------

Speaker: PAOLO BIENTINESI, Research Associate, Duke University

Web page: http://www.cs.utexas.edu/users/pauldj/

Title: Can Computers Develop Libraries? A Different Perspective on  
Scientific
Computing.

Abstract:

Changes in computer architecture have always impacted scientific  
computing.
Not only new architectures supply ever improving performance, but the  
design
and implementation of algorithms is also affected by parameters like  
memory
hierarchy, parallelism, bandwidth. On one hand, in order to reach
near-optimal performance, programs need to be optimized for any  
combination
of these parameters. On the other hand, given the vast range of  
architectures
for scientific computing (clusters, SMPs, multi-core, Cell, GPUs,
FPGAs, ...), it is unreasonable to believe that one single algorithm  
can be
optimal across the entire spectrum. Consequently, the development of  
high
performance libraries remains challenging.

As part of the Formal Linear Algebra Method Environment (FLAME)  
project at
UT-Austin, we posed the question "what would it take to design a  
mechanical
system that accepts a mathematical operation as input and returns  
correct
algorithms as well as code optimized for a target architecture?". Our
question is radically different from that of how to automatically  
optimize a
given algorithm for a target architecture. Specifically, in our  
setting the
input is a mathematical problem and not a known algorithm. In  
addition, not
only do we demand performance, but we expect correctness as well.

In this talk I show how we approached the problem with classical  
tools from
computer science (Hoare triples, loop-invariants). While mechanical
generation of efficient and numerically stable algorithms for arbitrary
computations problems remains very challenging, FLAME is a success for a
class of problems which includes many linear algebra computations.
Particularly, given a mathematical specification of a target problem,  
our
methodology generates loop-based algorithms that are provably correct.
Discovering how to systematically identify loop-invariants a-priori  
was a key
step: once a loop-invariant is known, a corresponding provably correct
loop-based algorithm can be derived. This enables us to create  
families of
algorithms so that the most appropriate one, in terms of efficiency or
numerical stability, can be chosen for a given situation and  
architecture.

The ultimate goal is to produce a system that takes as input a  
mathematical
description of a linear algebra operation and from this mechanically  
produces
high-performance routines together with performance and possibly even
stability analyses. In this talk I discuss our results that provide  
evidence
that this vision is within reach. Finally, I also briefly introduce  
other
research projects to which I contribute and relate them to each other  
and to
the main topic of the talk. These projects include the development of a
parallel tridiagonal eigensolver, the computation of the Earth's gravity
field, a new direct sparse solver for highly adaptive FEM  
applications, and
the accurate computation of prolate functions.

***The talk will be followed by refreshments in Ryerson 255***

-------------------------------------------------------

Host:  Ridgway Scott
People in need of assistance should call 773-834-8977 in advance.

For information on future CS talks: http://www.cs.uchicago.edu/events

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.cs.uchicago.edu/pipermail/colloquium/attachments/20070227/782b50ad/attachment-0001.htm


More information about the Colloquium mailing list