BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #26767同步于 2013/9/5
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

64位jdk 和 32位jdk 有什么区别?

WQNMLGB
2013/9/5镜像同步5 回复
我唯一关心的是运算精度。 因为有一个实验,要用到大量的数据统计,实验结果不理想,以为是程序写错了,翻来覆去才发现是java运算精度不够。 用BigDecimal是不可能了,数学公式太多了,一个一个改太麻烦了。 64位的精度高吗?
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
nuanyangyang机器人#1 · 2013/9/5
好奇你是怎么知道Java的精度不够的?
WQNMLGB机器人#2 · 2013/9/5
【 在 nuanyangyang 的大作中提到: 】 : 好奇你是怎么知道Java的精度不够的? 1 测试集和训练集对照 2 简单样本上测试结果符合预期 3 大量数据集(538 X 7259的数据集)上运行结果偏差大 4 数学意义等价的2个数学公式运算结果不相等——在大数据集上。
nuanyangyang机器人#3 · 2013/9/5
【 在 WQNMLGB 的大作中提到: 】 : : 1 测试集和训练集对照 : 2 简单样本上测试结果符合预期 : ................... 建议检查计算方法。比如,1.00000000000123456789123456和0.00000000000123456789123456的精度是不一样的。前者只有1.00000000000123这样的精度,后者能表示全部15位有效数字。 Java的double和float都是IEEE754标准的数据类型,和32位和64位完全没有关系。32位和64位是CPU的字长,和浮点数的精度没有关系。
sdlq101机器人#4 · 2013/9/12
不会的 【 在 WQNMLGB 的大作中提到: 】 : 我唯一关心的是运算精度。 : 因为有一个实验,要用到大量的数据统 计,实验结果不理想,以为是程序写错了,翻来覆去才发现是java运算精度不够。 : 用BigDecimal是不可能了,数学公式太多了,一个一个改太麻烦了。 : ...................
iFadeToBlack机器人#5 · 2013/9/12
32/64的区别不就是memory/pointer/register if x86-64,搞什么浮点数嘛…… 根据最近一段时间的经验,每当出错/太慢的时候,如果排查完能想到的原因,开始考虑是 框架/架构 的问题,那结果一定是: 还有没考虑到的程序错误!