Performance Basics

3.3 Algorithm
An algorithm is a precise method of solving a problem. A good algorithm:

  • Gives good performance

  • Can often be far more effective than a highly optimized poor algorithm.

Example: Solution of a convection-diffusion problem via local Jacobi iterative method or a multigrid method.

  • Jacobi method megaflop rate is 5.6 times greater than multigrid method

  • However, Jacobi method needs so many iterations to converge that it takes 317 times longer to solve the problem!