This chapter seeks to document the results achieved with the optimization software developed. A simple quality-of-solution estimate is done based on a comparison between the number of FLOPS used to solve the system of equations in the automatically generated Fortran code, and in MatLab respectively.
Unfortunately, the sparse solvers provided by MatLab are all based on iterative methods. It would have been nice to compare the QR factorization with another direct method. When comparing the results achieved by the generated Fortran code, and the MatLab routines, we should keep this major difference in the underlying methods in mind. This is nothing but a bold comparison of what two fundamentally different methods can achieve. The comparisons are done anyway, in order to give the reader some idea of the quality of the optimized solutions.
In MatLab, I used the bicg() routine, which is an
iterative solver based on the bi-conjugate gradients method. In all
comparisons, I let this method iterate until the default accuracy of
is reached. The typical accuracy of the
QR factorization lies around
(this is
found by numerous runs of the regression tester on a wide variety of
systems). This may be considered in favor of the iterative method,
since it would have needed much more iterations to achieve the higher
accuracy, but I consider
a sufficient
accuracy, and the fact that the QR factorization is better is
considered only unnecessarily better.