Telescoping Languages - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

Telescoping Languages

Description:

9/21/09. Telescoping Languages. Bradley Broom, Ken Kennedy et al. Rice University. This presentation will probably involve audience discussion, which will create ... – PowerPoint PPT presentation

Number of Views:25
Avg rating:3.0/5.0
Slides: 13
Provided by: diana81
Category:

less

Transcript and Presenter's Notes

Title: Telescoping Languages


1
Telescoping Languages
  • This presentation will probably involve audience
    discussion, which will create action items. Use
    PowerPoint to keep track of these action items
    during your presentation
  • In Slide Show, click on the right mouse button
  • Select Meeting Minder
  • Select the Action Items tab
  • Type in action items as they come up
  • Click OK to dismiss this box
  • This will automatically create an Action Item
    slide at the end of your presentation with your
    points entered.
  • Bradley Broom, Ken Kennedy et al.
  • Rice University

2
The problem?
  • Getting high performance on modern computer
    architectures requires
  • lots of programming
  • machine specific tuning
  • Not enough programmers with the necessary skills.
  • Would still like faster development.

3
The Solution
  • Lines of code per day per programmer essentially
    constant.
  • Use more productive languages.
  • Domain specific languages
  • COBOL vs. SQL
  • User interface generators
  • Network protocol stub generators
  • lex/yacc scanner parser generators

4
Languages for niche domains
  • Small community of interest cant justify major
    language development.
  • A domain-specific library in effect defines a new
    language.
  • Two ways to support new syntax
  • interpretation
  • compilation via simple rewriting.

5
Problem with libraries
  • Very high-level routines can be inefficient
  • For instance calling two routines that each
    touch all elements of an array.
  • Poor memory hierarchy utilization.
  • A number of other implementations may only need a
    single pass over the array.
  • Providing a large number of variants for each
    routine is not the answer.

6
Compiler Optimization
  • Whole program optimization might possibly
    generate efficient code.
  • But much too slow
  • Depends on size of whole program, including all
    the libraries.
  • Still doesnt incorporate expert knowledge about
    the problem domain.
  • Use of specialized algorithms if special
    properties apply (e.g. two matrices are both
    upper-triangular).

7
Telescoping Languages
  • Give compiler ability to optimize library calls
    just like primitive operations.
  • Properties of library calls,
  • Relationships between variants of library
    operations,
  • Program transformations likely to improve
    performance.
  • Do this in a generic way, just once.

8
TeleGen
  • Telescoping Optimizer Generator
  • Inputs
  • Library source
  • Annotations
  • (by library developer or other expert)
  • Outputs
  • Augmented library source
  • compiled by vendor compiler
  • contains generated library variants
  • Library aware optimizer

9
Manual Studies
  • KeLPIO
  • Signal-processing in Matlab
  • Matlab library optimizer
  • Signal processing library optimizer.
  • Generation of Fortran library from Matlab master
    source.

10
Hand Studies continued
  • Biostatistical modeling in S-Plus
  • Code used in modeling cancer trials
  • Developed in S-Plus
  • Rewritten in C/Fortran to evaluate properties via
    simulation.
  • A factor of 250 improvement by generic S-Plus
    library optimization.
  • A further factor of 90 if domain specific array
    properties are known.

11
Under development at Rice
  • Matlab / KeLPIO specific optimizers.
  • Generic Fortran infrastructure
  • Parser based on SGI Open64 compiler.
  • Analysis based components in Rice dHPF compiler.
  • New annotation language.
  • New telescoping language generator.

12
Could you use Telescoping Languages?
  • Bradley Broom ltbroom_at_rice.edugt
Write a Comment
User Comments (0)
About PowerShow.com