Fortran Coder

查看: 21326|回复: 7
打印 上一主题 下一主题

[数值问题] forrtl:severe(179):cannot allocate array - overflow on array size calculation

[复制链接]

63

帖子

9

主题

0

精华

专家

超凡脱俗

F 币
474 元
贡献
237 点
楼主
发表于 2017-2-27 17:15:33 | 显示全部楼层
确实是的,按照单精度数组,每个元素4字节,一个数组81亿个元素,共30多G
天下英雄出我辈,一入江湖岁月催。

鸿图霸业谈笑间,不胜人生一场醉。

63

帖子

9

主题

0

精华

专家

超凡脱俗

F 币
474 元
贡献
237 点
沙发
发表于 2017-2-27 18:32:38 | 显示全部楼层
little_kar 发表于 2017-2-27 17:19
那该怎么解决呢?单纯的减小数组的话,我算的东西就失去意义了

修改算法内容,不要将数组全部放在内存里;或者换用满足要求的机器。
天下英雄出我辈,一入江湖岁月催。

鸿图霸业谈笑间,不胜人生一场醉。

63

帖子

9

主题

0

精华

专家

超凡脱俗

F 币
474 元
贡献
237 点
板凳
发表于 2017-2-28 08:45:35 | 显示全部楼层
pasuka 发表于 2017-2-28 08:37
1 Byte = 8 Bits

1 KB = 1024 Bytes

算错了吧,双精度要占8字节,一个数组81亿个元素,字节总数为8×81E8
天下英雄出我辈,一入江湖岁月催。

鸿图霸业谈笑间,不胜人生一场醉。
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-9 09:20

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表