gxqcn 发表于 2008-3-14 21:58:57

原帖由 无心人 于 2008-3-13 14:17 发表 http://images.5d6d.net/dz60/common/back.gif
算法就定那个二次迭代和四次迭代吧
好做
至于库, 用整数模拟吧
代码么? 你还是写C代码吧
用你核心的库做
没有? 那分离一个
其实现在的 HugeCalc 已具备开发复杂计算的基础了,无论是在空间还是时间方面。

只是近来有些忙,回家后有些懒散,一直没开始弄它。

在论坛上已欠大家不少了,这两天看能否把那个高精度计算 sqrt(2) 给完成,
再顺便把那个 UInt128x128To256 SSE2 版本从人脑移植到电脑中去。

无心人 发表于 2008-3-16 11:03:53

UInt128X128To256俺也放心很长时间了
实际上的MMX寄存器版差点就编译通过了
修改也知道如何修改了
下星期等有时间调试下

gxqcn 发表于 2008-4-9 13:15:19

近段时间什么具体代码也没去写。

分析了HugeCalc算法移植到64位平台的问题,估计至少可有2倍的提速空间,:)
且仅需普通的算术指令ALU支持即可,SSE2等指令集的反而用不着。

但我现有的机器无法安装64位操作系统,也无经济实力去买新的,:L
所以开发我们自己的“Super PI”暂时搁浅,直到正式推出64位的HugeCalc再说(可能同时发布),
日期未定。。。

无心人 发表于 2008-4-9 14:24:16

到不了200%

ALU指令慢于SSE2
所以有150%就不错了

gxqcn 发表于 2008-4-9 14:56:16

我是经过仔细评估过的:查看了指令周期表,对比了两个平台下的计算量的。

由于SIMD系列的乘法最多到 32x32 bits,
所以在64位平台下直接用乘法 mul 指令即可,甚至无须手工编写汇编;
即便编写,因多了几个自由寄存器,更加方便,无需费功夫去倒腾空间了,只会更快!

无心人 发表于 2008-4-9 16:45:04

但愿SSE出pmuluq
和padddq

:)

〇〇 发表于 2009-8-4 11:28:15

反汇编super pi

gxqcn 发表于 2009-8-4 12:23:09

super pi 并不快,反汇编犯不着。

只是呼吸 发表于 2010-2-24 02:19:27

要把PI算得快,可能要先让大整数的除法很快才行。郭老大的阶乘算得很快,就不知道除法能不能达到这种境界了。

gxqcn 发表于 2010-2-24 07:43:38

大整数算法的核心是大数乘法,它的突破可以使这个算法库效率整体得以提升。
大数除法归根结底仍依赖于大数乘法,通过牛顿迭代法。

好久没有更新版本了。近期在同时玩VC6及VC9(VC2008),试图找出它们的异同点,编写兼容性代码。
页: 1 [2] 3
查看完整版本: 开发我们自己的“Super PI”,支持的请进