MATLAB, Compiled MATLAB, Coder differences

5 vues (au cours des 30 derniers jours)
Daniel Shub
Daniel Shub le 23 Nov 2011
Lets say I have a moderately complex calculation that is limited by the CPU, requires no "crap" (e.g., graphics, user input, symbolic math, and GPU processing) and is fully compliant with the limitations of the MATLAB compiler and the MATLAB coder. If I want to run this application on N machines (each with a license of MATLAB) do I run MATLAB, compile it and run the executable with MCR, or use the coder and run the executable?
My hunch is that the coder will produce slightly/significantly slower code, but then again, maybe the coder is really smart and it will produce faster code.
Maybe the questions are: If you have an abundance of MATLAB licenses is there any reason to use the compiler or coder? Are there disadvantages of using the compiler or coder?

Réponse acceptée

Walter Roberson
Walter Roberson le 23 Nov 2011
I flipped through the list of supported Coder functions, and it appeared to me that except perhaps for some boundary conditions, they were routines that could be relatively readily implemented using the standard C library. As the resulting C code would not require any interpreter level, I would expect that the C code would usually be faster.
I would not expect that the C code would always be faster, however: the trade-off of using the standard C library is that one would not be calling upon highly tuned cpu-specific math libraries such as LAPACK -- routines which are usually not invoked until the problem is "sufficiently big" (due to the overhead of marshaling the data from MATLAB storage in to the form expected by the routines).
  1 commentaire
Daniel Shub
Daniel Shub le 24 Nov 2011
I think I am going to have to play around with the coder. I am not sure it will provide me with any advantage; for me the bottle neck is thinking about the results I get from MATLAB and not getting the results. Still, it seems like a cool tool.

Connectez-vous pour commenter.

Plus de réponses (1)

Chetan Rawal
Chetan Rawal le 25 Juin 2015
An answer from the MathWorks Support team is now available to help you minimize the confusion. Go to the following page for the best guidance:

Catégories

En savoir plus sur MATLAB Coder dans Help Center et File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by