\documentstyle[twocolumn]{article} \title{Netlib news: big files} \author{Eric Grosse}{} \begin{document}\maketitle {\sloppy In the early days of netlib, most files were of modest size. A typical request, say for the ``real symmetric'' driver from eispack, produced a reply of 30 kilobytes or less. The occasional Fortran program of more than 100 kilobytes was split arbitrarily into pieces for mailing; these had to be glued back together by the recipient. Now the collection includes large differential equation and optimization codes, packages written in C where specific filenames matter, and large bibliographies. A variety of mail size limits are appearing in the network. The use of Unix ``shell archives'' for transferring collections of files has become widely understood and accepted. In light of all this, it is clearly time for netlib to adapt. This column announces three changes for dealing with the problem of big files: ftp, revised mail splitting, and user-specified mail limits. We allow ftp access to a copy of the netlib files. Ftp is a file transfer protocol widely available on machines connected to the Internet. Using whatever syntax is appropriate for your local system, connect to research.att.com (also called 192.20.225.2) and login using the name ``netlib''. You'll be asked for your email address, so that we can keep an accurate log of activity and send you bug fixes if, heavens forfend, serious problems should be uncovered. Set ``binary'' mode, if your version of ftp doesn't do that automatically. Then use the ``dir'', ``cd'', and ``get'' or ``mget'' commands to retrieve desired files. Many have a ``.Z'' suffix indicating that they need to be uncompressed after the transfer. If this all sounds too difficult or confusing, just stick to email. Netlib now uses a new mechanism for splitting up its reply into multiple mail messages. The messages you will now receive are a shell archives, scripts to be executed using the Unix ``sh'' command. (People on other operating systems will have to edit manually.) After executing each message, in arbitrary order, the netlib files will be recreated on your system with their original names. In the case of files too big to send in a single message, this is done by sending temporary partial files; each script checks to see if all the partial files have arrived and, if so, assembles them into the original big file. But you don't need to worry about that; it is all automatic. In some cases, an author's contribution to netlib is already in the form of a shell archive. So whether you get it by ftp or by executing mail messages, you still need to execute the file another time to do the final unpacking. Yes, recursion can be confusing. By default, netlib splits its reply into messages of at most 100 kilobytes. This satisfies most machines on the Internet. To change the limit to, say, 20 kilobytes, you can give netlib the command ``mailsize 20k''. Initially these changes are installed only at research.att.com, so that I can respond to suggestions for improvements. Assuming the new mail splitting meets with general approval, it will be installed on the other netlib nodes. As an alternative to ftp, Jack Dongarra will soon be releasing an X-windows interface, which will allow downloading files from netlib@ornl.gov. A final word regarding big files: if your mail connection to netlib still depends somewhere along the path on dialup links, be sure you don't abuse someone else's hospitality, lest your service be cut off. \section*{Recent additions} PCON61 (the latest version of Rheinboldt and Burkardt's well-known program for continuation) has been installed. ``Program options include the ability to search for solutions for which a given component has a specified value. Another option is a search for a limit or turning point with respect to a given component.'' In the {\bf opt} library, you will find Toint's {\bf ve08ad}, a subroutine which minimizes a partially separable objective function with optional bound constraints. Though the code is unchanged, the recent appearance of Total Least Squares in SIAM's Frontiers book series merits notice. For details, ``send index for {\bf vanhuffel}''. {\bf Confpack}, by Gutknecht and Hough, implements conformal mapping by numerical solution of Symm's integral equation. ``send index for conformal.'' Gerard Holzman's {\bf spin} package for protocol validation is out of the customary (scientific computing) scope of netlib but should interest people in distributed computing. The {\bf pvm} library has been installed. From the abstract: ``PVM stands for Parallel Virtual Machine. It is a software package that allows the utilization of a heterogeneous network of parallel and serial computers as a single computational resource. PVM consists of two parts: a daemon process that any user can install on a machine, and a user library that contains routines for initiating processes on other machines, for communicating between processes, and synchronizing processes.'' TOMS algorithms 685 (separable elliptic PDEs) and 686 (updating QR factorizations) arrived in February. F2c, cheney-kincaid, kincaid-cheney, dassl, gcv, a/loess, fn/alngam, fn/ci, misc/netlib, picl, pltmg, port/linpar, and numerous other files have been updated. In general, if you're wondering whether a file has been added in a particular directory or whether it has been modified recently, you can try a request like ``send directory from eispack''. That file is automatically recreated nightly, and hence tells the truth even when the netlib administrator is too busy to keep the ``index'' and ``changes'' files up to date. {\em If you're new to netlib, send e-mail containing the line ``help'' to one of the Internet addresses \begin{verbatim} netlib@research.att.com netlib@ornl.gov netlib@nac.no netlib@draci.cs.uow.edu.au \end{verbatim} or uucp address {\tt uunet!research!netlib}. A few minutes later, assuming you have speedy mail connections, you will receive information on how to use netlib and an overview of the many mathematical software libraries and databases in the collection.} {\em Eric Grosse can be reached at the Computing Science Research Center, AT\&T Bell Laboratories, Murray Hill NJ 07974, USA or by email at {\tt ehg@research.att.com}. Unix is a registered trademark of AT\&T Bell Laboratories. This column was written August 24, 1991.} }% end sloppy \end{document}