Nonlinear solvers are essentially solving a system of nonlinear equations. X^2 + x -1 =0 is a nonlinear equation. As we recall from Calculus 101, to solve these equations, one has to use some variants of Newton’s method because it has fast convergence to the solution property. For systems of nonlinear equations, Newton’s method requires repeated solutions of systems of* linear* equations, or the famous Jacobian matrix(first order partial derivatives of a vector valued function).

This is why it is so important to have scalable linear system solvers. The performance of a nonlinear solver is heavily dependent of parallel performance of linear solvers. Other methods are also used for solutions of nonlinear equations. Their market share is smaller because of slower convergence to solution property. Solving system of nonlinear equations with many degrees of freedom is usually easier with Newton-like methods than with other approaches. Another algorithm that a lot of libraries seem to implement is the Levenberg-Marquardt method, your software manual/mathbook will do a better job explaining it.

The final part of the simple math series will discuss methods for solving time-variable ordinary and partial differential equations. Many systems in the field of physics, chemistry, and biology, even social networks can be modeled using these time variable stepper solvers.

First, let me explain what Windows HPC is all about. Windows High performance computing team has produced

When it comes to HPC development, linear algebra libraries are the essential building blocks.  You