首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何处理超出内存容量的单元阵列?

如何处理超出内存容量的单元阵列?
EN

Stack Overflow用户
提问于 2015-06-06 18:39:17
回答 1查看 67关注 0票数 0

在将总计35 GB的计量数据(GRIB文件)读取到matlab单元阵列中时,我遇到了内存不足(RAM)的问题。

当我加载大数据集时,如何解决RAM限制?

我已经尝试预分配cell-array,但这没有帮助。它在数据集加载70%时停止。

下面是出错的FOR循环:

%加载grib文件

代码语言:javascript
复制
for ii = 1:number_files
    waitbar(ii/number_files,h);
    file_name = [fname,'\',num2str(ii),'.grb'];
    grib_struct = read_grib([file_name],-1);
    Temp{ii} = single(grib_struct(1,1).fltarray);
    Rad_direct{ii} = single(grib_struct(1,2).fltarray);
    Rad_diff{ii} = single(grib_struct(1,3).fltarray);
    fclose('all');
end   

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2015-06-07 20:24:43

您可以使用matfile命令直接在文件系统上工作。它将您直接输入的所有数据存储在文件系统中。这将是缓慢的,但这是可能的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30681837

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档