作者Lordaeron (Terry)
看板java
标题Re: [问题] 大资料量导致记忆体不足
时间Sun Feb 13 10:28:35 2011
※ 引述《jyleef (龙虾)》之铭言:
: 我的资料量大约有五百万笔(小於)
: 然後每一笔要分为45栏
: 所以阵列宣告下去等於 5百万*45 (型态会用到String 或 double(二选一))
: 已经有将记忆体配置改成 -Xmx1575 (已经是最大了) → 无解
: 也有想过要改用分批读取再写入的方式
: 可是之後要跑 k-means 演算法,还是要一次看全部的资料 → 再度无解
: 目前我的电脑配备为(只用一台电脑跑)
: CPU :AMD 飞龙Ⅱ X4
: 记忆体:创见 DDR2 800 4G
: 原本是打算要将记忆体冲到8G
: 不过以原本的配备下去跑也只能跑到50几万笔资料(单纯存入)
: 怕说就算真的冲到8G也未必能跑得完
: 难道要冲到16G?
: 不知道版上有没有人能够解决这个问题
: 谢谢各位了~
还不简单, 这边一定很多人可以回答你的.
请你改成64 bit OS, 改成64 bit JDK.
再去买44G memory 回来插就好了.
因为就算是double 也要吃38G 多的记忆体.
如果你的板子不能support 44G RAM, 哪就换电脑吧.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.45.232.37
1F:推 jyleef:我目前跑50万笔资料javax约要用1G记忆体 所以正常推论要跑 02/13 13:24
2F:→ jyleef:500万笔资料需要10G记忆体 为何要用到44G? 是不能这样算吗? 02/13 13:26
3F:→ Lordaeron:你不是写一笔是一个double 的大小,哪不就是8 bytes? 02/14 00:18
4F:→ Lordaeron:哪麽50万笔就是要乘8 啊,还是你不是哪意思哦 02/14 00:20
5F:→ Lordaeron:10G 就简单啦, 换OS,JDK部分不变,就是去买4支4G的RAM吧 02/14 00:22
6F:→ Eureka7:重点应该放在想出另一种方法来处理data吧......你这次加 02/15 09:33
7F:→ Eureka7:记忆体ok,阿下次资料变成5000万笔怎麽办?继续加?? 02/15 09:35
8F:→ ogamenewbie:如果资料迟早会增长到至少要货柜型资料中心处理的话 02/15 15:00
9F:→ ogamenewbie:持续规画硬体架构的扩充也是一个要兼顾的层面... 02/15 15:01
10F:→ Lordaeron:不会吧,5000万笔就要货柜中心? 要用到货柜中心这麽大的 02/15 18:28
11F:→ Lordaeron:还用java来处理, 哪就是时间太多了. 02/15 18:30
12F:→ ogamenewbie:我是不知道你从哪边看到5000万笔就要货柜中心... 02/16 18:34
13F:→ edward13:怎觉得这篇是在反串..那些搞资料ETL不就dram加不完 02/17 16:10
14F:→ Lordaeron:如果不想改变你的AP,取简单就是加加加,有问题吗? 02/23 11:04