SuiteSparse at work:
The new 3D imagery for Google Earth relies on SuiteSparse (via the Ceres
nonlinear least squares solver developed by Google).
See the
Engadget article on Google Maps / Earth for more information.
Likewise, Google Ceres and SuiteSparse are used to create all of
Google's PhotoTours
SuiteSparse:
SuiteSparse is a single archive that contains all packages that I
have authored or co-authored that are available at this site. This gives
you a simple way of getting and installing all of my software packages.
Currently, this includes:
METIS 4.0.1: graph
partitioning and sparse matrix ordering. Used by SuiteSparseQR, CHOLMOD,
UMFPACK, and KLU, but optional. You can compile these codes without it.
The Makefile's automatically detect its presence, and use it if it's
available at compile-time.
Place a copy of
the metis-4.0 directory in the SuiteSparse directory, so that the directory
SuiteSparse/metis-4.0/Lib exists. Next, compile metis, and then
type "make" in the SuiteSparse directory to compile all of the SuiteSparse.
NOTE: You may encounter an error when compiling METIS on recent
Linux systems, caused by METIS' misuse of the double-underscore prefix.
There is a system __log2 function that conflicts with the one in METIS.
To fix this, edit the metis-4.0/Lib/rename.h file and replace the last
line in the file:
#define log2 __log2
with the following:
#define log2 METIS__log2
A patch for METIS 5.0.1,
from Sean Farley at Argonne National Lab. I haven't tested this yet.
It patches SuiteSparse version 3.6.1, not the current version. In a future
version of SuiteSparse, I plan on incorporating these changes conditionally, so
that SuiteSparse can use either METIS 4.0.1 or 5.0.1.
BLAS: basic linear algebra
subprograms. This is the standard reference BLAS. You should use optimized
BLAS whenever possible. Used by SuiteSparseQR, CHOLMOD and UMFPACK.