Dear George,
this is excellent news. Please wait before re-working on GeneralMatrix copy() as we have to avoid repetitive object instantiation in k_order_perturbation itself and deal with memory leaks.
All the best,
Michel
Quoting "G. Perendia" george@perendia.orangehome.co.uk:
Hi Sebastien
I now have a pretty stable working prototype of C++ DsgeLikelihood suitable for initial indicative performance tests.
Unfortunately, during the lengthy debugging process, I realised I had to take out some performance improvers built as overloads for the GeneralMatrix copy() method, originally for improving the Kalman Filter performance, since they were breaking (now integrated) K-order-perturbation and hence I will need to devise and develop some alternative performance booster methods.
However, some very rough performance comparison tests with fs2000 model even with such degraded KF indicate to be pretty promising and worth of the further effort: whilst 1000 loop calling Matlab DsgeLikelihood.m (all with same parameters) takes randomly somewhere between 40 and 50 sec, calling the equivalent CalcLikelihood method from within parent C++ mexFunction (together with constructing its parent class once as it would be done by the C++ estimation) takes approx. 10 sec (thus, less than 1/4th of time). This was run on an old and slower machine but the relative advantage is pretty portable. That, (together with some additional performance boosting) may result in a rather substantial time saving for whole MLE/MCMC estimation!
Best regards
George
Dev mailing list Dev@dynare.org http://www.dynare.org/cgi-bin/mailman/listinfo/dev