Principal Investigator: Ken Kennedy
Project Technical Contact: Rob Fowler
Other Participants: John Mellor-Crummey , Guohua Jin , Richard Hanson.
Paul Woodward ( LCSE/UMN) Mellor-Crummey, and Fowler discussing automatic
optimization strategies.
Finding the usual workstation desktop to be overly constraining,
John and Paul spread their code across LCSE's PowerWall.
In FY02, the Rice team will continue and expand the collaboration
with Woodward and Wilhelmson on the NCOMMAS weather code and extend this
effort as an “expedition” by both automating some of the analyses and transformations
and by combining a prototype “backfilled time-skewing” transformation with
the LCSE SHMOD/SHMON library. This is expected to
improve the performance of the latter at all scales and lower the minimum
problem size for which the techniques are profitable.
In the longer term, the enabling technologies must be successfully transferred to other application groups. The Rice team will continue to improve on their recently released HPCView tool by porting it to new platforms and reimplementing it as a stand alone Java application to both decrease the size of data sets it uses and increase its online analytic power. New versions of HPCView and related tools will be released and deployed within the Alliance as they are ready.
To (at least partially) automate the optimization techniques used in
large scalable programs such as PPM (directionally-split operations, aggressive
techniques for aligning and fusing loops, replacing full size temporary
arrays with smaller arrays, and scalarization to move temporaries into
registers) requires industrial strength compiler tools. By the end of FY01,
we will have completed our basic infrastructure for such tools based on
the SGI IA-64 compiler. In FY02, this infrastructure will be
used in our efforts with the NCOMMAS project to both implement aggressive
transformations that are too difficult to do manually in a
maintainable way. These tools will be transferred to other application
teams and made available for general use.
Compiler Infrastructure (Link to be added.)
Code Transformation (Link to be added.)