MATLAB Answers

ab
0

MATLAB executable too slow

Asked by ab
on 12 Apr 2013
Latest activity Commented on by Jan
on 17 Oct 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 Comments

Hi, did you get solution to this issue? My standalone also takes long time to load though I am using a splash screen but it's still creating issuses.
In some circumstances, MATLAB Production Server is a good solution to slow startup.

Sign in to comment.

5 Answers

Answer by Walter Roberson
on 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.

  0 Comments

Sign in to comment.


Answer by Peter
on 13 Aug 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 Comments

I am not able to find Project - Settings-Toolboxes on path
Jan
on 17 Oct 2018
"on path" might be misleading. Do you find the GUI for the Settings, where you can define which toolboxes to include?

Sign in to comment.


Answer by ab
on 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?

Answer by ab
on 16 Apr 2013
Edited by ab
on 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 Comment

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.

Sign in to comment.


Answer by Jason Ross
on 17 Apr 2013

You might want to take a look at MATLAB Production Server, as well.

  0 Comments

Sign in to comment.