Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down on April 23, and its replacement, statalist.org is already up and running.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: st: Why is Mata much slower than MATLAB at matrix inversion?


From   Patrick Roland <patrick.rolande@gmail.com>
To   statalist@hsphsun2.harvard.edu
Subject   Re: st: Why is Mata much slower than MATLAB at matrix inversion?
Date   Fri, 20 Jul 2012 11:50:44 -0700

luinv() takes about 15 times longer than MATLAB's inverse function.
Maybe I'm being naive, but why wouldn't all serious matrix languages
invert matrices at roughly the same speed? Don't they use the same
linear algebra routines?

Another curiosity is that the luinv() is more general and faster. Why
would anyone want to use cholinv()?

On Fri, Jul 20, 2012 at 9:17 AM, Richard Herron
<richard.c.herron@gmail.com> wrote:
> Patrick, -cholinv()- requires a symmetric positive definite matrix,
> but I don't think you M matrix is PD. Try -luinv()-.
>
> Although for most use cases your matrix will be symmetric, right? Then
> you should use -invsym()- or a solve function.
>
> Richard Herron
>
>
> On Thu, Jul 19, 2012 at 9:22 PM, Patrick Roland
> <patrick.rolande@gmail.com>
> wrote:
>>
>> I'm comparing two code snippets. In Mata:
>>
>> mata
>> timer_on(1)
>> M = rnormal(2000,2000,0,1)
>> J = cholinv(M)
>> timer_off(1)
>> timer()
>> end
>>
>> In MATLAB:
>>
>> tic;
>> M = normrnd(0,1,2000,2000);
>> J = inv(M);
>> toc;
>>
>> I find that MATLAB is about 20 times faster (1.5 seconds vs 30
>> seconds). Is there something I'm missing here, or is MATLAB just much
>> faster at matrix inversion? I'd much prefer to use Mata because of
>> integration with Stata, but if the speed difference is going to be on
>> this order then MATLAB is more attractive.
>>
>>
>> Any input here is appreciated.
>> *
>> *   For searches and help try:
>> *   http://www.stata.com/help.cgi?search
>> *   http://www.stata.com/support/statalist/faq
>> *   http://www.ats.ucla.edu/stat/stata/
> *
> *   For searches and help try:
> *   http://www.stata.com/help.cgi?search
> *   http://www.stata.com/support/statalist/faq
> *   http://www.ats.ucla.edu/stat/stata/
*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/


© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index