What Happened to EISPACK?
EISPACK is a foundational collection of Fortran subroutines developed in the early 1970s at Argonne National Laboratory for computing eigenvalues and eigenvectors of matrices. While largely superseded by more modern libraries like LAPACK due to advancements in computer architecture, it remains historically significant for its role in standardizing numerical linear algebra and influencing subsequent software development, including MATLAB.
Quick Answer
EISPACK was a pioneering software library for numerical linear algebra, specifically designed to compute eigenvalues and eigenvectors of matrices. Developed in the early 1970s, it became a standard in scientific computing. However, its design, optimized for older vector computers, became less efficient with the advent of cache-based architectures. Consequently, it was largely superseded by the LAPACK library, which offers improved performance on modern hardware. Despite being an older technology, EISPACK's algorithms and structure continue to be studied for their clarity and historical importance, and its code remains available through repositories like Netlib.
📊Key Facts
📅Complete Timeline14 events
Early Algorithms Published
Roger Martin and James Wilkinson publish algorithms for Householder's Tridiagonalization of a Symmetric Matrix in Numerische Mathematik, foundational to EISPACK.
Singular Value Decomposition Algorithm
Gene Golub and Christian Reinsch publish the Singular Value Decomposition and Least Squares Solutions algorithm, which would be included in EISPACK.
Handbook for Automatic Computation Published
The 'Handbook for Automatic Computation, Volume II, Linear Algebra, Part 2' by James Wilkinson and Christian Reinsch is published, collecting ALGOL procedures that formed the basis for EISPACK.
EISPACK Development at Argonne
EISPACK is developed at Argonne National Laboratory under the leadership of Brian T. Smith, translating ALGOL procedures into Fortran.
EISPACK Guide Publication
The 'Matrix Eigensystem Routines - EISPACK Guide' is published by Springer-Verlag, providing comprehensive documentation for the library.
Influence on MATLAB's Creation
Cleve Moler begins developing MATLAB, a matrix laboratory environment, directly influenced by the need for easier access to numerical libraries like EISPACK and LINPACK.
LINPACK Library Released
The LINPACK software library, another significant collection of Fortran subroutines for linear equations, is released, often mentioned alongside EISPACK.
LAPACK Version 1.0 Released
LAPACK (Linear Algebra Package) Version 1.0 is released, designed to supersede both EISPACK and LINPACK by offering improved efficiency on modern computer architectures.
Online Documentation Update
The University of Utah's Department of Mathematics updates its online documentation for EISPACK, highlighting its continued availability and historical context.
LAPACK Moves to Fortran 90
LAPACK, the successor to EISPACK, releases Version 3.2, which marks its transition to Fortran 90, reflecting ongoing modernization in numerical computing.
EISPACK Still Available via Netlib
Documentation confirms EISPACK's continued availability through the Netlib web site, including C, C++, and Fortran versions, primarily for historical and educational purposes.
LAPACK Latest Stable Release
LAPACK, the modern successor to EISPACK, releases its stable version 3.12.1, continuing to provide advanced numerical linear algebra routines.
LAPACK FAQ References EISPACK
The LAPACK FAQ is updated, explicitly stating that LAPACK was designed to supersede EISPACK and LINPACK, acknowledging EISPACK's foundational role.
MATLAB R2026b Released
MathWorks releases MATLAB R2026b, a direct descendant of the software environment initially inspired by libraries like EISPACK, showcasing the long-term impact of these foundational numerical tools.
Follow this story
Get an email when this timeline gets a major update.
🔍Deep Dive Analysis
EISPACK, an acronym for 'Eigenvalue System Package,' is a collection of Fortran subroutines designed to solve the eigenvalue problem for various classes of matrices, including complex general, complex Hermitian, real general, real symmetric, and real symmetric tridiagonal matrices. Its development, primarily at Argonne National Laboratory between 1972 and 1973, marked a significant step in standardizing numerical linear algebra computations. The library was based on a set of ALGOL procedures published by James H. Wilkinson and Christian Reinsch in the 'Handbook for Automatic Computation, Volume II, Linear Algebra, Part 2' in 1971.
The significance of EISPACK lay in providing a robust, tested, and freely available set of routines that became a de facto standard for eigenvalue computations in scientific and engineering applications. Key figures like Brian T. Smith, James Boyle, Jack Dongarra, and Cleve Moler were instrumental in its creation and the publication of the 'EISPACK Guide' in 1976, which served as a comprehensive user manual. This guide detailed the structure and usage of the subroutines, making complex numerical methods accessible to a wider audience. EISPACK's influence extended to the development of other crucial numerical software; for instance, Cleve Moler's creation of MATLAB in the late 1970s was directly inspired by the need to provide an easier interface to libraries like EISPACK and LINPACK for his students.
However, as computer architectures evolved from vector processors to cache-based systems, the design of EISPACK and its contemporary, LINPACK (for linear equations), became less efficient. Their memory access patterns were not optimized for the new memory hierarchies, leading to performance bottlenecks. This challenge prompted the development of a new generation of numerical libraries. The LAPACK (Linear Algebra Package) project was initiated with the explicit goal of superseding both EISPACK and LINPACK by restructuring algorithms to utilize block matrix operations, which are far more efficient on modern high-performance computers.
LAPACK's first version was released in 1992, and it quickly became the new standard, offering enhanced functionality, improved algorithms, and significantly better performance on contemporary hardware. While EISPACK's direct use in cutting-edge scientific computing has diminished, its legacy endures. The original Fortran source code, along with C and C++ versions, remains available through the Netlib repository, allowing researchers and students to study its well-documented algorithms. EISPACK is often referenced in historical contexts of numerical computing and as a foundational stepping stone for understanding modern linear algebra libraries. As of 2026, discussions around LAPACK, its successor, still acknowledge EISPACK's pioneering role in the field.
What If...?
Explore alternate histories. What if EISPACK made different choices?