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