是否有Matlab中的调试和发布配置

时间:2016-04-22 22:43:05

标签: matlab visual-studio configuration

我在C ++和Matlab上编码。对于C ++项目,我使用VS2013(或2015)。在VS中有两种不同的默认配置 - 调试和释放,第二种默认配置通常要快得多。 在Matlab中,我总是从Matlab的命令行运行我的代码。有没有办法通过更改配置来提高Matlab的性能?

我知道,我可以编译Matlab代码,但它会改善性能(我通常做图像分析或非线性系统求解)?我也知道,可以用Matlab的代码制作C代码,这有时可以加速它。

我没有找到关于SO的完整答案。我的猜测是,如果我的脚本中没有断点,它会自动在发布模式下运行,否则在调试模式下运行。我注意到,如果我的脚本末尾有一个断点,它会运行得更慢。

1 个答案:

答案 0 :(得分:1)

简而言之,答案是否定的。 Matlab本身没有这些配置的概念。

归结为在运行生成二进制文件之前基于配置选项编译C ++代码的事实。另一方面,Matlab代码不包含编译步骤,只是由解释器运行。 C ++发行版配置通常启用了编译和链接器优化,而调试配置则没有。

"汇编"只有在使用Matlab工具箱或实用程序将Matlab代码转换为C代码时才会出现Matlab代码。我相信,如果要将其转换为C,那么在Matlab代码中可以使用哪些内部Matlab函数会有一些限制。如果能够这样做,Matlab将使用一些构建配置来生成C代码。最好检查,但我怀疑生成的Matlab代码不太可能更快,因为一些繁重的内部Matlab函数已经用C ++编码。

相关问题