# Linear Least Squares

The linear least squares subroutines provide least squares solutions to linear systems of equations for general matrices using a QR factorization or a singular value decomposition. Some of these subroutines correspond to the LAPACK routines described in reference [9].

Table 1. List of LAPACK Linear Least Squares Subroutines
Short-Precision Subroutine Long-Precision Subroutine Descriptive Name and Location
SGESVDΔ
CGESVDΔ
SGESDDΔ
CGESDDΔ
LAPACKE_sgesvdΔ
LAPACKE_cgesvdΔ
LAPACKE_sgesddΔ
LAPACKE_cgesddΔ
DGESVDΔ
ZGESVDΔ
DGESDDΔ
ZGESDDΔ
LAPACKE_dgesvdΔ
LAPACKE_zgesvdΔ
LAPACKE_dgesddΔ
LAPACKE_zgesddΔ
SGESVD, DGESVD, CGESVD, ZGESVD, SGESDD, DGESDD, CGESDD, and ZGESDD (Singular Value Decomposition for a General Matrix)
SGEQRFΔGPU
CGEQRFΔGPU
LAPACKE_sgeqrfΔ
LAPACKE_cgeqrfΔ

DGEQRFΔGPU
ZGEQRFΔGPU
LAPACKE_dgeqrfΔ
LAPACKE_zgeqrfΔ
SGEQRF, DGEQRF, CGEQRF, and ZGEQRF (General Matrix QR Factorization)
SGELSΔ GPU
CGELSΔ GPU
LAPACKE_sgelsΔ
LAPACKE_cgelsΔ
DGELSΔ GPU
ZGELSΔ GPU
LAPACKE_dgelsΔ
LAPACKE_zgelsΔ
SGELS, DGELS, CGELS, and ZGELS (Linear Least Squares Solution for a General Matrix)
SGELSDΔ
CGELSDΔ
LAPACKE_sgelsdΔ
LAPACKE_cgelsdΔ
DGELSDΔ
ZGELSDΔ
LAPACKE_dgelsdΔ
LAPACKE_zgelsdΔ
SGELSD, DGELSD, CGELSD, and ZGELSD (Linear Least Squares Solution for a General Matrix Using the Singular Value Decomposition)

Δ LAPACK

GPU This subroutine can offload computations to the GPUs when the ESSL SMP CUDA Library is used.

Table 2. List of Non–LAPACK Linear Least Squares Subroutines
Short-Precision Subroutine Long-Precision Subroutine Descriptive Name and Location
SGESVF§ DGESVF§ SGESVF and DGESVF (Singular Value Decomposition for a General Matrix)
SGESVS§ DGESVS§ SGESVS and DGESVS (Linear Least Squares Solution for a General Matrix Using the Singular Value Decomposition)
SGELLS§ DGELLS§ SGELLS and DGELLS (Linear Least Squares Solution for a General Matrix with Column Pivoting)

§ This subroutine is provided only for migration from earlier releases of ESSL and is not intended for use in new programs.