【发布时间】:2008-11-13 16:11:37
【问题描述】:
我需要处理大量(数千万)的 MATLAB 结构;我需要十几个字段,所以我认为在我发现这一点之前内存不会成为问题 ( explanation )
>> s=[];
>> s.first=1;
>> whos
Name Size Bytes Class Attributes
s 1x1 132 struct
>> s.second=2;
>> whos
Name Size Bytes Class Attributes
s 1x1 264 struct
>> s.third=3;
>> whos
Name Size Bytes Class Attributes
s 1x1 396 struct
这显然阻止了我使用数千万个更大的结构。
使用类解决了内存使用问题(每个结构数组标记为 56 个字节),但在构造和销毁对象时速度慢得令人望而却步。
如何创建轻量级(如 C 结构)且快速的结构?
【问题讨论】:
-
为什么这会“明显阻止”你?您需要 10^6 * 12 * 132 字节,这可能可行也可能不可行,具体取决于您可用的硬件。