MATLAB executable too slow

48 visualizzazioni (ultimi 30 giorni)
ab il 12 Apr 2013
Commentato: Jan il 17 Ott 2018
I converted my matlab program into Console based application using the deploytool in matlab. The matlab .m file takes around 2 seconds to execute but after I converted it into an executable form and called the .exe it takes 45 secs to execute which is too much. I want to integrate the matlab program with php. Is there any other efficient and fast way to do this? In my project, time is really a big factor(not the developing time but the execution time of the application) so any method that takes less time? I saw in the internet that we can write php extensions to call the matlab is this method fast or the same as calling the .exe file? Is matlab coder any help for this process? If there is any alternative options please mention it.
  2 Commenti
Walter Roberson
Walter Roberson il 15 Feb 2018
In some circumstances, MATLAB Production Server is a good solution to slow startup.

Accedi per commentare.

Risposte (5)

Walter Roberson
Walter Roberson il 12 Apr 2013
Start-up times for the executables will be slow, as it will go through the equivalent of starting up MATLAB itself.
This does not apply for MATLAB Coder, which generates C or C++ directly. However, there are quite a few things that are not supported in MATLAB Coder.

Peter il 13 Ago 2014
If you are using deploytool to compile your code, under Project - Settings-Toolboxes on path uncheck any toolboxes that aren't needed by your executable. I recently had this issue and the above steps cut the executable file size in half and significantly reduced the start time of the executable.
  2 Commenti
Jan il 17 Ott 2018
"on path" might be misleading. Do you find the GUI for the Settings, where you can define which toolboxes to include?

Accedi per commentare.

ab il 15 Apr 2013
What kind of things are not supported in MATLAB coder? So it means that I have to convert my whole matlab program into C or C++ to make the execution time fast? Do you know how can I integrate it with php after conversion?

ab il 16 Apr 2013
Modificato: ab il 16 Apr 2013
I think the MATLAB coder won't work for my program.Is there any other alternatives?Can I call my maltab program from C will this increase my execution time or its the same?Because the .exe console based application generated from matlab is taking very long the execution time of the program is the same so I guess it takes too long to call the exe load the MCR.Is there any solution for this or any alternatives?I have read through many post and blogs which defines the reason that are slow but cannot give the answer on how to solve it.So any solution will be highly appreciated. Will generating a C shared library help in this problem?? I am totally confused
  1 Commento
Walter Roberson
Walter Roberson il 16 Apr 2013
The engine open will take that time.
Consider using MATLAB's "automation" mode. This calls upon MATLAB using COM. This requires that the operating system be MS Windows, and requires a real MATLAB installation; and if the web server will be accessible to the public it requires a higher license grade than normal.

Accedi per commentare.

Jason Ross
Jason Ross il 17 Apr 2013
You might want to take a look at MATLAB Production Server, as well.


Scopri di più su MATLAB Coder in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by