From: Rune Allnor on
On 14 Jun, 16:57, "Andreas " <andreas.jane...(a)univie.ac.at> wrote:
> Of course it's no problem to call a suitable LAPACK routine for my task - but if there is a way in Matlab to find out which LAPACK routines are used it would still be helpful for me (for comparison, speed ... etc.).
>
> So if someone knows that it is _not_ possible to get this information in matlab - please tell me.

I'd be *very* surprised if the info you want is available
to non-TMW staff, for two reasons:

- The functionality that analyzes the input needs to be
fast, which means it would be implemented as compiled
code as opposed to interpreted m code

- The knowledge, skills and experience that goes into
making the decisions is far more valuable than the
(free) lapack code for the individual routines.

If the decision-making was available to the public,
any hacker could reproduce the functionality that almost
certainly has taken TMW staff several man-years to come
up with.

Any sane TMW programmer would keep that part of the code
secret, to make sure matlab has *some* advantages to make
up for its several severe drawbacks compared to the compiled
languages.

Rune
From: Andreas on
Thanks for your honest statement, Rune!

Thats what I also figured but maybe I'm wrong...


Rune Allnor <allnor(a)tele.ntnu.no> wrote in message <36600213-74d4-4253-815b-e34c823c1ca3(a)i31g2000yqm.googlegroups.com>...
> On 14 Jun, 16:57, "Andreas " <andreas.jane...(a)univie.ac.at> wrote:
> > Of course it's no problem to call a suitable LAPACK routine for my task - but if there is a way in Matlab to find out which LAPACK routines are used it would still be helpful for me (for comparison, speed ... etc.).
> >
> > So if someone knows that it is _not_ possible to get this information in matlab - please tell me.
>
> I'd be *very* surprised if the info you want is available
> to non-TMW staff, for two reasons:
>
> - The functionality that analyzes the input needs to be
> fast, which means it would be implemented as compiled
> code as opposed to interpreted m code
>
> - The knowledge, skills and experience that goes into
> making the decisions is far more valuable than the
> (free) lapack code for the individual routines.
>
> If the decision-making was available to the public,
> any hacker could reproduce the functionality that almost
> certainly has taken TMW staff several man-years to come
> up with.
>
> Any sane TMW programmer would keep that part of the code
> secret, to make sure matlab has *some* advantages to make
> up for its several severe drawbacks compared to the compiled
> languages.
>
> Rune
From: James Tursa on
"Andreas " <andreas.janecek(a)univie.ac.at> wrote in message <hv5g00$j77$1(a)fred.mathworks.com>...
>
> Of course it's no problem to call a suitable LAPACK routine for my task - but if there is a way in Matlab to find out which LAPACK routines are used it would still be helpful for me (for comparison, speed ... etc.).
>
> So if someone knows that it is _not_ possible to get this information in matlab - please tell me.
>
> If it is possilbe. How?

With a fair amount of work one might be able to get the sequence of LAPACK / BLAS calls involved in the MATLAB backslash operators, but how about a different approach? Try looking at some algorithms others have already developed for overloading the backslash operator. e.g.,

http://www.mathworks.com/matlabcentral/fileexchange/24119-dont-let-that-inv-go-past-your-eyes-to-solve-that-system-factorize

http://www.mathworks.com/matlabcentral/fileexchange/15138-linfactor-uses-lu-or-chol-to-factorize-a-matrix-or-previously-computed-factors-to-solve-axb

James Tursa
From: Steve Amphlett on
"Andreas " <andreas.janecek(a)univie.ac.at> wrote in message <hv5g00$j77$1(a)fred.mathworks.com>...
> Of course it's no problem to call a suitable LAPACK routine for my task - but if there is a way in Matlab to find out which LAPACK routines are used it would still be helpful for me (for comparison, speed ... etc.).
>
> So if someone knows that it is _not_ possible to get this information in matlab - please tell me.
>
> If it is possilbe. How?

By brute force.

Download the source for the libs. Instrument it. Build. Force Matlab to call your instrumented code. Then try to guess the rules it's using based on the call sequences.
From: Steve Amphlett on
"Steve Amphlett" <Firstname.Lastname(a)Where-I-Work.com> wrote in message <hv7a24$at6$1(a)fred.mathworks.com>...
> "Andreas " <andreas.janecek(a)univie.ac.at> wrote in message <hv5g00$j77$1(a)fred.mathworks.com>...
> > Of course it's no problem to call a suitable LAPACK routine for my task - but if there is a way in Matlab to find out which LAPACK routines are used it would still be helpful for me (for comparison, speed ... etc.).
> >
> > So if someone knows that it is _not_ possible to get this information in matlab - please tell me.
> >
> > If it is possilbe. How?
>
> By brute force.
>
> Download the source for the libs. Instrument it. Build. Force Matlab to call your instrumented code. Then try to guess the rules it's using based on the call sequences.


Actually mldivide is very well documented (doc mldivide) and gives full details about the choice of algorithm and which LAPACK and/or BLAS routines are used. There is much more info in "doc" than there is in "help".