【发布时间】:2014-06-09 20:02:21
【问题描述】:
嗯,Matlab Coder 可以在某些限制下将.m 文件转换为mex函数。
例如,不能在要转换的.m 文件中调用mex 函数。
但是这个限制是否只针对那些我们没有源代码的 mex 函数?
也就是说,如果我们有一个函数的C mex源代码,并且该函数在一个Matlab函数内部被调用,像这样:
function result = fun() %#codegen
a = ...; %complex large-scale matrix operations
result = cFun(a);
end
如上所述,cFun() 可以使用 mex 用 C 编写以提高性能,但最好用 Matlab 编写矩阵运算而不是 C。
因此,如果我们可以提供cFun()的源代码并使用Matlab Coder将fun()转换为mex,我们将受益于Matlab中矩阵运算的便利性和一些运算的性能在 C 中,甚至在 OpenCL 中。
但有可能吗?
谢谢!
【问题讨论】:
标签: c++ c matlab mex matlab-coder