找回密码
 欢迎注册
楼主: mathe

[擂台] 平方数数字和

[复制链接]
发表于 2008-8-18 20:51:03 | 显示全部楼层
16号下午总算把服务器重新支起来了
弄了个破教室
在学生桌椅上开启了网络和服务器
算前无古人吧
呵呵
继续这个问题的计算
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-8-19 09:17:32 | 显示全部楼层
那这些数字可就值钱了,单单是电费成本就不少。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-8-19 11:50:32 | 显示全部楼层
对,基本25%系统资源
大概是1/8*500W = 60W
现在要超过10天出一个数字
0.06 * 24 * 10 = 14.4 大概8块钱
呵呵
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-8-20 16:13:33 | 显示全部楼层
2008-8-20 11:36:49: 214  188797979898879969999988996
得到新结果
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-8-21 22:12:23 | 显示全部楼层
另外一种汇编写法
假设a, b为需要加的数字,c为高位数字
进制是10000

   mov eax, a
   add eax, b
   xor ecx, ecx
   mov edx, eax
  sub edx, 10000
  cmovnc eax, edx
  setnc cl
  add c, ecx

不知道SETcc指令好些么

顺便附上跳转的常规写法1
  mov eax, a
  add eax,  b
  mov ebx, c
  cmp eax, 10000
  jnc label1
  sub eax, 10000
  add ebx, 1
  mov c, ebx
label1:

写法2
  mov eax, a
  add eax,  b
  cmp eax, 10000
  jnc label1
  sub eax, 10000
  inc  c
label1:

  我想不论何种写法
似乎还是不跳转的要好些

谁对比较跳转的指令预测了解啊
给分析下
主要是有否预测错误的惩罚??

[ 本帖最后由 无心人 于 2008-8-21 23:02 编辑 ]
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-8-21 22:37:16 | 显示全部楼层
在 P4 上,
rol 指令有 4 个时钟延时;cmovnc 则更多,属于慢指令。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-8-21 23:01:38 | 显示全部楼层
呵呵
发现错了
回来改
ROL并不能得到CF结果
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-8-21 23:06:00 | 显示全部楼层
CMOVcc 3微操作,延迟6
SETcc  3微操作,延迟5
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-8-21 23:07:42 | 显示全部楼层
2008-8-20 22:12:53: 216  198995978993999999978999889

没想到一天没看结果
竟然出现新结果
而且间隔时间这么短啊
哈哈
幸运啊
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-8-22 07:47:25 | 显示全部楼层
原帖由 无心人 于 2008-8-21 22:12 发表
我想不论何种写法
似乎还是不跳转的要好些

谁对比较跳转的指令预测了解啊
给分析下
主要是有否预测错误的惩罚??

不跳转的通常要好一些,除非跳转指令几乎只执行一个分支(也就是硬件跳转预测可以做的非常精确)。
跳转预测错误,将会导致指令重新预取(流水线的第一级),所以导致整个流水线停止下来,通常代价至少是十几个时钟周期
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-5-21 07:26 , Processed in 0.043494 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表