弄了块GTX450的显卡。用GIMPS GPU计算TF,一天既然大约能有80~90GHz days/day的贡献!i7 2600的四个核都用上一天也就能贡献16GHz days/day。GPU太牛了!
GIMPS GPU现在文档还不是很多。把我弄的过程大概写一下吧:
主要参考的是的前面两个。里面有两个pdf的链接,照着里面说的做的。
GIMPS GPU的程序不一样的显卡,计算不一样的东西还不一样。对应和依赖关系和大约每天的计算量如下:
Nvidia依赖于CUDA,计算Primality Testing使用CUDALucas。GTX 560 Ti一天大约贡献11 GHz days/day
Nvidia依赖于CUDA,计算Trial Factoring使用mfaktc。GTX 560 Ti&1 CPU core一天大约贡献75 GHz days/day
ATI依赖于OpenCL,计算Trial Factoring使用mfakto。HD5770&2 CPU cores大约一天贡献90 GHz days/day
我弄的nvidia TF。Gentoo 32bit的系统。Gentoo需要安装一下nvidia的官方驱动 nvidia-drivers和nvidia cuda的工具包nvidia-cuda-toolkit。
mfaktc可以在下载。但不知道为啥编译好的只有linux64的包。只能下了个来自己编译。
编译的时候需要自己改一下makefile。
1、gentoo的cuda是安装在/opt/cuda/的,需要改一下CUDA_DIR 的值
2、nvcc装在/opt/cuda/bin/目录,要么自己加到PATH或者改一下NVCC的值
3、makefile里面的 CUDA_LIB 开始是 -L$(CUDA_DIR)/lib64/。我32位的系统把64去了就行。
最后在上级目录生成了个mfaktc.exe。
直接运行mfaktc.exe就行了。但是它还没mprime做的那么完善,不能联网获取结果、自动上传结果。要计算的话要按一下步骤弄,可以参考README.txt:
1、用你的账户登录
2、左边靠下一点有个 Manual Testing
3、点击前面的十字叉展开 Manual Testing后里面有个Assignments。点开
4、在界面里面填写 获取的core数,每个core获取的任务数,在下面选一下Trial Factoring。(一次获取一个核就行,获取多一点,我都是100、200的获取)
5、点击 Get assignments 它就会打开新的页面给你分配任务。大概如下:
Factor=2C994FA800F424CECE4F7449422C4D48,54056411,71,72
Factor=7D656FD0827EC94FAD747193AD74EF42,54143501,71,72
6、将所有的行复制到mfaktc.exe所在目录的worktodo.txt里面
7、运行./mfaktc.exe他就开始计算了。
8、计算完的结果它会保存在 results.txt里面。结果的上传在Manual Testing->Results里面。
我这2^69 to 2^70的任务大约半小时计算一个,每个的计算量大约1.7 GHz-days。每天大约80 GHz-days的计算量。
我只能一次计算一个。感觉也没必要并行计算了吧。
此外计算的时候不止使用了GPU,他也会单独占用一个CPU的core。好像是在做筛选那些的。反正CPU使用率一直是100%。我只能把我CPU计算的任务减少了一个给他。
按照README.txt的说法,在64bits的系统上会快33%。哪天弄一个试试。
阅读(3199) | 评论(0) | 转发(0) |