gsl_multifit_fdfsolver_lsmder memory usage

Brian Gough bjg@network-theory.co.uk
Sun Mar 16 11:12:00 GMT 2003


Peter Verveer writes:
 > I recently started converting some numerical code to GSL and
 > replaced a Levenberg-Marquardt routine which was a C translation of
 > lmdif from MINPACK.  However, I found that the GSL solver
 > gsl_multifit_fdfsolver_lsmder uses a lot of memory, since it
 > appears to allocate a matrix of m times m, where m is the number of
 > functions. This causes me many problems since I work with large
 > data sets (10,000-100.000 data points is not unusual) and obviously
 > memory requirements quickly get out of hand then. I had a look at
 > the original fortran MINPACK which does not seem to require
 > this. Is there a particular reason gsl_multifit_fdfsolver_lsmder
 > needs so much memory, and could this eventually be changed?

Hi,
I think it can be changed in principle. 

When I implemented the algorithm I believe I stored the full Q matrix
from the QR decomposition because it was easier to implement that way.

Maybe you could look at what is needed to avoid storing the full Q
matrix, as in MINPACK. I don't think it's too complicated now that the
basic algorithm is there.

best regards,
-- 
Brian Gough

----------------------------------------------------------------------
Network Theory Ltd           Phone: +44 117 3179309 (UK: 0117 3179309)
15 Royal Park                  Fax: +44 117 9048108 (UK: 0117 9048108)
Bristol BS8 3AL                WWW: http://www.network-theory.co.uk/
United Kingdom               Email: bjg@network-theory.co.uk     
----------------------------------------------------------------------



More information about the Gsl-discuss mailing list