GraphMath

Tridiagonalization & Jacobi algorithm

When Householder preprocessing helps — and when it does not

Under construction. This chapter is still being developed and may change as the analysis and experiments are refined.

Can tridiagonalization improve a Jacobi eigensolver even though Jacobi destroys the tridiagonal zeros?

The usual objection is that Householder tridiagonalization costs O(n³) and Jacobi rotations immediately create fill-in. This chapter asks a different question: whether the transformed starting matrix can nevertheless reduce later Jacobi work. It analyzes energy redistribution and parallel pivot structure, then tests six symmetric matrix families with NVIDIA cuSOLVER.

Key ideas

Tridiagonalization does not give Jacobi a permanently sparse matrix, but it changes where the matrix energy is located before the Jacobi iterations begin.

  • Householder tridiagonalization concentrates all off-diagonal entries into the first off-diagonal band while preserving the matrix eigenvalues
  • Jacobi rotations do not preserve that tridiagonal structure; fill-in begins with the first batch
  • Rotations acting on nonintersecting pivot pairs commute and can be processed as a parallel Jacobi batch
  • For a tridiagonal starting matrix, two alternating first-band batches partition all off-diagonal energy, so at least one contains at least half of it
  • Householder similarity can move energy either toward or away from the diagonal; similar diagonal entries are favorable while large diagonal spread can be unfavorable
  • In the reported NVIDIA cuSOLVER experiments, preprocessing reduced Jacobi sweep counts in five of six tested matrix families, and for sufficiently large matrices in those families the total runtime also decreased
  • Whether sweep savings recover the O(n³) tridiagonalization cost remains matrix- and implementation-dependent

The chapter therefore reaches a conditional conclusion: Householder preprocessing can substantially help a parallel Jacobi eigensolver, but not for every matrix.

Why can tridiagonalization help if Jacobi immediately creates fill-in?

Because the possible benefit is not the permanent preservation of tridiagonal zeros. Tridiagonalization changes the starting distribution of diagonal and off-diagonal energy and concentrates all off-diagonal energy in the first band. That can make the early parallel Jacobi batches favorable, although Householder similarity can also move energy away from the diagonal, so the effect is matrix-dependent.

What did the experiments show?

Experiments with NVIDIA cuSOLVER on six families of dense symmetric matrices showed that Householder preprocessing reduced Jacobi sweep counts in five commonly encountered families. For matrices larger than 32×32 in these families, the reduction in Jacobi runtime exceeded the additional cost of tridiagonalization.

Across these five families and matrix sizes from 64×64 to 1024×1024, the reduction in total runtime ranged from 1.2% to 49.0%.

The contrasting case was an unequal-variance covariance family. Large diagonal spread caused Householder preprocessing to move substantial energy off the diagonal, increasing both Jacobi sweep counts and total runtime. Because variables on very different scales are commonly standardized before analysis, this represents an adverse stress test rather than the usual covariance-data case.

The experiments therefore support the algebraic prediction: diagonal spread is a simple warning sign that Householder preprocessing may be unfavorable.

Related chapters

Chapter contents

Was this chapter helpful?

Quick feedback helps us improve the site.