我正在使用 Matlab 在 C++ 中调用一些外部调用,然后收到一个巨大的计算矩阵。矩阵非常庞大,我无法访问此 C++ 程序的源代码。 (如果我有,我会立即从 C++ 中保存它)
现在,在我的系统上,这个 C++ 程序只用了 1 秒来计算给定的数据并将其发送回 Matlab,而 Matlab 的 dlmwrite 需要 200-300 秒才能将这个巨大的数组保存在磁盘上。我还有数千个要计算,我想缩短时间。
那么在 Matlab 中保存最快的方法是什么?
最佳答案
可能最快的方法可能是 Matlab 的 save命令。或者,您可以 fwrite整个矩阵到一个二进制文件。
使用 dlmwrite
将值转换为文本,这需要时间并且需要将更多数据写入磁盘。不要这样做,除非你真的需要那种格式的数据。请注意,如果使用大矩阵而不是在增量写入文件的循环中调用一次,dlmwrite
会更快。
关于performance - 保存 Matlab 矩阵的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15023994/