BROADWAY: A SOFTWARE ARCHITECTURE FOR SCIENTIFIC COMPUTING - PowerPoint PPT Presentation

About This Presentation
Title:

BROADWAY: A SOFTWARE ARCHITECTURE FOR SCIENTIFIC COMPUTING

Description:

Broadway Compiler. Performance problems caused ... Broadway compiler can specialize library routines in ways that the library ... BROADWAY AS A META INTERFACE ... – PowerPoint PPT presentation

Number of Views:41
Avg rating:3.0/5.0
Slides: 11
Provided by: susanfr8
Learn more at: https://cseweb.ucsd.edu
Category:

less

Transcript and Presenter's Notes

Title: BROADWAY: A SOFTWARE ARCHITECTURE FOR SCIENTIFIC COMPUTING


1
BROADWAY A SOFTWARE ARCHITECTURE FOR SCIENTIFIC
COMPUTING
  • Samuel Z. Guyer and Calvin Lin
  • The University of Texas

2
MOTIVATION
  • Efficient runtime algorithms and efficient memory
    usage are critical
  • Temps programmers to emphasize performance over
    clarity
  • Often complicates long term maintenance and
    portability of scientific code.
  • Practitioners of scientific computing are
    typically unwilling to try novel languages or use
    sophisticated design methodologies
  • Deep knowledge of scientific domain is required

3
BROADWAY COMPILER SYSTEM ARCHITECTURE
Library
Annotations
Header flies
Source Code
Integrated and optimized code
Broadway Compiler
Application Source code
4
Performance problems caused by use of software
libraries
  • Different clients have different needs
  • Separation of concerns inhibits information
    flow across interfaces
  • Worst case assumptions provide generality at the
    expense of performance
  • Modular structure leads to poor resource
    management
  • No performance portability
  • Premature optimization complicates maintenance
  • Interface bloat defeats modularity

5
LIBRARY LEVEL OPITIMIZATIONS
  • Replace general purpose routines with customized
    routines that run much faster.
  • Can make stronger assumptions about calling
    context, allowing for more efficient execution
  • Avoid interface bloat
  • Use of annotated language to describe domain
    specific information
  • Optimization requires application programmer to
    have little knowledge of library
  • Broadway compiler can specialize library routines
    in ways that the library designer did not foresee.

6
BROADWAY AS A META INTERFACE
  • Use of black boxes leads to performance problems
  • Implementation and interface that black boxes
    provide will inevitably be inappropriate for some
    client

Application
Base Interface
Black Box
7
BROADWAY AS A META INTERFACE
  • Solution provide 2 interfaces, a base, which
    most clients use, and a separate meta interface,
    which allows the black box to adapt to the needs
    of different clients

Application
Base Interface
Black Box
Meta- Interface
Meta- Program
8
Experimental Results
Benefit of Automated Approach
Tedious transformations can be applied uniformly
and completely!
9
Conclusion
  • Provided mechanism for improving performance
  • Create different library implementations and
    interfaces for different clients
  • Conveys library-specific information to the
    compiler and use this information to customize
    the library for different users.
  • Replaces invocations of general routines with
    invocations of specialized routines, thereby
    relaxing worst case assumptions.
  • Improves the maintenance and portability of
    applications
  • Enhances the value of legacy codes
  • Provides clean division of labor

10
Discussion
  • What are the possible downfalls?
  • Meta-Object Protocols
  • Provide mechanism to change the way a language is
    compiled.
  • Future optimizations?
Write a Comment
User Comments (0)
About PowerShow.com