1
我必须在matlab中做一些计算。它已经在一个m文件中实现,但由于有很多循环,所以运行速度很慢。这个想法是编译本地代码并在matlab中使用这些代码。是matlab mex函数还是共享对象/ DLL更快?
现在我有两种可能性:
- 写共享对象(的.so OD .dll文件),其是负载到MATLAB动态
- 写C(++) - MEX函数
在第一种情况下,matlab执行到本地数据类型等的接口,在后一种情况下,我必须自己做。现在的问题是:什么更快/更好?我可以同时做这两件事,但我想尽可能地获得更快的速度。
感谢
除非你在外部代码中只做了一个微不足道的计算,否则应该没有性能差异。使用哪个更适合手头的任务。 –