zep*_*hyr 7 arrays matlab memory-management
我不精通MATLAB和很好奇如何处理动态内存分配的引擎盖下?
一种主要方法是分配大块而不是必需的,这样就不必为添加的每个新元素分配.在进行一些研究时,我看到很多人亲自管理他们自己的大块分配(假设他们不知道他们的最终大小)或做了诸如创建最大尺寸,然后修剪的事情.一个例子是未记录的MATLAB,它建议您自己执行块内存分配.我本以为像MATLAB这样的语言会知道自己这样做,我不会被要求关注这样的问题.这对我来说意味着如果你试图将一个新元素附加到一个数组上,MATLAB只为那个单独的元素分配新的内存,这是非常低效的.
我的问题是双重的
我记得几年前在 Matlab Expo 上他们谈论了总部正在开发的东西 - 其中之一是内存的自动预分配。
没有提及何时发布,甚至是否会发布……从那以后我再也没有听说过它……
根据我的经验 - 我一直自己管理动态分配 - 并且总是注意到如果这部分代码有问题(即数组在我认为不应该增长时增长......)
所以我认为公平地说你需要自己管理。