Improve possible vtkMath bottleneck


While using Slicer with VerySleepy I noticed it spent a lot of time on vtkJacobiN. I did a quick search and there is a faster convergence algorithm called GaussSeidel.

You can see more here:

I implemented it, built Slicer and used it, and the change doesn’t appear to break anything…

I leave it to VTK experts to make benchmarks of how much it improves… According to the book of the link I posted:

GaussSeidel 5 iterations have the same accuracy than Jacobi 7 iterations.

1 Like

Fantastic thanks for doing this work. I’m on vacation the next couple of weeks but I’m sure someone will take a look soon.

1 Like

I have looked at this more in depth, I was wrong, there are no visible improvements… Sorry for the buzz… I’ll attach some profiling I did later

BTW: the algorithm for diagonalization has the same name as the algorithm for solving linear equations that confused me at first.