qq5942111 发表于 2011-1-12 22:28:36

发现HugeCalc的bug

素性检测0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000001
也就是2^224-2^32+1
HugeCalc陷入漫长的计算,并耗尽内存,最终崩溃.
其它类似的数还有
2^672-2^32+1
2^896-2^32+1
2^1120-2^32+1
2^1344-2^32+1
2^2240-2^32+1
请版主检查

gxqcn 发表于 2011-1-13 07:30:54

谢谢!:handshake
这是正式发布以来反馈的为数不多的几个bug,我将抽空去分析一下。

mathematica 发表于 2011-1-17 08:38:49

谢谢!:handshake
这是正式发布以来反馈的为数不多的几个bug,我将抽空去分析一下。
gxqcn 发表于 2011-1-13 07:30 http://bbs.emath.ac.cn/images/common/back.gif

郭能回复一下,是素数判定算法缺陷的问题,还是因为bug吗?
不过这个问题的答案只有你自己知道了!

gxqcn 发表于 2011-1-17 09:19:08

不是算法的问题,应该是代码的问题。
近期忙,还没来得及debug.

TuringBombe 发表于 2011-1-26 18:42:57

1# qq5942111

用Beaconaut APICalc 2计算2^224-2^32+1非常方便快速.顺便把另外几个计算结果也公布如下以便检测素性:
2^672-2^32+1=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000001

2^896-2^32+1=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000001

2^1120-2^32+1=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000001

2^1344-2^32+1=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000001

2^2240-2^32+1=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000001

gxqcn 发表于 2011-3-8 11:45:28

原因已查明:是一处优化算法中出现了整型溢出现象。
此类bug很难debug(因为有汇编):我曾用debug版测试正常,编译成release版却异常,
一步一步地跟踪,今天才得以修正。

mathe 发表于 2011-3-8 12:50:10

奇怪,整型数溢出为什么debug状态不会出问题?同样应该内存溢出才会出现debug和release状态的不同.

gxqcn 发表于 2011-3-8 13:12:25

这也是我比较纠结的地方。
可能与寄存器初始化什么的有关。
我用的是Intel的编译器。

mathe 发表于 2011-3-8 13:15:14

那还有可能是编译器出错了

gxqcn 发表于 2011-3-8 13:32:49

应该问题还是代码上,我修正后编译成 release 版再测试这几组数据,都迅速得到了答案(均为合数)。
不过,我以前确实碰到编译器出错的时候,那是在用浮点型的时候,可能与编译器自身的优化有关。
页: [1] 2
查看完整版本: 发现HugeCalc的bug