Architecture of Scalable Libraries
Michael Hearn Illinois
Hearn Presentation -- Questions
* Usability -- Must Hide Complexity
* Software Development costs time ...
- Immature Computing Environment
- Moving Targets
- Lack of standards
- Complexity
* Portability
- No standard or dominant parallel architecture
- Programming Investment not protected
Hearn -- Answers to problems
- more BLAS?
- Object Oriented?
- PSE's ?
Grimes -- Background
* Manages Mathematical software group in Boeing
* Hired by Sinjovec while he was at Boeing
* BCSLIB is Boeing's IMSL
* Supports sparse matrix library at Boeing
Grimes -- Why is Library/PSE succesful
* Solves a problem that somebody wants
* Useful Interfaces
* Transportable -- must run on 10 platforms from mainframe to many types of WS/PC's
* Affordable sustaining costs
* Can be extended/modified easily
* efficient
* solves as big a problem as possible
Sinjovec
* Scalable libraries are building blocks
* Multimedia Interface
* Geographically distributed
* Likes WWW and suggests need software tools to exploit
* Paradigm shift from homogeneous MPP to metacomputing
* PSE is everything available on network
Sinjovec
Object-Oriented Approach
* Abstract Data types(ADT)
- ADA Modula2 find programs easier to write/re-use
* Interfaces are independent of implementation whereas
- subroutine libraries require user to understand data structures and algorithms
* Parallel Programming
- encapsulate parallelism in coarse grain objects
Sinjovec Briefing I
* Has example of ADA to Fortran linking where needed to use packages to hide Fortran data structures
* Standards for parallel objects are needed
- HPF has started this
* Tools that enhance re-use such as CORBA/OLE are needded but these are sequential
Sinjovec Briefing II
* Interested in secure repositories -- don't keep bringing software over net
- compute servers
* Is an ADA fan
* Has a set of language object oriented features
* need heirarchy of object-oriented abstractions -- ADT's
Skjellum Briefing
* Skjellum agrees with Sinjovec
- Software engineering should be studied and used
* Standard components are not used now!
* Inheritance is a limited value
* hierarchies produce inefficiences as a lot of copying
Questions from the Audience--I
* Hearn -- can one achieve these wonderful software engineering goals?
* Abstraction can lead to higher performance (as allows optimal implementation) or lower performance if too much copying
* Must make libraries allow any decomposition
* Can one cope with changing decompositions between library components
* Don't answer question if realistic to implement!
Questions from the Audience - II
* PBLAS attacked as incomplete by Johnsson and Skjellum
- Need multiple simultaneous problems
- separate operations and data/data layout
* Smith has an approach that seems inconsistent with HPF and does not accept people with a different approach.
* Grimes and Smith use C plus MPI as only transportable solution
Questions from the Audience -III
* Skjellum does not believe in HPF - says C++ will dominate
* Demmel is concerned about portability of numbers between different platforms
- algorithms need to be robust in this area!
- Hearn notes that no two computers agree on the time
* Rice notes no correctness proof is realistic in any real problem