Netlib and NA-Net: Building a Scientific Computing Community Jack Dongarra Gene H
Total Page:16
File Type:pdf, Size:1020Kb
Netlib and NA-Net: Building A Scientific Computing Community Jack Dongarra Gene H. Golub Eric Grosse Cleve Moler More IEEE Annals of the History of Computing, Volume 30, Number 2, April-June 2008, pp. 30-41 (Article) Published by IEEE Computer Society For additional information about this article http://muse.jhu.edu/journals/ahc/summary/v030/30.2.dongarra.html Access Provided by University of Tennessee @ Knoxville at 06/21/11 2:06PM GMT Netlib and NA-Net: Building A Scientific Computing Community Jack Dongarra University of Tennessee, ORNL, and University of Manchester Gene H. Golub (Deceased 16 November 2007) Eric Grosse Google Cleve Moler MathWorks Keith Moore University of Tennessee Two resources evolved in the early 1980s to serve the needs of the scientific computing community. These resources were Netlib, a software repository that facilitated distribution of public-domain software, and NA-Net, a file of analysts’ contact information that eventually supported an online directory and newsletter digest. The authors who created Netlib and NA-Net explain the history of these resources and their continuing impact. With today’s effortless access to open developed resources filling different func- source software and data via a high-speed tions but which were both aimed at serving Internet and responsive search engines, it is the scientific computing community. These hard to remember just how different the life resources, still active today, were Netlib and of computational scientists was in the 1970s NA-Net. and early 1980s. At the time, computing Netlib repositories—collections of mathe- largely took place in a mainframe world, matical software, papers, and databases—were typically supported by one of the few initially established in 1984 by Eric Grosse at commercial numerical libraries installed by Bell Labs and Jack Dongarra at Argonne computer center staff. Since this situation National Laboratory. Based on a suggestion was imperfect (the existing software did not from Gene Golub to build a repository of solve all of scientific computing’s needs), research software, Dongarra and Grosse de- scientists were forced to write or borrow signed the first Netlib repository. Each repos- additional software. There were a few exem- itory made a collection of high-quality math- plary libraries such as EISPACK in circulation, ematical software available via electronic and a larger body of Fortran programs of mail—the Bell Labs server provided access via variable quality. Obtaining them was a uucp (Unix to Unix CoPy) protocols, while the bothersome process, however, that involved Argonne server made the collection accessible leveraging personal contacts, government via IP (Internet Protocol). The Netlib collection bureaucracies, negotiated legal agreements, quickly spread to mirror servers around the and the expensive and unreliable shipping of world. As the Internet became ubiquitous, 9-track magnetic tapes or punch card decks. other access methods were added. Although There had to be a better way. That better way the electronic mail interface is still supported, manifested itself as two different, separately most access today is via the World Wide Web. 30 IEEE Annals of the History of Computing Published by the IEEE Computer Society 1058-6180/08/$25.00 G 2008 IEEE Prior to Netlib (short for ‘‘network library’’), message consisting of the text ‘‘send dqag software codes had been shared by interest from quadpack’’ sent to either research!netlib groups such as SHARE since the mid-1950s, but (uucp)ornetlib@anl-mcs (Internet) would such groups tended to be limited by member- result in a reply consisting of the ‘‘dqag’’ ship or personal relationships. By widening subroutine from the ‘‘quadpack’’ package, the distribution of public-domain numerical along with any additional routines needed to software, Netlib gave greater leverage to early use that subroutine. open source efforts and helped establish the At the time Netlib was introduced, public- trend of software distribution via the network. domain software was chiefly distributed by Netlib remains popular today. physical media such as magnetic tapes being In a separate development that was also sent through the postal service. This was aimed at the scientific computing communi- difficult not only because of the time and ty, by the time Netlib was established, an ‘‘na expense involved with handling physical list’’ (na for ‘‘numerical analysis’’) of email media, but also because of the lack of any addresses had already been maintained for widely used standards for writing magnetic several years by Gene Golub, then chair of the tapes. Each computing platform wrote tapes Computer Science Department at Stanford in its native format; and because of differ- University. By 1983, this list was being used to ences in word size, record size, and organi- provide an electronic mail forwarding service zation of the data on tape, reading foreign to numerical analysis specialists. Mail to na. tapes could be quite difficult and labor lastname@su-score would be forwarded to the intensive. Fortran programs were formatted list member with that last name. An email with sequence numbers in columns 73–80 broadcast facility was also provided: mail sent and blank fill, which was painfully ineffi- to na@su-score would be forwarded to every- cient in days of dial-up lines before compres- one on the list. By February 1987, this sion was prevalent. broadcast facility had evolved into a moder- Of course, the Arpanet had been in exis- ated email digest, which soon became a tence for several years by that time, and weekly electronic newsletter. A ‘‘white pages’’ software was commonly shared over the database and a World Wide Web interface Arpanet’s File Transfer Protocol (FTP), but the were eventually added, resulting in the set of Arpanet served a limited community, and the services provided by NA-Net today. The NA- Internet protocols adopted by the limited- Net remains a widely used and valuable commercial-use Arpanet in 1981 were only resource for the numerical analysis commu- beginning to see wider use. Software could also nity. The NA-Digest is one of the oldest be uploaded to or downloaded from ‘‘bulletin electronic periodicals, and its popularity board systems’’ or BBSs, but this could entail continues to grow. significant long-distance telephone charges to In this article, which describes the early peruse distant servers. A picture of the techni- history of these two resources and the ratio- cal environment of the early Internet, uucp, nale behind the system architectures chosen, Bitnet, and separate systems like AOL with we assess what parts worked well and which gateway size limits due to dial-up and restart- did not. from-beginning error recovery has been docu- mented elsewhere.1,2 Netlib By contrast, Arpanet electronic mail sys- The concept behind Netlib was to facili- tems standardized very early on a common tate quick, easy, and efficient on-demand message format to be used across all platforms, access to useful public-domain computation- and uucp mail used a similar format. Bitnet had al software of interest to the scientific some different conventions, but adequate computing community. The mechanism gateways existed. Costs of email were absorbed chosen for distribution of this software was into budget overheads, so experimental use electronic mail. Initially, there were two could flourish without formalities. Collective- repositories: one at Bell Labs and the other ly, these conditions made electronic mail a at Argonne National Laboratory. The Bell superior medium for the exchange of source Labs server provided access via uucp proto- code, at least for small files, and Netlib made cols, while the Argonne server made the effective use of it. Unknown to us at the time, collection accessible via Internet mail. To silicon chip designs were being sent off for request files from either server, a user would fabrication by email in a service known as send one or more commands as message text MOSIS (Metal Oxide Semiconductor Imple- to that server’s email address. For instance, a mentation Service).3 Another early informa- April–June 2008 31 Netlib and NA-Net: Building A Scientific Computing Community Definition of Terms AMS—The American Mathematical Society (AMS) is creation of user interfaces, and interfacing with pro- an association of professional mathematicians dedicated grams in other languages. to the interests of mathematical research and scholar- MOSIS—MOSIS (Metal Oxide Semiconductor Im- ship through various publications and conferences. plementation Service) is probably the oldest (1981) BLAS—Basic Linear Algebra Subprograms (BLAS) are integrated circuit (IC) foundry service and one of the standardized application programming interfaces for first Internet services other than supercomputing subroutines to perform basic linear algebra operations services and basic infrastructure such as email or FTP. such as vector and matrix multiplication. MINPACK—A library of Fortran subroutines for the EISPACK—A software library for numerical computa- solving of systems of nonlinear equations, or the least- tion of eigenvalues and eigenvectors of matrices, squares minimization of the residual of a set of linear or written in Fortran. nonlinear equations. FNLIB—Portable special function routines (e.g., Bessel NAG—NAG Numerical Libraries is a software prod- functions, the error function, and so on). uct sold by The Numerical Algorithms Group Ltd IMSL—The IMSL (International Mathematics and (originally the Nottingham